Commit graph

3832 commits

Author SHA1 Message Date
Graham Christensen 5b35a597b4 RunCommand: update project / jobset name refs 2022-01-13 20:44:51 -05:00
Maximilian Bosch a18b487403
hydra-queue-runner: support store URIs declaring an alternate store location
When having a builder like this in `/etc/nix/machines`

    ssh://mfbuild?remote-store=/home/bosch/store

Hydra cannot build there since it tries to pass the entire value to
`ssh(1)` which doesn't work. Also, an alternate store-location is e.g.
used if the user isn't a trusted user on the remote system and thus
cannot use `/nix/store`.

If such a URI is given, Hydra will now add a `--store /home/bosch/store`
to the `ssh`-command to select the appropriate location remotely.
2022-01-12 15:56:05 +01:00
Graham Christensen 96b2200895 hydra-notify: sort subscriptions 2022-01-11 13:28:04 -05:00
Graham Christensen 4da80e736e hydra-eval-jobset: send notifications when cached queued / finished builds are submitted 2022-01-11 13:28:04 -05:00
Graham Christensen 769f56f793
Merge pull request #1101 from DeterminateSystems/hydra-eval-jobset-notifications
hydra-eval-jobset: test emitted notifications
2022-01-11 13:23:44 -05:00
Graham Christensen 87a0782e71
Merge pull request #1104 from DeterminateSystems/builds-refs/showjobname
Builds refs: showjobname: use project / jobset from relations, not the bulids table
2022-01-11 13:14:20 -05:00
Graham Christensen 2e195c524d evalSucceds/evalFails: log that the success or failure was not expected 2022-01-11 13:10:43 -05:00
Graham Christensen f30ca3c423 showJobName: use jobset/project columns 2022-01-11 11:51:31 -05:00
Graham Christensen 2b163aa78b CatalystUtils::showJobName: write a basic test that shows it works 2022-01-11 11:48:02 -05:00
Graham Christensen ceb6ea252a CatalystUtils.pm: don't use Hydra::Helper::Nix
Using it causes database information to get fixated early, before tests can set a
new database. We only used it in one case, and that is an absolute reference anyway. The
tests for channel generation are passing, and that uses
[requireLocalStore, so this should be fine.
2022-01-11 11:47:42 -05:00
Graham Christensen 0ada412979 hydra-eval-jobset: write a test validating the events that comes out 2022-01-11 10:17:14 -05:00
Graham Christensen ae38cc5d04 test_context: support an override on jobsdir when creating a jobset 2022-01-11 10:17:14 -05:00
Graham Christensen 8d4c448e92 t: create a evalFails helper 2022-01-11 10:17:14 -05:00
Graham Christensen 40e556aee5 tests: evalSucceeds: don't print stdout/stderr unless it fails 2022-01-11 10:17:14 -05:00
Graham Christensen a5b8221a43
Merge pull request #1102 from DeterminateSystems/nest-new-tests
Relocate new tests in to the Hydra subdir
2022-01-11 10:16:45 -05:00
Graham Christensen ca6ba409de Relocate new tests in to the Hydra subdir 2022-01-11 09:54:51 -05:00
Graham Christensen b41818e067
Merge pull request #1100 from DeterminateSystems/nest-tests
Tests: restructure to more closely mirror the sources
2022-01-11 09:53:16 -05:00
Graham Christensen ff26ce0d06
Merge pull request #1092 from DeterminateSystems/restart-failed-no-eval
Allow restarting failed builds even with no eval to compare to
2022-01-10 21:26:08 -05:00
Graham Christensen a5d1d36fa6 Tests: restructure to more closely mirror the sources
t/ had lots of directories and files mirroring src/lib/Hydra. This moves
those files under t/Hydra
2022-01-10 15:34:52 -05:00
Cole Helbling 9b12a88d81 BuildDiff: ensure buildstatus is defined
buildstatus won't be defined if e.g. a build is queued but none have
failed.
2022-01-10 12:11:06 -08:00
Cole Helbling 92bd0fae7d t/BuildDiff: test jobs without previous history 2022-01-10 12:11:06 -08:00
Cole Helbling b98dbe01c3 BuildDiff: slight cleanup
Remove debugging Data::Dumper import, make comment describing function
inputs more readable.
2022-01-10 12:11:06 -08:00
Cole Helbling ef6a2c96e7 JobsetEval: add the result of buildDiff to $c->stash 2022-01-10 12:11:06 -08:00
Cole Helbling 98375e9086 BuildDiff: bring back the sort 2022-01-10 12:11:05 -08:00
Cole Helbling 1ca786561f t/JobsetEval: test GETing the eval page 2022-01-10 12:11:05 -08:00
Cole Helbling 157a02bff7 t/BuildDiff: slightly refactor empty test to be more readable 2022-01-10 12:11:05 -08:00
Cole Helbling 220ccc68df t/BuildDiff: test diffing two jobs 2022-01-10 12:11:05 -08:00
Cole Helbling ceb81e7d78 BuildDiff: actual list reference to $builds2 2022-01-10 12:11:05 -08:00
Cole Helbling 458214381d BuildDiff: document what the inputs mean
They were tripping me up, so it helped to know exactly what they were at
the ~point they're used.
2022-01-10 12:11:05 -08:00
Cole Helbling ff12218d02 BuildDiff: cleanup imports and make slightly more readable 2022-01-10 12:11:05 -08:00
Cole Helbling ec98bdaaaa BuildDiff: move cmdBuilds from Controller/JobsetEval 2022-01-10 12:11:05 -08:00
Cole Helbling 0c51f3ca7d BuildDiff: make actual hash ref 2022-01-10 12:11:05 -08:00
Cole Helbling 0eb952d72d t/BuildDiff: init 2022-01-10 12:11:05 -08:00
Cole Helbling 1349887974 BuildDiff: split out from JobsetEval GET impl 2022-01-10 12:11:05 -08:00
Cole Helbling aba0422865 JobsetEval: allow restarting failed builds even with no eval to compare to 2022-01-10 12:10:56 -08:00
Graham Christensen 98c88a4dbf
Merge pull request #1097 from DeterminateSystems/api-test-warnings
Api test warnings: clean up
2022-01-10 14:03:38 -05:00
Graham Christensen 265908c1cd
Merge pull request #1099 from helsinki-systems/feat/dark-theme
Provide a dark theme when the user prefers it
2022-01-10 14:01:36 -05:00
Janne Heß 680cd43e40
Provide a dark theme when the user prefers it 2022-01-10 19:33:51 +01:00
Graham Christensen e254b62f13
Merge pull request #1096 from DeterminateSystems/pathinput-revision-hash
PathInput: make the hash part of the revision
2022-01-10 13:32:58 -05:00
Graham Christensen d68032dd13
Merge pull request #1098 from helsinki-systems/fix/hydra-eval-jobset
hydra-eval-jobset: Fix two minor bugs
2022-01-10 13:20:56 -05:00
Janne Heß a69693a832
hydra-eval-jobset: Fix two minor bugs
I'm honestly too lazy to create two commits for fixing these one-line
issues so here's one.

The first hunk fixes the name of the projectName input. This is relevant
now because it gets logged and the log message looks stupid when there
is an input without a name.

The second hunk fixes a warning when using declarative non-flake
jobsets. The implementation may look weird but it's just the same as the
logical implication operator of nix.
2022-01-10 18:28:41 +01:00
Graham Christensen 3874db4fb7 PathInput: make the hash part of the revision 2022-01-10 11:23:22 -05:00
Graham Christensen d8025fcf04 api-test.t: don't print request content
It adds noise to the logs
2022-01-10 11:02:01 -05:00
Graham Christensen 6b2f0a9fe1 api-test.t: set a default method 2022-01-10 11:02:01 -05:00
Graham Christensen 832fa8c73d Controller/Jobset: make some warnings about undef's go away 2022-01-10 10:33:33 -05:00
Graham Christensen 0484f13a1a
Merge pull request #1095 from DeterminateSystems/tests/prefix-names-with-t
HydraTestContext: prefix names with t
2022-01-10 10:01:45 -05:00
Cole Helbling 35f55279c1 HydraTestContext: prefix names with t
This is necessary because jobset and project names are not allowed to
begin with a digit, and yet the generated jobset and project names would
do just that.

Not the most elegant solution, but it works.
2022-01-10 09:39:42 -05:00
Graham Christensen e72d2225e9
Merge pull request #1094 from helsinki-systems/feat/print-whats-evaluated
hydra-eval-jobset: Print the jobset that is evaluated
2022-01-10 09:29:46 -05:00
Graham Christensen bf9ac72fe1
Merge pull request #1062 from DeterminateSystems/runcommand-logs
RunCommand: store a log of execution and render it on the Build page
2022-01-10 09:27:28 -05:00
Janne Heß 22f9045a03
Merge branch 'master' into feat/print-whats-evaluated 2022-01-10 13:45:57 +01:00