don’t nest jobsets

This commit is contained in:
Charlotte 🦝 Delenk 2023-01-21 11:06:21 +01:00
parent 511964d74f
commit 1d1046fbda
Signed by: darkkirb
GPG key ID: AB2BD8DAF2E37122

View file

@ -7,39 +7,42 @@
systems = ["x86_64-linux" "aarch64-linux" "riscv64-linux"];
nixpkgs_version = ["master" "nixos-22.05"];
mkJobsets = system: version:
(pkgs.lib.mapAttrs (
(pkgs.lib.mapAttrs' (
num: info: {
enabled = 1;
hidden = false;
description = "PR ${num} (${system}-${version}): ${info.title}";
nixexprinput = "nix-packages";
nixexprpath = "hydra/default.nix";
checkinterval = 60;
schedulingshares = 100;
enableemail = false;
emailoverride = "";
keepnr = 1;
inputs = {
nix-packages = {
type = "git";
value = "https://github.com/${info.head.repo.owner.login}/${info.head.repo.name}.git ${info.head.ref}";
emailresponsible = false;
};
nixpkgs = {
type = "git";
value = "https://github.com/NixOS/nixpkgs.git ${version}";
emailresponsible = false;
};
system = {
type = "string";
value = system;
name = "${system}-${version}-pr${num}";
value = {
enabled = 1;
hidden = false;
description = "PR ${num} (${system}-${version}): ${info.title}";
nixexprinput = "nix-packages";
nixexprpath = "hydra/default.nix";
checkinterval = 60;
schedulingshares = 100;
enableemail = false;
emailoverride = "";
keepnr = 1;
inputs = {
nix-packages = {
type = "git";
value = "https://github.com/${info.head.repo.owner.login}/${info.head.repo.name}.git ${info.head.ref}";
emailresponsible = false;
};
nixpkgs = {
type = "git";
value = "https://github.com/NixOS/nixpkgs.git ${version}";
emailresponsible = false;
};
system = {
type = "string";
value = system;
};
};
};
}
)
prs)
// {
main = {
"${system}-${version}" = {
enabled = 1;
hidden = false;
description = "nix-packages ${system}-${version}";
@ -69,17 +72,7 @@
};
};
mapToAttrs = f: list: pkgs.lib.listToAttrs (map f list);
concatAttrs = pkgs.lib.foldr (a: b: a // b) {};
jobsets =
mapToAttrs (system: {
name = system;
value =
mapToAttrs (version: {
name = version;
value = mkJobsets system version;
})
nixpkgs_version;
})
systems;
jobsets = concatAttrs (pkgs.lib.concatMap (system: map (version: mkJobsets system version) nixpkgs_version) systems);
in {jobsets = pkgs.writeText "jobsets.json" (builtins.toJSON jobsets);}