diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 0ea57c477..8dad6176f 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -193,6 +193,7 @@ ci-authorized: include: - .gitlab-ci/lint.yml + - .gitlab-ci/shellcheck.yml - .gitlab-ci/gce.yml - .gitlab-ci/digital-ocean.yml - .gitlab-ci/terraform.yml diff --git a/.gitlab-ci/shellcheck.yml b/.gitlab-ci/shellcheck.yml new file mode 100644 index 000000000..5e3d5e802 --- /dev/null +++ b/.gitlab-ci/shellcheck.yml @@ -0,0 +1,14 @@ +# TODO(miouge1): Include +shellcheck: + extends: .job + stage: unit-tests + variables: + SHELLCHECK_VERSION: v0.6.0 + before_script: + - curl --silent "https://storage.googleapis.com/shellcheck/shellcheck-"${SHELLCHECK_VERSION}".linux.x86_64.tar.xz" | tar -xJv + - cp shellcheck-"${SHELLCHECK_VERSION}"/shellcheck /usr/bin/ + - shellcheck --version + script: + # Run shellcheck for all *.sh except contrib/ + - find . -name '*.sh' -not -path './contrib/*' | xargs shellcheck --severity error + except: ['triggers', 'master']