CI/CD Component
The CI/CD Component has some inputs which configure defaults for Nix GitLab CI.
version
- Type:
string
Which version of the Nix CI image to use. Using a tag/version is recommended.
Will not do anything if a custom image is specified using NIX_CI_IMAGE
.
cache_strategy
- Type:
string
- Default:
"auto"
- Options:
auto
|none
|runner
|cachix
|attic
Sets the default caching strategy.
auto
: dynamically selects the best strategy for every job based on env variablesnone
: disables cachingrunner
,cachix
&attic
: forces every job to use this strategy
Can be overridden by NIX_CI_CACHE_STRATEGY
, see Environment Variables.
cache_files
- Type:
array
(of strings) - Default:
["flake.nix", "flake.lock"]
Files to use as the cache key for the generated pipeline yaml.
If you use a file like ci.nix
to define CI, add that here for example.
This makes sure that changes to your Nix CI configuration will invalidate the cache,
otherwise an old pipeline yaml might be used.
Warning
The value of this is used in cache:key:files
, which currently only supports
a max of 2 entries. So use something like ["flake.*", "ci.nix"]
to match
flake.lock
, flake.nix
and ci.nix
.
See gitlab-org/gitlab#301161