locally trying to evaluate pipelines appears to fail at cheddar evaluation
$ nix-build --arg nixpkgsConfig "import $(realpath ~/.config/nixpkgs/config.nix)" -A ops.pip elines.depot -o pipeline --show-trace error: attribute 'package' missing
at /nix/store/m6p4m1rs0xi67kaa25bm1rqkm4633qjr-source/lib/attrsets.nix:259:23: 258| mapAttrsToList = f: attrs: 259| map (name: f name attrs.${name}) (attrNames attrs); | ^ 260| … while evaluating the attribute 'v' at /nix/store/xvaxaf40sssgv1v2vd6s1r7z2r95i412-source/builtins/to-toml.nix:130:44: 129| ) 130| {} (mapAttrsToList (k: v: { inherit k v; }) attrs); | ^ 131| in … while evaluating 'tomlTy' at /nix/store/xvaxaf40sssgv1v2vd6s1r7z2r95i412-source/builtins/to-toml.nix:102:12: 101| 102| tomlTy = x: | ^ 103| if typeOf x == "string" then "string" else … from call site at /nix/store/xvaxaf40sssgv1v2vd6s1r7z2r95i412-source/builtins/to-toml.nix:126:20: 125| let 126| ty = tomlTy x.v; | ^ 127| in … while evaluating anonymous lambda at /nix/store/xvaxaf40sssgv1v2vd6s1r7z2r95i412-source/builtins/to-toml.nix:124:16: 123| ( 124| acc: x: | ^ 125| let … from call site at /nix/store/m6p4m1rs0xi67kaa25bm1rqkm4633qjr-source/lib/lists.nix:85:14: 84| then nul 85| else op (foldl' (n - 1)) (elemAt list n); | ^ 86| in foldl' (length list - 1); … while evaluating 'foldl'' at /nix/store/m6p4m1rs0xi67kaa25bm1rqkm4633qjr-source/lib/lists.nix:82:16: 81| let 82| foldl' = n: | ^ 83| if n == -1 … from call site at /nix/store/m6p4m1rs0xi67kaa25bm1rqkm4633qjr-source/lib/lists.nix:85:18: 84| then nul 85| else op (foldl' (n - 1)) (elemAt list n); | ^ 86| in foldl' (length list - 1); … while evaluating anonymous lambda at /nix/store/xvaxaf40sssgv1v2vd6s1r7z2r95i412-source/builtins/to-toml.nix:124:16: 123| ( 124| acc: x: | ^ 125| let … from call site at /nix/store/m6p4m1rs0xi67kaa25bm1rqkm4633qjr-source/lib/lists.nix:85:14: 84| then nul 85| else op (foldl' (n - 1)) (elemAt list n); | ^ 86| in foldl' (length list - 1); … while evaluating 'foldl'' at /nix/store/m6p4m1rs0xi67kaa25bm1rqkm4633qjr-source/lib/lists.nix:82:16: 81| let 82| foldl' = n: | ^ 83| if n == -1 … from call site at /nix/store/m6p4m1rs0xi67kaa25bm1rqkm4633qjr-source/lib/lists.nix:86:8: 85| else op (foldl' (n - 1)) (elemAt list n); 86| in foldl' (length list - 1); | ^ 87| … while evaluating 'foldl' at /nix/store/m6p4m1rs0xi67kaa25bm1rqkm4633qjr-source/lib/lists.nix:80:20: 79| */ 80| foldl = op: nul: list: | ^ 81| let … from call site at /nix/store/xvaxaf40sssgv1v2vd6s1r7z2r95i412-source/builtins/to-toml.nix:122:14: 121| let 122| byTy = lib.foldl | ^ 123| ( … while evaluating 'concatMapStringsSep' at /nix/store/m6p4m1rs0xi67kaa25bm1rqkm4633qjr-source/lib/strings.nix:110:5: 109| # List of input strings 110| list: concatStringsSep sep (map f list); | ^ 111| … from call site at /nix/store/xvaxaf40sssgv1v2vd6s1r7z2r95i412-source/builtins/to-toml.nix:132:7: 131| in 132| concatMapStringsSep "\n" | ^ 133| (kv: concatStringsSep "\n" (outputKeyVal kv.k kv.v)) … while evaluating 'toTOML' at /nix/store/xvaxaf40sssgv1v2vd6s1r7z2r95i412-source/builtins/to-toml.nix:119:12: 118| 119| toTOML = attrs: | ^ 120| assert (typeOf attrs == "set"); … from call site at /nix/store/xvaxaf40sssgv1v2vd6s1r7z2r95i412-source/builtins/default.nix:11:44: 10| toTOML = import ./to-toml.nix { inherit lib; }; 11| writeTOML = name: attrs: writeText name (toTOML attrs); | ^ 12| … while evaluating the attribute 'text' of the derivation 'Cargo.lock' at /nix/store/m6p4m1rs0xi67kaa25bm1rqkm4633qjr-source/pkgs/stdenv/generic/make-derivation.nix:205:7: 204| // (lib.optionalAttrs (attrs ? name || (attrs ? pname && attrs ? version)) { 205| name = | ^ 206| let … while evaluating the attribute 'buildCommand' of the derivation 'dummy-src' at /nix/store/m6p4m1rs0xi67kaa25bm1rqkm4633qjr-source/pkgs/stdenv/generic/make-derivation.nix:205:7: 204| // (lib.optionalAttrs (attrs ? name || (attrs ? pname && attrs ? version)) { 205| name = | ^ 206| let … while evaluating the attribute 'src' of the derivation 'rust-package-deps-unknown' at /nix/store/m6p4m1rs0xi67kaa25bm1rqkm4633qjr-source/pkgs/stdenv/generic/make-derivation.nix:205:7: 204| // (lib.optionalAttrs (attrs ? name || (attrs ? pname && attrs ? version)) { 205| name = | ^ 206| let … while evaluating the attribute 'builtDependencies' of the derivation 'rust-package-unknown' at /nix/store/m6p4m1rs0xi67kaa25bm1rqkm4633qjr-source/pkgs/stdenv/generic/make-derivation.nix:205:7: 204| // (lib.optionalAttrs (attrs ? name || (attrs ? pname && attrs ? version)) { 205| name = | ^ 206| let … while evaluating the attribute 'tools.cheddar.outPath' at /nix/store/m6p4m1rs0xi67kaa25bm1rqkm4633qjr-source/lib/customisation.nix:164:7: 163| drvPath = assert condition; drv.drvPath; 164| outPath = assert condition; drv.outPath; | ^ 165| }; … while evaluating 'isDerivation' at /nix/store/m6p4m1rs0xi67kaa25bm1rqkm4633qjr-source/lib/attrsets.nix:330:18: 329| */ 330| isDerivation = x: isAttrs x && x ? type && x.type == "derivation"; | ^ 331| … from call site at /home/zseri/devel/depot/nix/utils/default.nix:20:8: 19| storePathName = p: 20| if lib.isDerivation p | ^ 21| then p.name … while evaluating 'storePathName' at /home/zseri/devel/depot/nix/utils/default.nix:19:19: 18| */ 19| storePathName = p: | ^ 20| if lib.isDerivation p … from call site at /home/zseri/devel/depot/nix/utils/tests/default.nix:94:8: 93| (assertEq "base name of a store path string" 94| (storePathName cheddarStorePath) depot.tools.cheddar.name) | ^ 95| (assertEq "base name of a path within a store path" … while evaluating '__functor'
[... yants stuff omitted ...]
at /nix/store/m6p4m1rs0xi67kaa25bm1rqkm4633qjr-source/lib/attrsets.nix:356:25: 355| */ 356| optionalAttrs = cond: as: if cond then as else {}; | ^ 357| … from call site
[... yants stuff omitted ...]
… while evaluating anonymous lambda at /home/zseri/devel/depot/nix/runTestsuite/default.nix:99:21: 98| assertBoolContext = defun [ AssertErrorContext string bool AssertResult ] 99| (context: desc: res: | ^ 100| if res … from call site
[... yants stuff omitted ...]
at /home/zseri/devel/depot/nix/runTestsuite/default.nix:114:9: 113| in 114| assertBoolContext context desc (left == right)); | ^ 115| … while evaluating anonymous lambda at /home/zseri/devel/depot/nix/runTestsuite/default.nix:110:18: 109| assertEq = defun [ string any any AssertResult ] 110| (desc: left: right: | ^ 111| let … from call site
[... yants stuff omitted ...]
at /home/zseri/devel/depot/nix/utils/tests/default.nix:93:6: 92| (storePathName depot.tools.cheddar) depot.tools.cheddar.name) 93| (assertEq "base name of a store path string" | ^ 94| (storePathName cheddarStorePath) depot.tools.cheddar.name) … while evaluating 'checkType'
[... yants stuff omitted ...]
at /home/zseri/devel/depot/nix/runTestsuite/default.nix:53:7: 52| ok = res.right; 53| err = res.wrong; | ^ 54| }; … while evaluating anonymous lambda at /home/zseri/devel/depot/nix/runTestsuite/default.nix:141:12: 140| runTestsuite = defun [ string (list ItResult) drv ] 141| (name: itResults: | ^ 142| let … from call site
[... yants stuff omitted ...]
at /nix/store/m6p4m1rs0xi67kaa25bm1rqkm4633qjr-source/lib/attrsets.nix:356:25: 355| */ 356| optionalAttrs = cond: as: if cond then as else {}; | ^ 357| … from call site
[... yants stuff omitted ...]
at /home/zseri/devel/depot/nix/utils/tests/default.nix:104:1: 103| 104| runTestsuite "nix.utils" [ | ^ 105| pathPredicates … while evaluating anonymous lambda at /home/zseri/devel/depot/nix/utils/tests/default.nix:1:1: 1| { depot, lib, ... }: | ^ 2| … from call site at /home/zseri/devel/depot/nix/readTree/default.nix:68:10: 67| then builtins.throw "readTree: trying to import ${toString path}, but it’s a ${pathType}, you need to make it a function like { depot, pkgs, ... }" 68| else importedFile (filter parts (argsWithPath args parts)); | ^ 69| … while evaluating 'importFile' at /home/zseri/devel/depot/nix/readTree/default.nix:59:47: 58| # Import a file and enforce our calling convention 59| importFile = args: scopedArgs: path: parts: filter: | ^ 60| let … from call site at /home/zseri/devel/depot/nix/readTree/default.nix:81:14: 80| then { __readTree = []; } 81| else importFile args scopedArgs initPath parts argsFilter; | ^ 82| … while evaluating 'readTree' at /home/zseri/devel/depot/nix/readTree/default.nix:74:14: 73| 74| readTree = { args, initPath, rootDir, parts, argsFilter, scopedArgs }: | ^ 75| let … from call site at /home/zseri/devel/depot/nix/readTree/default.nix:93:17: 92| name = c; 93| value = readTree { | ^ 94| inherit argsFilter scopedArgs; … while evaluating the attribute 'tests' at /home/zseri/devel/depot/nix/readTree/default.nix:93:9: 92| name = c; 93| value = readTree { | ^ 94| inherit argsFilter scopedArgs; … while evaluating anonymous lambda at /home/zseri/devel/depot/nix/readTree/default.nix:149:44: 148| # Include eligible children of the node 149| ++ concatMap (gather eligible) (map (attr: node."${attr}") node.__readTreeChildren) | ^ 150| # Include specified sub-targets of the node … from call site … while evaluating 'gather' at /home/zseri/devel/depot/nix/readTree/default.nix:144:22: 143| # should be included in the build. 144| gather = eligible: node: | ^ 145| if node ? __readTree then … from call site at /home/zseri/devel/depot/nix/readTree/default.nix:149:10: 148| # Include eligible children of the node 149| ++ concatMap (gather eligible) (map (attr: node."${attr}") node.__readTreeChildren) | ^ 150| # Include specified sub-targets of the node … while evaluating 'gather'
[... repeating readTree snippets omitted ...]
at /home/zseri/devel/depot/nix/readTree/default.nix:144:22: 143| # should be included in the build. 144| gather = eligible: node: | ^ 145| if node ? __readTree then … from call site at /home/zseri/devel/depot/default.nix:100:16: 99| # attribute set (which does not have a __readTree attribute). 100| ci.targets = readTree.gather eligible (self // { | ^ 101| # remove the pipelines themselves from the set over which to … while evaluating the attribute 'ci.targets' at /home/zseri/devel/depot/default.nix:100:3: 99| # attribute set (which does not have a __readTree attribute). 100| ci.targets = readTree.gather eligible (self // { | ^ 101| # remove the pipelines themselves from the set over which to … while evaluating 'imap1' at /nix/store/m6p4m1rs0xi67kaa25bm1rqkm4633qjr-source/lib/lists.nix:116:14: 115| */ 116| imap1 = f: list: genList (n: f (n + 1) (elemAt list n)) (length list); | ^ 117| … from call site at /home/zseri/devel/depot/ops/pipelines/depot.nix:103:16: 102| chunkId = idx: toString (idx / n + 1); 103| assigned = lib.imap1 (idx: value: { inherit value ; chunk = chunkId idx; }) list; | ^ 104| unchunk = mapAttrs (_: elements: map (e: e.value) elements); … while evaluating 'groupBy'' at /nix/store/m6p4m1rs0xi67kaa25bm1rqkm4633qjr-source/lib/lists.nix:343:29: 342| */ 343| groupBy' = op: nul: pred: lst: | ^ 344| foldl' (r: e: … from call site at /home/zseri/devel/depot/ops/pipelines/depot.nix:105:15: 104| unchunk = mapAttrs (_: elements: map (e: e.value) elements); 105| in unchunk (lib.groupBy (e: e.chunk) assigned); | ^ 106| … while evaluating 'chunksOf' at /home/zseri/devel/depot/ops/pipelines/depot.nix:101:17: 100| # index, and then grouping all elements by their chunk ID. 101| chunksOf = n: list: let | ^ 102| chunkId = idx: toString (idx / n + 1); … from call site at /home/zseri/devel/depot/ops/pipelines/depot.nix:117:60: 116| 117| pipelineChunks = attrValues (mapAttrs makePipelineChunk (chunksOf 256 allSteps)); | ^ 118| … while evaluating the attribute 'buildCommand' of the derivation 'depot-pipeline' at /nix/store/m6p4m1rs0xi67kaa25bm1rqkm4633qjr-source/pkgs/stdenv/generic/make-derivation.nix:205:7: 204| // (lib.optionalAttrs (attrs ? name || (attrs ? pname && attrs ? version)) { 205| name = | ^ 206| let
Eval of the pipeline works fine in general, so I guess it would be relevant to post your nixpkgs config as well?
sterni at 2021-12-28T11·43+00
FWIW this seems like an issue in naersk.
sterni at 2021-12-28T11·44+00
config: { contentAddressedByDefault = true; }
I could rerun it after the initial run without the config (it was only necessary for me to benefit from already fetched deps of the FOD of naersk). Yes, seems like an issue in naersk.
zseri at 2021-12-28T18·04+00