Handle multiple search extension passed by JJB
[releng/global-jjb.git] / shell / logs-deploy.sh
index e5c990a..a00f0a7 100644 (file)
@@ -1,5 +1,5 @@
-#!/bin/bash
-# @License EPL-1.0 <http://spdx.org/licenses/EPL-1.0>
+#!/bin/bash -l
+# SPDX-License-Identifier: EPL-1.0
 ##############################################################################
 # Copyright (c) 2017 The Linux Foundation and others.
 #
@@ -8,25 +8,30 @@
 # which accompanies this distribution, and is available at
 # http://www.eclipse.org/legal/epl-v10.html
 ##############################################################################
+echo "---> logs-deploy.sh"
 
-set -x  # Trace commands for this script to make debugging easier.
-
-LOGS_SERVER="${LOGS_SERVER:-None}"
-
-if [ "${LOGS_SERVER}" == 'None' ]
-then
-    set +x # Disable trace since we no longer need it
+# Ensure we fail the job if any steps fail.
+set -eu -o pipefail
 
+if [[ -z $"${LOGS_SERVER:-}" ]]; then
     echo "WARNING: Logging server not set"
 else
-    NEXUS_URL="${NEXUS_URL:-$NEXUSPROXY}"
-    NEXUS_PATH="${SILO}/${JENKINS_HOSTNAME}/${JOB_NAME}/${BUILD_NUMBER}"
-    BUILD_URL="${BUILD_URL}"
+    nexus_url="${NEXUSPROXY:-$NEXUS_URL}"
+    nexus_path="${SILO}/${JENKINS_HOSTNAME}/${JOB_NAME}/${BUILD_NUMBER}"
 
-    lftools deploy archives "$NEXUS_URL" "$NEXUS_PATH" "$WORKSPACE"
-    lftools deploy logs "$NEXUS_URL" "$NEXUS_PATH" "$BUILD_URL"
+    # 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
 
-    set +x  # Disable trace since we no longer need it.
+    lftools deploy archives "${pattern_opts[@]}" "$nexus_url" "$nexus_path" \
+            "$WORKSPACE"
+    set +f  # Enable pathname expansion
+    lftools deploy logs "$nexus_url" "$nexus_path" "${BUILD_URL:-}"
 
-    echo "Build logs: <a href=\"$LOGS_SERVER/$NEXUS_PATH\">$LOGS_SERVER/$NEXUS_PATH</a>"
+    echo "Build logs: <a href=\"$LOGS_SERVER/$nexus_path\">$LOGS_SERVER/$nexus_path</a>"
 fi