2021-11-28 15:50:11 +01:00
|
|
|
#!/bin/bash
|
|
|
|
|
set -x
|
|
|
|
|
|
|
|
|
|
if [[ -z "$PROJECT_PATH" ]]; then
|
|
|
|
|
echo "::error title=Internal error::environment variable 'PROJECT_PATH' missing!"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
if [[ -z "$RAW_RESULT_DIR" ]]; then
|
|
|
|
|
echo "::error title=Internal error::environment variable 'RAW_RESULT_DIR' missing!"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
OUTPUT_DIR="$IN_OUTPUT_DIR"
|
|
|
|
|
if [[ -z "$OUTPUT_DIR" ]]; then
|
|
|
|
|
OUTPUT_DIR=~/"$ACTION_NAME"_Results-HTML
|
|
|
|
|
fi
|
|
|
|
|
mkdir -pv "$(dirname $"OUTPUT_DIR")"
|
|
|
|
|
|
2021-11-28 15:59:18 +01:00
|
|
|
OUTPUT_LOG="$(dirname "$IN_OUTPUT_DIR")"/"$(basename "$IN_OUTPUT_DIR")_Parse.log"
|
|
|
|
|
|
2021-11-28 15:50:11 +01:00
|
|
|
if [[ ! -z "$IN_CONFIGFILE" ]]; then
|
|
|
|
|
CONFIG_FLAG_1="--config"
|
|
|
|
|
CONFIG_FLAG_2=$IN_CONFIGFILE
|
|
|
|
|
echo "Using configuration file \"$IN_CONFIGFILE\"!"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
"$CODECHECKER_PATH"/CodeChecker parse \
|
|
|
|
|
"$RAW_RESULT_DIR" \
|
|
|
|
|
--export "html" \
|
|
|
|
|
--output "$OUTPUT_DIR" \
|
|
|
|
|
--trim-path-prefix "$PROJECT_PATH" \
|
|
|
|
|
|| true
|
|
|
|
|
echo "::set-output name=HTML_DIR::$OUTPUT_DIR"
|
|
|
|
|
|
|
|
|
|
"$CODECHECKER_PATH"/CodeChecker parse \
|
|
|
|
|
"$RAW_RESULT_DIR" \
|
2021-11-28 15:59:18 +01:00
|
|
|
--trim-path-prefix "$PROJECT_PATH" \
|
|
|
|
|
> "$OUTPUT_LOG"
|
2021-11-28 15:50:11 +01:00
|
|
|
EXIT_CODE=$?
|
2021-11-28 15:59:18 +01:00
|
|
|
echo "::set-output name=OUTPUT_LOG::$OUTPUT_LOG"
|
|
|
|
|
|
2021-11-28 15:50:11 +01:00
|
|
|
|
|
|
|
|
if [[ "$EXIT_CODE" == "2" ]]; then
|
|
|
|
|
echo "::set-output name=HAS_FINDINGS::true"
|
|
|
|
|
|
|
|
|
|
# Let the jobs continue. If there were failures, the action script will break
|
|
|
|
|
# the build in a later step. (After a potential upload to server.)
|
|
|
|
|
EXIT_CODE=0
|
|
|
|
|
else
|
|
|
|
|
echo "::set-output name=HAS_FINDINGS::false"
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
exit $EXIT_CODE
|