diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml new file mode 100644 index 0000000..6253297 --- /dev/null +++ b/.gitlab-ci.yml @@ -0,0 +1,4 @@ +include: + - component: gitlab.com/TECHNOFAB/nix-gitlab-ci/nix-gitlab-ci@2.0.0 + inputs: + version: 2.0.0 diff --git a/flake.lock b/flake.lock index 2a73032..f6538f2 100644 --- a/flake.lock +++ b/flake.lock @@ -202,6 +202,24 @@ "type": "github" } }, + "nix-gitlab-ci": { + "locked": { + "dir": "lib", + "lastModified": 1746300997, + "narHash": "sha256-PuI1WaDFgvRh5d0yBAJzkbbonZaTxqWqm1hu3WP+9iU=", + "owner": "TECHNOFAB", + "repo": "nix-gitlab-ci", + "rev": "9ee4ad02b8f950d48fb30ab11b8475a3f52d327c", + "type": "gitlab" + }, + "original": { + "dir": "lib", + "owner": "TECHNOFAB", + "ref": "2.0.0", + "repo": "nix-gitlab-ci", + "type": "gitlab" + } + }, "nixpkgs": { "locked": { "lastModified": 1733212471, @@ -301,6 +319,7 @@ "inputs": { "devenv": "devenv", "flake-parts": "flake-parts_2", + "nix-gitlab-ci": "nix-gitlab-ci", "nixpkgs": "nixpkgs_4", "systems": "systems", "treefmt-nix": "treefmt-nix" diff --git a/flake.nix b/flake.nix index 6ed14d6..5024223 100644 --- a/flake.nix +++ b/flake.nix @@ -8,6 +8,7 @@ imports = [ inputs.devenv.flakeModule inputs.treefmt-nix.flakeModule + inputs.nix-gitlab-ci.flakeModule ./lib/flakeModule.nix ]; systems = import systems; @@ -70,6 +71,23 @@ ]; }; + ci = { + stages = ["test"]; + jobs = { + "test" = { + stage = "test"; + script = [ + "nix run .#nixtests:run -- --junit=junit.xml" + ]; + allow_failure = true; + artifacts = { + when = "always"; + reports.junit = "junit.xml"; + }; + }; + }; + }; + packages.default = pkgs.callPackage ./package.nix {}; }; }; @@ -82,6 +100,7 @@ systems.url = "github:nix-systems/default-linux"; devenv.url = "github:cachix/devenv"; treefmt-nix.url = "github:numtide/treefmt-nix"; + nix-gitlab-ci.url = "gitlab:TECHNOFAB/nix-gitlab-ci/2.0.0?dir=lib"; }; nixConfig = {