mirror of
https://gitlab.com/TECHNOFAB/nix-gitlab-ci.git
synced 2025-12-12 02:00:13 +01:00
1.2 KiB
1.2 KiB
Nix GitLab CI
This project provides a Nix flake module that allows you to generate your .gitlab-ci.yml file directly from your Nix configuration.
Features
- Reproducibility: Leverage Nix's strength in creating reproducible environments for your CI jobs.
- Easy Dependency Management: Easily include any package available in Nixpkgs or your own defined packages within your CI jobs using Nix.
- Modularity: Define and manage your CI configurations in a structured and modular way using Nix modules, making it easier to share and reuse CI logic across multiple projects.
This documentation will guide you through setting up and using Nix GitLab CI for your projects.
Warnings
To save you from frantically searching these docs if something doesn't work as expected, here are the most important warnings ;)
!!! warning
Do not put Nix store paths into global/pipeline variables. They will simply be passed through,
resulting in bad portability (if two runners have different archs for example, one cannot find the path).
If you need any Nix store path in env variables, always do it on the job level, there
it will automatically be computed at runtime, thus will always work no matter which runner it runs on.