diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 5336e0ea..9460a94e 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -35,11 +35,18 @@ before_script: # Set CARGO_HOME to a cacheable path - export CARGO_HOME="$(git rev-parse --show-toplevel)/.gitlab-ci.d/cargo" -ci: + +cache-ci-deps: stage: ci image: nixos/nix:2.18.2 rules: - if: $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH + script: direnv exec . job cache-ci-deps + +ci: + stage: ci + image: nixos/nix:2.18.2 + rules: - if: $CI_PIPELINE_SOURCE == 'merge_request_event' script: - direnv exec . job ci diff --git a/bin/job b/bin/job index fd700081..659e9b5b 100755 --- a/bin/job +++ b/bin/job @@ -21,6 +21,12 @@ job_pages() ( chmod u+w -R public ) +job_cache-ci-deps() ( + set -euo pipefail + + nix-build-and-cache ci +) + bail() ( set -euo pipefail