Archived
1
0
forked from rarias/bscpkgs

1 Commits

Author SHA1 Message Date
2ffdd53d86 Add hydraJobs with tests and packages
Reviewed-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
Tested-by: Rodrigo Arias Mallo <rodrigo.arias@bsc.es>
2025-09-26 16:12:46 +02:00
2 changed files with 17 additions and 27 deletions

View File

@@ -2,37 +2,25 @@
inputs.nixpkgs.url = "nixpkgs"; inputs.nixpkgs.url = "nixpkgs";
outputs = { self, nixpkgs, ...}: outputs = { self, nixpkgs, ...}:
let let
system = "x86_64-linux";
pkgs = import nixpkgs {
inherit system;
# For now we only support x86 # For now we only support x86
overlays = [ self.overlays.default ]; system = "x86_64-linux";
}; pkgs = import nixpkgs {
in inherit system;
overlays = [ self.overlays.default ];
};
in
{ {
bscOverlay = import ./overlay.nix; bscOverlay = import ./overlay.nix;
overlays.default = self.bscOverlay; overlays.default = self.bscOverlay;
# propagate nixpkgs lib, so we can do bscpkgs.lib
inherit (nixpkgs) lib;
# full nixpkgs with our overlay applied # full nixpkgs with our overlay applied
legacyPackages.${system} = pkgs; legacyPackages.${system} = pkgs;
# packages added by our overlay hydraJobs = {
packages.${system} = inherit (self.legacyPackages.${system}.bsc-ci) test pkgs;
let };
inherit (builtins) attrNames removeAttrs;
inherit (nixpkgs.lib) flip filterAttrs getAttrs pipe isDerivation; # propagate nixpkgs lib, so we can do bscpkgs.lib
in inherit (nixpkgs) lib;
# extract the names of the packages from the overlay, then get the
# actual packages from the full package set with the overlay applied
pipe (self.overlays.default null { inherit (nixpkgs) lib; } ) [
attrNames
(flip getAttrs pkgs)
(flip removeAttrs [ "bsc" ])
(filterAttrs (_: isDerivation))
];
}; };
} }

View File

@@ -88,7 +88,9 @@ in bscPkgs // {
}; };
}; };
pkgs = final.runCommand "ci-pkgs" { } pkgs = filterAttrs (_: isDerivation) bscPkgs;
pkgsList = final.runCommand "ci-pkgs" { }
"printf '%s\n' ${toString (collect isDerivation bscPkgs)} > $out"; "printf '%s\n' ${toString (collect isDerivation bscPkgs)} > $out";
tests = final.runCommand "ci-tests" { } tests = final.runCommand "ci-tests" { }
@@ -96,7 +98,7 @@ in bscPkgs // {
all = final.runCommand "ci-all" { } all = final.runCommand "ci-all" { }
'' ''
deps="${toString [ final.bsc-ci.pkgs final.bsc-ci.tests ]}" deps="${toString [ final.bsc-ci.pkgsList final.bsc-ci.tests ]}"
cat $deps cat $deps
printf '%s\n' $deps > $out printf '%s\n' $deps > $out
''; '';