hydra/t/jobs
Luke Granger-Brown 67ebce8493 Output evaluation errors without crashing if aggregate job is broken.
At the moment, aggregate jobs can easily break and cause the entire
evaluation to fail, which is not ideal. For Nixpkgs, we do have some
important aggregate jobs (like `tested`), but for debugging and building
purposes it's still useful to get a partial result even if the channel
won't actually advance.

This commit changes the behaviour of hydra-eval-jobs such that it
aggregates any errors found during the construction of an aggregate, and
will instead annotate the job with the evaluation failure such that it
shows up in a "cleaner" way.

There are really two types of failure that we care about: one is where
the attribute just ends up missing altogether in the final output, and
also where the attribute is in the output but fails to evaluate. Both
are handled here.

Note that this does mean that the same error message may be output
multiple times, but this aids debuggability because it'll be much
clearer what's blocking the job from being created.
2021-10-26 10:14:34 +01:00
..
aggregate.nix add api endpoint: /build/<id>/constituents 2021-09-24 16:30:44 -04:00
api-test.nix move the api-test.nix in to the jobsdir 2021-04-28 18:28:35 -04:00
basic.nix tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
broken-constituent.nix Output evaluation errors without crashing if aggregate job is broken. 2021-10-26 10:14:34 +01:00
build-output-as-input.nix tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
build-product-simple.sh tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
build-product-with-spaces.sh tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
build-products.nix tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
bzr-checkout-input.nix tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
bzr-checkout-update.sh tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
bzr-input.nix tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
bzr-update.sh tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
config.nix.in tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
darcs-input.nix tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
darcs-update.sh tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
deepgit-builder.sh tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
deepgit-input.nix tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
default-machine-file.nix Use system-features from the Nix conf in the default machine file 2021-04-28 11:43:04 +02:00
empty-dir-builder.sh tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
fail.sh tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
git-input.nix tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
git-rev-input.nix tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
git-rev-update.sh tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
git-update.sh tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
hg-input.nix tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
hg-update.sh tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
nested-attributes.nix Test the fake derivations channel, asserting nested packages are properly represented. 2021-03-18 11:33:37 -04:00
notifications.nix queue runner: test notifications 2021-04-14 14:19:10 -04:00
runcommand.nix tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
scm-builder.sh tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
server.py Replace TestHTTPMockServer with python script 2021-04-03 01:07:07 +02:00
succeed-with-failed.sh tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
svn-checkout-input.nix tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
svn-checkout-update.sh tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
svn-input.nix tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00
svn-update.sh tests: move to t, allow yath test from root 2021-03-05 09:49:06 -08:00