variables: # Using git fetch is faster # See https://docs.gitlab.com/ce/user/project/pipelines/settings.html#git-strategy GIT_STRATEGY: "fetch" # Init submodules # See https://docs.gitlab.com/ee/ci/yaml/#git-submodule-strategy GIT_SUBMODULE_STRATEGY: "recursive" # Use shallow cloning to speed up git clone. This can fail, if retrying an older build on CI # and the old commit is not in the shallow history any more. # See https://docs.gitlab.com/ee/ci/yaml/#shallow-cloning GIT_DEPTH: "50" # Run `make` in parallel MAKEFLAGS: "-j10" # Apply timeout to pytest-based tests PYTEST_TIMEOUT: "300" # Pipenv cache PIPENV_VENV_IN_PROJECT: "true" PIPENV_CACHE_DIR: ".cache/" # No need for TLS because everything runs on the same machine DOCKER_TLS_CERTDIR: "" stages: - environment - prebuild - build - test - posttest - deploy before_script: - command -v pipenv >/dev/null && pipenv sync --python=/usr/bin/python3 .core_job: only: changes: - ci/**/* - common/**/* - core/**/* - crypto/**/* - python/**/* - storage/**/* - tests/**/* - tools/**/* - vendor/**/* - Pipfile.lock .legacy_job: only: changes: - ci/**/* - common/**/* - crypto/**/* - legacy/**/* - python/**/* - storage/**/* - tests/**/* - tools/**/* - vendor/**/* - Pipfile.lock include: - ci/environment.yml - ci/prebuild.yml - ci/build.yml - ci/test.yml - ci/posttest.yml - ci/deploy.yml