diff --git a/.gitlab-ci.d/code-quality.yaml b/.gitlab-ci.d/code-quality.yaml index 73a000acd..9f1fd4faa 100644 --- a/.gitlab-ci.d/code-quality.yaml +++ b/.gitlab-ci.d/code-quality.yaml @@ -1,63 +1,63 @@ .code_quality_common: stage: code_quality allow_failure: true rules: - if: "$CODE_QUALITY_DISABLED" when: never - if: "$CI_COMMIT_TAG || $CI_COMMIT_BRANCH" .code_quality_gitlab_template: extends: - .code_quality_common - image: docker:19.03.12 + image: docker:20.10.21 allow_failure: true services: - - docker:19.03.12-dind + - docker:20.10.21-dind variables: DOCKER_DRIVER: overlay2 DOCKER_TLS_CERTDIR: "" CODE_QUALITY_IMAGE: "registry.gitlab.com/gitlab-org/ci-cd/codequality:0.85.24" 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' - fi diff --git a/.gitlab-ci.d/images.yaml b/.gitlab-ci.d/images.yaml index 5970b3fce..716e7253d 100644 --- a/.gitlab-ci.d/images.yaml +++ b/.gitlab-ci.d/images.yaml @@ -1,109 +1,109 @@ .docker_build: - image: "docker:19.03.11" + image: "docker:20.10.21" stage: .pre services: - - docker:19.03.11-dind + - docker:20.10.21-dind variables: # Use TLS https://docs.gitlab.com/ee/ci/docker/using_docker_build.html#tls-enabled DOCKER_HOST: tcp://docker:2376 DOCKER_TLS_CERTDIR: "/certs" before_script: - docker login -u $CI_REGISTRY_USER -p $CI_REGISTRY_PASSWORD $CI_REGISTRY script: - cd test/ci/${IMAGE_NAME}/ - docker build --no-cache -t registry.gitlab.com/akantu/akantu/${IMAGE_NAME} . - docker push registry.gitlab.com/akantu/akantu/${IMAGE_NAME} rules: - changes: - test/ci/${IMAGE_NAME}/* # ------------------------------------------------------------------------------ .cache_build: variables: CCACHE_BASEDIR: ${CI_PROJECT_DIR}/ CCACHE_DIR: ${CI_PROJECT_DIR}/.ccache CCACHE_MAXSIZE: 1Gi cache: key: ${output}_${BUILD_TYPE} policy: pull-push paths: - .ccache/ - third-party/google-test - third-party/pybind11 before_script: - ccache --zero-stats || true after_script: - ccache --show-stats || true # ------------------------------------------------------------------------------ .image_debian_bullseye: image: registry.gitlab.com/akantu/akantu/debian:bullseye .image_ubuntu_lts: image: registry.gitlab.com/akantu/akantu/ubuntu:lts .image_manylinux: image: registry.gitlab.com/akantu/akantu/manylinux:2010_x86_64 # ------------------------------------------------------------------------------ .compiler_gcc: variables: CC: /usr/lib/ccache/gcc CXX: /usr/lib/ccache/g++ FC: gfortran GCOV_EXECUTABLE: gcov .compiler_clang: variables: CC: /usr/lib/ccache/clang CXX: /usr/lib/ccache/clang++ FC: gfortran GCOV_EXECUTABLE: llvm-cov gcov .build_coverage: variables: TEST_EXAMPLES: "FALSE" BUILD_TYPE: "Coverage" .build_release: variables: TEST_EXAMPLES: "TRUE" BUILD_TYPE: "Release" .build_valgrind: variables: TEST_EXAMPLES: "FALSE" BUILD_TYPE: "Valgrind" # ------------------------------------------------------------------------------ .debian_bullseye_gcc: variables: output: debian_bullseye_gcc extends: - .compiler_gcc - .image_debian_bullseye - .cache_build .debian_bullseye_clang: variables: output: debian_bullseye_clang extends: - .compiler_clang - .image_debian_bullseye - .cache_build .ubuntu_lts_gcc: variables: output: ubuntu_lts_gcc extends: - .compiler_gcc - .image_ubuntu_lts - .cache_build .manylinux_2010_x64_gcc: variables: output: manylinux_2010_x64_gcc extends: - .compiler_gcc - .image_manylinux - .cache_build