Fix shellcheck complains in CI scripts
.gitlab/ci/build-host.sh: Change the readonly TMPDIR variable to a global tmpdir variable and set it in the `init()` function. .gitlab/ci/build-inside-vm.sh: Change assigning the readonly tmpdir variable directly to assigning it after declaring it. Change `cleanup()` and `create_zsync_delta()` to use bash-style statements and also check whether SUDO_GID is set before using it.
This commit is contained in:
parent
1a97109639
commit
bde3971991
@ -6,18 +6,20 @@
|
||||
set -o nounset -o errexit
|
||||
readonly MIRROR="https://mirror.pkgbuild.com"
|
||||
|
||||
tmpdir=""
|
||||
|
||||
function init() {
|
||||
readonly ORIG_PWD="${PWD}"
|
||||
readonly OUTPUT="${PWD}/output"
|
||||
readonly TMPDIR="$(mktemp --dry-run --directory --tmpdir="${PWD}/tmp")"
|
||||
mkdir -p "${OUTPUT}" "${TMPDIR}"
|
||||
tmpdir="$(mktemp --dry-run --directory --tmpdir="${PWD}/tmp")"
|
||||
mkdir -p "${OUTPUT}" "${tmpdir}"
|
||||
|
||||
cd "${TMPDIR}"
|
||||
cd "${tmpdir}"
|
||||
}
|
||||
|
||||
# Do some cleanup when the script exits
|
||||
function cleanup() {
|
||||
rm -rf -- "${TMPDIR}"
|
||||
rm -rf -- "${tmpdir}"
|
||||
jobs -p | xargs --no-run-if-empty kill
|
||||
}
|
||||
trap cleanup EXIT
|
||||
@ -146,7 +148,7 @@ function main() {
|
||||
## Start build and copy output to local disk
|
||||
send "bash -x ./.gitlab/ci/build-inside-vm.sh ${PROFILE}\n "
|
||||
expect "# " 2400 # mksquashfs can take a very long time
|
||||
send "cp -r --preserve=mode,timestamps -- output /mnt/project/tmp/$(basename "${TMPDIR}")/\n"
|
||||
send "cp -r --preserve=mode,timestamps -- output /mnt/project/tmp/$(basename "${tmpdir}")/\n"
|
||||
expect "# " 60
|
||||
mv output/* "${OUTPUT}/"
|
||||
|
||||
|
@ -6,7 +6,8 @@
|
||||
|
||||
readonly orig_pwd="${PWD}"
|
||||
readonly output="${orig_pwd}/output"
|
||||
readonly tmpdir="$(mktemp --dry-run --directory --tmpdir="${orig_pwd}/tmp")"
|
||||
tmpdir=""
|
||||
tmpdir="$(mktemp --dry-run --directory --tmpdir="${orig_pwd}/tmp")"
|
||||
|
||||
cleanup() {
|
||||
# clean up temporary directories
|
||||
@ -21,7 +22,7 @@ create_checksums() {
|
||||
sha256sum "${1}" >"${1}.sha256"
|
||||
sha512sum "${1}" >"${1}.sha512"
|
||||
b2sum "${1}" >"${1}.b2"
|
||||
if [ -n "${SUDO_UID:-}" ]; then
|
||||
if [[ -n "${SUDO_UID:-}" ]] && [[ -n "${SUDO_GID:-}" ]]; then
|
||||
chown "${SUDO_UID}:${SUDO_GID}" "${1}"{,.b2,.sha{256,512}}
|
||||
fi
|
||||
}
|
||||
@ -30,7 +31,7 @@ create_zsync_delta() {
|
||||
# create a zsync control file for a file
|
||||
# $1: a file
|
||||
zsyncmake -C -u "${1##*/}" -o "${1}".zsync "${1}"
|
||||
if [ -n "${SUDO_UID:-}" ]; then
|
||||
if [[ -n "${SUDO_UID:-}" ]] && [[ -n "${SUDO_GID:-}" ]]; then
|
||||
chown "${SUDO_UID}:${SUDO_GID}" "${1}".zsync
|
||||
fi
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user