Skip to content
Snippets Groups Projects
Commit 3d68606e authored by Vivek Dutta's avatar Vivek Dutta
Browse files

Enhance error handling

parent 731c8510
Branches merge_pipeline
No related tags found
1 merge request!31Enhance error handling
#!/bin/bash
set -eo pipefail
log()
{
......@@ -106,7 +107,7 @@ run_cpd_check()
exec_cmd /usr/local/pmd/bin/run.sh cpd --language c --exclude ./test/ ${CPD_OPTIONS} --files ${SOURCE_FOLDER}
}
main()
validate_c_code()
{
log "SOURCE_FOLDER: ${SOURCE_FOLDER}"
log "COMPILATION_FIXUP: ${COMPILATION_FIXUP}"
......@@ -126,6 +127,11 @@ main()
fi
fi
if [ "${SOURCE_FOLDER}" == "SKIP" ]; then
log "Skipping C code analysis"
exit 0
fi
# Install pre-req if present/defined
if [ -f "./gitlab-ci/install-dependencies.sh" ]; then
log "Installing prerequisites for compilation"
......@@ -147,10 +153,40 @@ main()
run_cppcheck_validation
# Run clang analysis
run_cppcheck_clang_validation
# run_cppcheck_clang_validation
# Run infer analysis
run_infer_analysis
}
main "$@"
validate_shell_script()
{
log "Running optional tests"
if [ -z "${SHELL_SRC}" ]; then
log "Skipping ShellCheck path not defined"
exit 0
fi
if [ "${SHELL_SRC}" == "SKIP" ]; then
log "Skipping ShellChecks ..."
exit 0
fi
log "Running shellcheck ${SHELLCHECK_OPTIONS} ${SHELL_SRC}"
exec_cmd shellcheck ${SHELLCHECK_OPTIONS} ${SHELL_SRC}
}
validation_type="${1}"
case "${validation_type}" in
c_code)
validate_c_code "${@}"
;;
shell_script)
validate_shell_script "${@}"
;;
*)
echo "Unsupported validation type: ${validation_type}"
exit 1
;;
esac
variables:
COMMON_IMAGE: "dev.iopsys.eu:5050/iopsys/gitlab-ci-pipeline/code-analysis:1.2"
COMMON_IMAGE: "dev.iopsys.eu:5050/iopsys/gitlab-ci-pipeline/code-analysis:1.3"
FLAWFINDER_OPTIONS: ""
CPD_OPTIONS: "--minimum-tokens 200"
CPPCHECK_OPTIONS: ""
......@@ -14,10 +14,7 @@ run_static_code_analysis:
stage: static_code_analysis
allow_failure: false
script:
- "static_code_analysis.sh"
rules:
- if: $SOURCE_FOLDER
when: always
- "static_code_analysis.sh c_code"
artifacts:
when: on_failure
paths:
......@@ -27,11 +24,6 @@ run_static_code_analysis:
run_shell_checks:
image: ${COMMON_IMAGE}
stage: static_code_analysis
allow_failure: true
allow_failure: false
script:
- echo "Running optional tests"
- echo "Running shellcheck ${SHELLCHECK_OPTIONS} ${SHELL_SRC}"
- "shellcheck ${SHELLCHECK_OPTIONS} ${SHELL_SRC}"
rules:
- if: $SHELL_SRC
when: always
- "static_code_analysis.sh shell_script"
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment