Improve python-tools-install.sh alpine compat
[releng/global-jjb.git] / shell / logs-deploy.sh
index f80e0b4..2009c32 100644 (file)
@@ -14,25 +14,45 @@ echo "---> logs-deploy.sh"
 # Disable 'globbing'
 set -euf -o pipefail
 
-if [[ -z $"${LOGS_SERVER:-}" ]]; then
-    echo "WARNING: Logging server not set"
+function get_pattern_opts()
+{
+    opts=()
+    for arg in ${ARCHIVE_ARTIFACTS:-}; do
+        opts+=("-p" "$arg")
+    done
+    echo "${opts[@]-}"
+}
+
+pattern_opts=$(get_pattern_opts)
+
+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"
+
+    echo "INFO: archiving workspace using pattern(s): ${pattern_opts:-}"
+    # shellcheck disable=SC2086
+    lftools deploy archives ${pattern_opts:-} "$nexus_url" "$nexus_path" "$WORKSPACE"
 
-    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
-        lftools deploy archives "${pattern_opts[@]}" \
-                "$nexus_url" "$nexus_path" "$WORKSPACE"
-    else
-        lftools deploy archives "$nexus_url" "$nexus_path" "$WORKSPACE"
-    fi
+    echo "INFO: archiving logs to Nexus"
     lftools deploy logs "$nexus_url" "$nexus_path" "${BUILD_URL:-}"
 
-    echo "Build logs: <a href=\"$LOGS_SERVER/$nexus_path\">$LOGS_SERVER/$nexus_path</a>"
+    echo "Nexus 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="logs/$SILO/$JENKINS_HOSTNAME/$JOB_NAME/$BUILD_NUMBER/"
+    echo "INFO: S3 path $s3_path"
+
+    echo "INFO: archiving logs to S3"
+    # shellcheck disable=SC2086
+    lftools deploy s3 ${pattern_opts:-} "$S3_BUCKET" "$s3_path" \
+        "$BUILD_URL" "$WORKSPACE"
+
+    echo "S3 build logs: <a href=\"https://$CDN_URL/$s3_path\"></a>"
+fi
+