Code Review
/
releng
/
global-jjb.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
Ignore false-neg ShellCheck SC2154 unused vars
[releng/global-jjb.git]
/
shell
/
package-listing.sh
diff --git
a/shell/package-listing.sh
b/shell/package-listing.sh
index
0c35917
..
82ee902
100644
(file)
--- a/
shell/package-listing.sh
+++ b/
shell/package-listing.sh
@@
-18,18
+18,19
@@
set -x # Trace commands for this script to make debugging easier
OS_FAMILY=$(facter osfamily | tr '[:upper:]' '[:lower:]')
OS_FAMILY=$(facter osfamily | tr '[:upper:]' '[:lower:]')
+# Capture the CI WORKSPACE safely in the case that it doesn't exist
+workspace="${WORKSPACE:-}"
+
START_PACKAGES=/tmp/packages_start.txt
END_PACKAGES=/tmp/packages_end.txt
DIFF_PACKAGES=/tmp/packages_diff.txt
START_PACKAGES=/tmp/packages_start.txt
END_PACKAGES=/tmp/packages_end.txt
DIFF_PACKAGES=/tmp/packages_diff.txt
-# This script may be run during system boot, if that is true then there will be
-# a starting_packages file. We will want to create a diff if we have a starting
-# packages file
+# Swap to creating END_PACKAGES if we are running in a CI job (determined by if
+# we have a workspace env) or if the starting packages listing already exists.
PACKAGES="${START_PACKAGES}"
PACKAGES="${START_PACKAGES}"
-if
[ -f "${PACKAGES}" ]
+if
( [ "${workspace}" ] || [ -f "${START_PACKAGES}" ] )
then
PACKAGES="${END_PACKAGES}"
then
PACKAGES="${END_PACKAGES}"
- CREATEDIFF=1
fi
case "${OS_FAMILY}" in
fi
case "${OS_FAMILY}" in
@@
-46,15
+47,16
@@
case "${OS_FAMILY}" in
;;
esac
;;
esac
-if
[ "${CREATEDIFF}" ]
+if
( [ -f "${START_PACKAGES}" ] && [ -f "${END_PACKAGES}" ] )
then
then
- diff "${START_PACKAGES}" "${END_PACKAGES}" > "${DIFF_PACKAGES}"
+ # ` || true` Ignore exit code because diff exits 1 when there is a diff
+ diff "${START_PACKAGES}" "${END_PACKAGES}" > "${DIFF_PACKAGES}" || true
fi
# If running in a Jenkins job, then copy the created files to the archives
# location
fi
# If running in a Jenkins job, then copy the created files to the archives
# location
-if [ "${
WORKSPACE
}" ]
+if [ "${
workspace
}" ]
then
then
- mkdir -p "${
WORKSPACE
}/archives/"
- cp -f /tmp/packages_*.txt "${
WORKSPACE
}/archives/"
+ mkdir -p "${
workspace
}/archives/"
+ cp -f /tmp/packages_*.txt "${
workspace
}/archives/"
fi
fi