##############################################################################
echo "---> logs-deploy.sh"
-# Ensure we fail the job if any steps fail.
-set -eu -o pipefail
+# Ensure we fail the job if any steps fail
+# Disable 'globbing'
+set -euf -o pipefail
-if [[ -z $LOGS_SERVER ]]; then
- echo "WARNING: Logging server not set"
+if [[ -z ${LOGS_SERVER:-} ]]; then
+ echo "WARNING: Nexus logging server not set"
else
nexus_url="${NEXUSPROXY:-$NEXUS_URL}"
nexus_path="${SILO}/${JENKINS_HOSTNAME}/${JOB_NAME}/${BUILD_NUMBER}"
+ echo "INFO: Nexus URL $nexus_url path $nexus_path"
- # Handle multiple search extensions as separate values to '-p|--pattern'
- set -f # Disable pathname expansion
- IFS=' ' read -r -a search_exts <<< "${ARCHIVE_ARTIFACTS:-}"
- pattern_opts=()
- for search_ext in "${search_exts[@]}";
- do
- pattern_opts+=("-p" "$search_ext")
- done
-
- lftools deploy archives "${pattern_opts[@]}" "$nexus_url" "$nexus_path" \
- "$WORKSPACE"
- set +f # Enable pathname expansion
+ if [[ -n ${ARCHIVE_ARTIFACTS:-} ]] ; then
+ # Handle multiple search extensions as separate values to '-p|--pattern'
+ # "arg1 arg2" -> (-p arg1 -p arg2)
+ pattern_opts=()
+ for arg in $ARCHIVE_ARTIFACTS; do
+ pattern_opts+=("-p" "$arg")
+ done
+ echo "INFO: archiving workspace using pattern(s): $ARCHIVE_ARTIFACTS"
+ lftools deploy archives "${pattern_opts[@]}" \
+ "$nexus_url" "$nexus_path" "$WORKSPACE"
+ else
+ echo "INFO: archiving workspace"
+ lftools deploy archives "$nexus_url" "$nexus_path" "$WORKSPACE"
+ fi
+ echo "INFO: archiving logs"
lftools deploy logs "$nexus_url" "$nexus_path" "${BUILD_URL:-}"
echo "Build logs: <a href=\"$LOGS_SERVER/$nexus_path\">$LOGS_SERVER/$nexus_path</a>"
fi
+
+if [[ -z ${S3_BUCKET:-} ]]; then
+ echo "WARNING: S3 logging server not set"
+else
+ s3_path="$SILO/$JENKINS_HOSTNAME/$JOB_NAME/$BUILD_NUMBER"
+ echo "INFO: S3 path $s3_path"
+
+ pattern_opts=()
+ for arg in $ARCHIVE_ARTIFACTS; do
+ pattern_opts+=("-p" "$arg")
+ done
+ lftools deploy s3 "${pattern_opts[@]}" "$S3_BUCKET" "$s3_path" \
+ "$BUILD_URL" "$WORKSPACE"
+
+ echo "Build logs: <a href=\"https://$S3_BUCKET.s3.amazonaws.com/$s3_path\"></a>"
+fi
+