Graham Christensen
e709a17508
gitea.t: try opening the file a few times
2022-02-10 11:01:09 -05:00
Graham Christensen
4acaf9c8b0
hydra-queue-runner: don't dispatch until the machines parser has completed one run
...
Periodically, I have seen tests fail because of out of order queue runner behavior:
checking the queue for builds > 0...
loading build 1 (tests:basic:empty_dir)
aborting unsupported build step '...-empty-dir.drv' (type 'x86_64-linux')
marking build 1 as failed
adding new machine ‘localhost’
This patch should prevent the dispatcher from running before any machines are
made available.
2022-02-10 10:54:30 -05:00
Graham Christensen
09652475bd
Set the YATH_JOB_COUNt to NIX_BUILD_CORES if no parallelism variables are set
2022-02-10 10:00:32 -05:00
Graham Christensen
5506962537
Test::Postgresql: update to a tagged fork to improve paralellism
2022-02-10 09:37:48 -05:00
Graham Christensen
4837a68d8d
LDAPContext: don't background slapd
2022-02-10 09:28:53 -05:00
Graham Christensen
8bce8109e3
flake.nix: drop the LDAP server test
2022-02-09 20:56:10 -05:00
Graham Christensen
80c6525029
LDAP: Create a test which does not use a VM
2022-02-09 20:56:10 -05:00
Graham Christensen
e4adec36f3
Set an env var in the build environment to point to the root of openldap
2022-02-09 20:56:10 -05:00
Graham Christensen
60adee7f94
hydra check inputs: add openldap
2022-02-09 20:56:10 -05:00
Graham Christensen
9ae7c8bddc
Hydra::Helper::Exec add an expectOkay which dies with stdout / stderr on exit
2022-02-09 20:56:10 -05:00
Graham Christensen
5184e895df
Merge pull request #1148 from DeterminateSystems/hydra-helper-exec
...
captureStdoutStderr*: move to Hydra::Helper::Exec which helps avoid some environment variable fixation problems
2022-02-09 14:42:07 -05:00
Graham Christensen
a374ef7d81
Merge pull request #1149 from DeterminateSystems/flake-format
...
flake.nix: format with nixpkgs-fmt
2022-02-09 14:40:48 -05:00
Graham Christensen
845e6d4760
captureStdoutStderr*: move to Hydra::Helper::Exec which helps avoid some environment variable fixation problems
2022-02-09 14:28:50 -05:00
Graham Christensen
68c6c3d556
flake.nix: format with nixpkgs-fmt
2022-02-09 10:43:40 -05:00
Graham Christensen
1abe7f4d80
Merge pull request #1145 from DeterminateSystems/eval-status
...
`eval_*` events: change the API to include IDs and use \t separators
2022-02-09 10:23:15 -05:00
Graham Christensen
517dce285a
eval_added event: change interface to traceID\tjobsetID\tevaluationID
...
I was not going to break the interface until I noticed
the current implementation uses the string literal \t.
2022-02-08 09:51:35 -05:00
Graham Christensen
d512e6220f
eval_failed event: change interface to traceID\tjobsetID
...
I was not going to break the interface until I noticed the other eval_* events used literal \ts
2022-02-08 09:51:35 -05:00
Graham Christensen
2597fa8c11
eval_cached event: change interface to traceID\tjobsetID\tevaluationID
...
I was not going to break the interface until I noticed
the current implementation uses the string literal \t.
2022-02-08 09:51:35 -05:00
Graham Christensen
be531c6c57
notifications.t: create a helper to parse the actual messages from the evaluator using the Event code
2022-02-08 09:51:35 -05:00
Graham Christensen
c30f084f32
eval_started event: change interface to traceID\tjobsetID
...
I was not going to break the interface until I noticed
the current implementation uses the string literal \t.
2022-02-08 09:51:35 -05:00
Graham Christensen
3864ca820a
Merge pull request #1144 from DeterminateSystems/eval-event-cleanup
...
Eval event cleanup
2022-02-08 09:50:33 -05:00
Graham Christensen
c0eb873379
notifications: document eval_*
2022-02-07 18:08:01 -05:00
Graham Christensen
f648e91487
StepFinished.t: fixup use
2022-02-07 16:08:40 -05:00
Graham Christensen
7107ce2bc7
t/Event/* -> t/Hydra/Event/
2022-02-07 16:08:40 -05:00
Graham Christensen
8a18326f2b
Sort notification classes / events
2022-02-07 16:08:27 -05:00
Graham Christensen
7b7c03a521
Merge pull request #1141 from amerocu/amerocu/fix-dev-env
...
missing develop dependencies
2022-02-06 14:35:27 -05:00
Maximilian Bosch
5ae26aa760
Update Nix to 2.6
2022-02-06 15:05:15 +01:00
Marco Turchetto
73f2cc184f
missing develop dependencies
2022-02-05 20:28:44 +01:00
Graham Christensen
d8b56f022d
RunCommand: print a warning if the hook isn't run because the project / jobset doens't have it enabled
2022-02-01 10:58:54 -05:00
Graham Christensen
3aa2393091
Jobsets: add a supportsDynamicRunCommand which also checks the project's dynamic runcommand support
2022-02-01 10:58:54 -05:00
Graham Christensen
daa6864a58
Project result: add a supportsDynamicRunCommand helper
2022-02-01 10:58:54 -05:00
Graham Christensen
38514ae494
fanout tests: capture warnings and test their relevance
2022-02-01 10:58:54 -05:00
Graham Christensen
bc1630bd27
fixup! RunCommand: Add a WIP execution of dynamic commands
2022-02-01 10:58:54 -05:00
Graham Christensen
2635607b6e
whoops: add a test on the enable_dynamic_run_command field
2022-02-01 10:58:54 -05:00
Graham Christensen
8a96f07f58
Project: enable enabling dynamic runcommand per project
2022-02-01 10:58:54 -05:00
Graham Christensen
1affb1cfb1
jobset API: expose and check the enable_dynamic_run_command
2022-02-01 10:58:54 -05:00
Graham Christensen
726ea80e99
HTTP/Jobset: support setting / reading enable_dynamic_run_command
2022-02-01 10:58:54 -05:00
Graham Christensen
1802bd0113
Declarative Jobs: add support for the enable_dynamic_run_command flag
2022-02-01 10:58:54 -05:00
Graham Christensen
0810f5debc
finish making the dynamic hooks only run on project & jobset agreement
2022-02-01 10:58:54 -05:00
Graham Christensen
aef11685a0
regenerate schema files after adding the flag to the projects
2022-02-01 10:58:54 -05:00
Graham Christensen
0c96172c28
RunCommand: only run dynamic runcommand hooks if the project AND jobset agree they should be enabled
2022-02-01 10:58:54 -05:00
Graham Christensen
85a53694c8
sql: add enable_dynamic_run_command to the Project as well
2022-02-01 10:58:54 -05:00
Graham Christensen
a9bfabd672
sql: add a migration for enable_dynamic_run_command
2022-02-01 10:58:23 -05:00
Graham Christensen
3cce0c5ef6
Only run dynamic runcommand hooks if the jobset enables them
2022-02-01 10:57:30 -05:00
Graham Christensen
97a1d2d1d4
Jobsets: add enable_dynamic_run_command
2022-02-01 10:57:30 -05:00
Graham Christensen
216d8bee35
DynamicRunCommand: don't run if the build failed
2022-02-01 10:57:30 -05:00
Graham Christensen
1a30a0c2f1
Dynamic RunCommand: validate that the job's out exists, is a file (or points to a file) which is executable.
2022-02-01 10:57:30 -05:00
Graham Christensen
c2be27e82b
fanout.t: switch to makeAndEvaluateJobset
2022-02-01 10:57:30 -05:00
Graham Christensen
e7f68045f4
DynamicRunCommand: pull out the function determining if a build is
...
eligible for execution under dynamic run commands.
2022-02-01 10:57:30 -05:00
Graham Christensen
e56c49333f
RunCommand: Add a WIP execution of dynamic commands
...
This in-progress feature will run a dynamically generated set of
buildFinished hooks, which must be nested under the `runCommandHook.*`
attribute set. This implementation is not very good, with some to-dos:
1. Only run if the build succeeded
2. Verify the output is named $out and that it is an executable file
(or a symlink to a file)
3. Require the jobset itself have a flag enabling the feature, since
this feature can be a bit dangerous if various people of different
trust levels can create the jobs.
2022-02-01 10:57:30 -05:00