2020-12-05 18:34:32 +01:00
|
|
|
#!/bin/sh
|
|
|
|
|
2020-12-05 19:38:01 +01:00
|
|
|
# The problem-matcher definition must be present in the repository
|
|
|
|
# checkout (outside the Docker container running hadolint). We create
|
|
|
|
# a temporary folder and copy problem-matcher.json to it and make it
|
|
|
|
# readable.
|
|
|
|
TMP_FOLDER=$(mktemp -d -p .)
|
|
|
|
cp /problem-matcher.json "${TMP_FOLDER}"
|
|
|
|
chmod -R a+rX "${TMP_FOLDER}"
|
2020-12-06 20:10:45 +01:00
|
|
|
|
|
|
|
# After the run has finished we remove the problem-matcher.json from
|
|
|
|
# the repository so we don't leave the checkout dirty. We also remove
|
|
|
|
# the matcher so it won't take effect in later steps.
|
|
|
|
cleanup() {
|
|
|
|
echo "::remove-matcher owner=brpaz/hadolint-action::"
|
|
|
|
rm -rf "${TMP_FOLDER}"
|
|
|
|
}
|
|
|
|
trap cleanup EXIT
|
2020-12-05 19:38:01 +01:00
|
|
|
|
|
|
|
echo "::add-matcher::${TMP_FOLDER}/problem-matcher.json"
|
2020-12-05 18:34:32 +01:00
|
|
|
|
2021-05-08 13:08:16 +02:00
|
|
|
if [ -n "$HADOLINT_CONFIG" ]; then
|
|
|
|
HADOLINT_CONFIG="-c ${HADOLINT_CONFIG}"
|
|
|
|
fi
|
|
|
|
|
|
|
|
for i in $HADOLINT_IGNORE; do
|
|
|
|
HADOLINT_IGNORE_CMDLINE="${HADOLINT_IGNORE_CMDLINE} --ignore=${i}"
|
|
|
|
done
|
|
|
|
|
|
|
|
# shellcheck disable=SC2086
|
|
|
|
hadolint $HADOLINT_IGNORE_CMDLINE $HADOLINT_CONFIG "$@"
|