#!/bin/bash
+
+set +e # Do not affect the build result if some part of archiving fails.
+
ARCHIVES_DIR="$JENKINS_HOSTNAME/$JOB_NAME/$BUILD_NUMBER"
LOGS_SERVER="https://logs.opendaylight.org"
echo "Build logs: <a href=\"$LOGS_SERVER/$SILO/$ARCHIVES_DIR\">$LOGS_SERVER/$SILO/$ARCHIVES_DIR</a>"
mkdir -p $ARCHIVES_DIR
mkdir -p $WORKSPACE/archives
-if [ ! -z $ARCHIVE_ARTIFACTS ]; then
+if [ ! -z "${{ARCHIVE_ARTIFACTS}}" ]; then
pushd $WORKSPACE
shopt -s globstar # Enable globstar to copy archives
- archive_artifacts=$(echo $ARCHIVE_ARTIFACTS)
+ archive_artifacts=$(echo ${{ARCHIVE_ARTIFACTS}})
for f in $archive_artifacts; do
echo "Archiving $f"
mkdir -p $WORKSPACE/archives/$(dirname $f)
sed -i '/^-----END_OF_BUILD-----$/,$d' $ARCHIVES_DIR/_console-output.log
gzip $ARCHIVES_DIR/*.txt $ARCHIVES_DIR/*.log
-# find and gzip all text files
-find $ARCHIVES_DIR -name "*.txt" \
- -o -name "*.log" \
- -o -name "*.html" \
- | xargs gzip
+# find and gzip any 'text' files
+find $ARCHIVES_DIR -type f -print0 \
+ | xargs -0r file \
+ | egrep -e ':.*text.*' \
+ | cut -d: -f1 \
+ | xargs -d'\n' -r gzip
zip -r archives.zip $JENKINS_HOSTNAME/
du -sh archives.zip