diff --git a/.gitlab/ci.d/code-quality.yaml b/.gitlab/ci.d/code-quality.yaml index 4520ff777..371f47c2a 100644 --- a/.gitlab/ci.d/code-quality.yaml +++ b/.gitlab/ci.d/code-quality.yaml @@ -1,66 +1,67 @@ .code_quality_common: stage: code_quality allow_failure: true cache: - key: ${CI_COMMIT_REF_SLUG}-third-party policy: pull paths: - third-party/eigen3 - third-party/pybind11 - third-party/google-test .code_quality_gitlab_template: extends: - .code_quality_common image: docker:20.10.21 allow_failure: true services: - docker:20.10.21-dind variables: DOCKER_DRIVER: overlay2 DOCKER_TLS_CERTDIR: "" CODE_QUALITY_IMAGE: "registry.gitlab.com/gitlab-org/ci-cd/codequality:0.89.0" needs: [] script: - export SOURCE_CODE=$PWD - | if ! docker info &>/dev/null; then if [ -z "$DOCKER_HOST" -a "$KUBERNETES_PORT" ]; then export DOCKER_HOST='tcp://localhost:2375' fi fi - | # this is required to avoid undesirable reset of Docker image ENV variables being set on build stage function propagate_env_vars() { CURRENT_ENV=$(printenv) for VAR_NAME; do echo $CURRENT_ENV | grep "${VAR_NAME}=" > /dev/null && echo "--env $VAR_NAME " done } - docker pull --quiet "$CODE_QUALITY_IMAGE" - | docker run --rm \ $(propagate_env_vars \ SOURCE_CODE \ TIMEOUT_SECONDS \ CODECLIMATE_DEBUG \ CODECLIMATE_DEV \ REPORT_STDOUT \ REPORT_FORMAT \ ENGINE_MEMORY_LIMIT_BYTES \ CODECLIMATE_PREFIX \ ) \ --volume "$PWD":/code \ --volume /var/run/docker.sock:/var/run/docker.sock \ "$CODE_QUALITY_IMAGE" /code .clang_tools: extends: - .code_quality_common - .debian_bullseye_clang before_script: - if [ 'x${CI_MERGE_REQUEST_ID}' != 'x' ]; then - - git fetch origin $CI_MERGE_REQUEST_TARGET_BRANCH_NAME - - git diff --name-only $CI_COMMIT_SHA $CI_MERGE_REQUEST_TARGET_BRANCH_NAME > file_list - - FILE_LIST_ARG='-f file_list' + - env + - git fetch origin $CI_MERGE_REQUEST_TARGET_BRANCH_NAME + - git diff --name-only $CI_COMMIT_SHA $CI_MERGE_REQUEST_DIFF_BASE_SHA > file_list + - FILE_LIST_ARG='-f file_list' - fi