forked from IntersectMBO/plutus-apps
-
Notifications
You must be signed in to change notification settings - Fork 2
/
release.nix
32 lines (30 loc) · 1.39 KB
/
release.nix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
{ supportedSystems ? [ "x86_64-linux" "x86_64-darwin" ]
, system ? builtins.currentSystem
, rootsOnly ? false
, sourcesOverride ? { }
, sources ? import ./nix/sources.nix { system = builtins.currentSystem; } // sourcesOverride
, plutus-apps ? { outPath = ./.; rev = "abcdef"; }
}:
let
pkgs = import sources.nixpkgs { inherit system; };
traceNames = prefix: builtins.mapAttrs (n: v:
if builtins.isAttrs v
then if v ? type && v.type == "derivation"
then __trace ("found job " + prefix + n) v
else __trace ("looking in " + prefix + n) traceNames (prefix + n + ".") v
else v);
inherit (pkgs.callPackage ./nix/lib/ci.nix { }) stripAttrsForHydra filterDerivations derivationAggregate;
ci = import ./ci.nix {
inherit supportedSystems rootsOnly sourcesOverride sources;
plutus-apps-commit = plutus-apps;
};
# ci.nix is a set of attributes that work fine as jobs (albeit in a slightly different structure, the platform comes
# first), but we mainly just need to get rid of some extra attributes.
ciJobsets = stripAttrsForHydra (filterDerivations ci);
# Don't filter anything out of required for now
# requiredJobsets = ciJobsets;
# Don't require darwin jobs to succeed for now, until the mac builders are fixed
requiredJobsets = builtins.removeAttrs ciJobsets [ "darwin" ];
in
traceNames ""
(ciJobsets // { required = derivationAggregate "required-plutus-apps" requiredJobsets; })