Commit Graph

3355 Commits

Author SHA1 Message Date
840e99f859 hydra-eval-jobset: $firstOutput is not used so can be removed 2019-11-05 13:58:40 +01:00
c7d1d34547 Merge pull request #683 from dasJ/flake
Fix declarative flake builds
2019-10-27 16:53:44 +01:00
6f99d958bc Fix declarative flake builds 2019-10-27 14:57:53 +01:00
26ea7e493d Update flake.lock 2019-10-23 21:32:37 +02:00
a816730d8b uri -> url 2019-10-23 20:31:27 +02:00
43d4bc9108 Fix reproduction instructions 2019-10-23 16:29:12 +02:00
7ba06c13ac Bump flake dependencies 2019-10-22 20:19:40 +02:00
551e936fac Update flake.nix
Currently Hydra is only supported on x86_64-linux.
2019-10-15 20:21:42 +02:00
4b28068925 Update flake.lock 2019-10-04 21:43:59 +02:00
80738fadb1 Add hydraProxy module 2019-10-04 21:31:27 +02:00
d0b972bdd0 Use the overlay from the nix flake 2019-10-04 17:32:29 +02:00
8d2896b36b epoch -> edition 2019-09-26 18:35:00 +02:00
037f6488f6 Merge pull request #680 from grahamc/prometheus
export a /prometheus endpoint
2019-09-25 19:46:42 +02:00
7c6fd83dda Merge remote-tracking branch 'origin/master' into flake 2019-09-25 17:28:00 +02:00
d4b4255dd2 hydra-queue-runner: Support running in a NixOS container
In a NixOS container, cmdBuildDerivation doesn't work because we're
not privileged. But we also don't need it because the store already
has the derivation.

Also, don't copy from/to the store since this gives errors about
missing signatures.
2019-09-25 17:26:03 +02:00
554bb7d9ce hydra-queue-runner: Don't pass IN_SYSTEMD to child processes
This caused local builds to have journal priority prefixes
(e.g. '<3>').
2019-09-25 17:25:07 +02:00
3a04f28459 hydra: upgrade nixpkgs to 19.09 2019-09-24 16:51:18 -04:00
937e165328 export a /prometheus endpoint
Currently only shows per-machine build times
2019-09-24 16:50:52 -04:00
e110d5a38f Build the container in Hydra 2019-09-24 21:48:28 +02:00
40e7b6e884 Add a NixOS container to demo Hydra
It contains Hydra, PostgreSQL and an frontend proxy. So you can get a
running Hydra instance by doing

  $ nixos-container create hydra --flake hydra
  $ nixos-container start hydra

The web interface is available on port 80.
2019-09-24 19:58:10 +02:00
0ccf36ca3b Merge remote-tracking branch 'origin/master' into flake 2019-09-24 19:03:18 +02:00
4223202c99 Merge pull request #432 from LumiGuide/better-buildMachinesFiles-default
Only set buildMachinesFiles when nix.buildMachines is defined
2019-09-24 19:00:32 +02:00
1ab3b26b67 Update lock file 2019-09-19 00:10:12 +02:00
66d71689ec flake.nix improvements
The hydra flake now exports a Nixpkgs overlay and a NixOS module.
2019-09-17 17:25:59 +02:00
ada640d340 Update flake.nix 2019-08-30 17:23:10 +02:00
242b8b7a31 Merge pull request #676 from knl/fix-term-size-any-log-message
Add Term::Size::Any
2019-08-30 14:17:12 +02:00
a9d744d2a3 Add Term::Size::Any
This removes a supper annoying set of messages that polute the logs:

    Aug 30 09:00:30 xxx.compute.internal hydra-server[957]: Trouble trying to detect your terminal size, looking at $ENV{COLUMNS}
    Aug 30 09:00:30 xxx.compute.internal hydra-server[957]: Term::Size::Any is not installed, can't autodetect terminal column width
2019-08-30 11:58:24 +02:00
906d2493c5 Merge pull request #673 from nlewo/jobset-error
Add error boolean attribute to jobset API response
2019-08-26 10:23:52 -04:00
c8983ca076 Add haserrormsg boolean attribute to jobset API response
This attribute allows to know if an error occurred or not: when an
error occurs, errormsg is not an empty string. Note we can not use the
errormsg attribute because it can be arbitrarily long and is excluded
from the jobset API response.
2019-08-26 16:07:49 +02:00
f10b2c2da8 Update Hydra schema, otherwise hydra-notify will not work. 2019-08-19 17:05:11 +02:00
89ee74f1e3 Merge pull request #672 from gilligan/extend-jobset-api-response
Extend the jobset API response
2019-08-16 19:39:57 +02:00
919195b04f Extend the jobset API response
This adds the following (pre-existing) attributes to the jobset response:

- nrtotal
- lastcheckedtime
- starttime
- checkinterval
- triggertime
- fetcherrormsg
- errortime
2019-08-16 16:04:04 +02:00
2de52d8538 Merge remote-tracking branch 'origin/master' into flake 2019-08-15 13:56:00 +02:00
c8a4030c5f Fix error in GitlabStatus plugin
May 15 09:20:10 chef hydra-queue-runner[27523]: Hydra::Plugin::GitlabStatus=HASH(0x519a7b8)->buildFinished: Can't call method "value" on an undefined value at /nix/store/858hinflxcl2jd12wv1r3a8j11ybsf6w-hydra-0.1.2629.89fa829/libexec/hydra/lib/Hydra/Plugin/GitlabStatus.pm line 57.

(cherry picked from commit 438ddf5289)
2019-08-15 13:55:47 +02:00
f17cd94bac Merge pull request #668 from NixOS/notifications
Turn hydra-notify into a daemon
2019-08-14 13:05:56 +02:00
92d8d6baa5 Avoid fetching Projects/Jobsets just to get the name column
In particular, doing a 'select * from Jobsets where ...' must be
avoided, because the 'errormsg' column can be very big.
2019-08-13 18:18:25 +02:00
16811d3e78 Plugins: Add isEnabled method
Plugins are now disabled at startup time unless there is some relevant
configuration in hydra.conf. This avoids hydra-notify having to do a
lot of redundant work (a lot of plugins did a lot of database queries
*before* deciding they were disabled).

Note: BitBucketStatus users will need to add 'enable_bitbucket_status
= 1' to hydra.conf.
2019-08-13 18:18:25 +02:00
f49a089fc0 hydra-notify: Don't do an unnecessary fetch of Jobsets 2019-08-13 18:18:24 +02:00
e2537f741b Restart hydra-notify 2019-08-13 18:18:24 +02:00
d08cfa48d7 Add a 'step_started' notification 2019-08-13 18:18:24 +02:00
72c36373bb hydra-notify: Fix processing notifications 2019-08-13 18:18:24 +02:00
7c7cc8c059 Fix duplicate step_finished notification 2019-08-13 18:18:24 +02:00
976d88d675 Send notifications when evaluations start/finish/fail
* 'eval_started' has the format '<tmpId>\t<project>\t<jobset>'.

* 'eval_failed' has the format '<tmpId>'. (The cause of the error can
  be found in the database.)

* 'eval_added' has the format '<tmpId>:<evalId>'.
2019-08-13 18:18:24 +02:00
7114d2aceb Separate payload elements using \t 2019-08-13 18:18:24 +02:00
c7861b85c4 Add hydra-notify service 2019-08-13 18:18:24 +02:00
2946899504 Turn hydra-notify into a daemon
It now receives notifications about started/finished builds/steps via
PostgreSQL. This gets rid of the (substantial) overhead of starting
hydra-notify for every event. It also allows other programs (even on
other machines) to listen to Hydra notifications.
2019-08-13 18:18:21 +02:00
1c9e22e73c Use nixFlakes in devShell 2019-08-09 13:10:50 +02:00
a74dec6fb1 Merge remote-tracking branch 'origin/master' into flake 2019-08-09 12:46:52 +02:00
f13a2cb6dc Merge pull request #666 from craigem/you_look
Corrected grammar typo
2019-08-09 12:12:32 +02:00
bb4f349161 Corrected grammer typo
Replaced you with look
2019-08-09 13:49:21 +10:00