Fix workdir

This commit is contained in:
Eric Nemchik 2023-02-17 09:35:08 -06:00 committed by GitHub
parent 86b6e301bc
commit 8421440889
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1,42 +1,41 @@
#!/bin/bash
# clear preexisting variables not set by job
unset ALL_SHELL_FILES EXECUTABLE_FILES MOUNT_OPTIONS NON_EXECUTABLE_FILES SHELLCHECK_OPTIONS SHELLCKECK_IMAGE TEST_AREA
# initialize variables
ALL_SHELL_FILES=()
EXECUTABLE_FILES=()
MOUNT_OPTIONS=()
NON_EXECUTABLE_FILES=()
SHELLCHECK_ENTRYPOINT="/bin/shellcheck"
SHELLCHECK_IMAGE="koalaman/shellcheck:stable"
SHELLCHECK_OPTIONS=("--exclude=SC1008" "--format=checkstyle" "--shell=bash")
SHELLCKECK_IMAGE="koalaman/shellcheck:stable"
SHELLCHECK_WORKDIR="/mnt"
TEST_AREA=()
# clear preexising checkstyle files
echo "<?xml version='1.0' encoding='UTF-8'?><checkstyle version='4.3'></checkstyle>" >"${WORKSPACE}"/shellcheck-result.xml
if [[ -d "${WORKSPACE}"/init ]]; then
MOUNT_OPTIONS+=("-v" "${WORKSPACE}/init:/init")
MOUNT_OPTIONS+=("-v" "${WORKSPACE}/init:${SHELLCHECK_WORKDIR}/init")
TEST_AREA+=("init")
fi
if [[ -d "${WORKSPACE}"/services ]]; then
MOUNT_OPTIONS+=("-v" "${WORKSPACE}/services:/services")
MOUNT_OPTIONS+=("-v" "${WORKSPACE}/services:${SHELLCHECK_WORKDIR}/services")
TEST_AREA+=("services")
fi
if [[ -d "${WORKSPACE}"/root/etc/cont-init.d ]]; then
MOUNT_OPTIONS+=("-v" "${WORKSPACE}/root/etc/cont-init.d:/root/etc/cont-init.d")
MOUNT_OPTIONS+=("-v" "${WORKSPACE}/root/etc/cont-init.d:${SHELLCHECK_WORKDIR}/root/etc/cont-init.d")
TEST_AREA+=("root/etc/cont-init.d")
fi
if [[ -d "${WORKSPACE}"/root/etc/services.d ]]; then
MOUNT_OPTIONS+=("-v" "${WORKSPACE}/root/etc/services.d:/root/etc/services.d")
MOUNT_OPTIONS+=("-v" "${WORKSPACE}/root/etc/services.d:${SHELLCHECK_WORKDIR}/root/etc/services.d")
TEST_AREA+=("root/etc/services.d")
fi
if [[ -d "${WORKSPACE}"/root/etc/s6-overlay/s6-rc.d ]]; then
MOUNT_OPTIONS+=("-v" "${WORKSPACE}/root/etc/s6-overlay/s6-rc.d:/root/etc/s6-overlay/s6-rc.d")
MOUNT_OPTIONS+=("-v" "${WORKSPACE}/root/etc/s6-overlay/s6-rc.d:${SHELLCHECK_WORKDIR}/root/etc/s6-overlay/s6-rc.d")
TEST_AREA+=("root/etc/s6-overlay/s6-rc.d")
fi
@ -66,15 +65,16 @@ if [[ ${#ALL_SHELL_FILES[@]} -eq 0 ]]; then
fi
# run shellcheck
docker pull "${SHELLCKECK_IMAGE}"
docker pull "${SHELLCHECK_IMAGE}"
docker run --rm -t \
"${SHELLCKECK_IMAGE}" \
"${SHELLCHECK_IMAGE}" \
shellcheck --version
find "${ALL_SHELL_FILES[@]}" -exec \
docker run --rm -t \
--entrypoint "${SHELLCHECK_ENTRYPOINT}" \
--workdir "${SHELLCHECK_WORKDIR}" \
"${MOUNT_OPTIONS[@]}" \
"${SHELLCKECK_IMAGE}" \
shellcheck \
"${SHELLCHECK_IMAGE}" \
"${SHELLCHECK_OPTIONS[@]}" {} + \
>"${WORKSPACE}"/shellcheck-result.xml