Eelco Dolstra
4e27796eba
Allow setting GC_INITIAL_HEAP_SIZE for hydra-eval-jobs
...
This cannot be done in the hydra-evaluator systemd unit, since then
every other Nix process (e.g. hydra-evaluator and nix-prefetch-*) will
also allocate the specified heap size, probably leading to OOM.
2018-05-16 14:14:53 +02:00
Eelco Dolstra
68afa2bf6f
Dump more system info in /queue-runner-status
2018-03-07 10:06:56 +01:00
Eelco Dolstra
e9670641ec
Distinguish build step states
...
The web interface now shows whether a build step is connecting,
copying inputs/outputs, building, etc.
2017-12-07 15:35:31 +01:00
Eelco Dolstra
457483ba0e
Don't lock the BuildSteps table when inserting
...
Instead, optimistically insert a row and retry if there is a conflict.
2017-12-07 14:41:29 +01:00
Eelco Dolstra
eef0d8861b
Remove test line
2017-10-19 13:17:29 +02:00
Eelco Dolstra
b04dc6c76e
Fix root creation when the root already exists but is owned by another user
2017-10-19 12:28:38 +02:00
Eelco Dolstra
cc64e51f75
USER -> LOGNAME for consistency
...
Don't remember why we use LOGNAME. Also ensure that it's set.
2017-10-18 11:23:00 +02:00
Will Dietz
c81594f470
hydra-queue-runner: ensure roots directory exists
...
Fixes #513
2017-10-17 13:04:56 -05:00
Eelco Dolstra
45b138373b
hydra-queue-runner: Write GC roots for outputs paths
...
We lost this behaviour somewhere. So build outputs could be GC'ed when
running the collector with --option gc-keep-outputs false.
2017-10-12 18:55:38 +02:00
Eelco Dolstra
27103398c9
Make maxLogSize configurable
2017-09-22 15:23:58 +02:00
Eelco Dolstra
b828224fee
Periodically close RemoteStore connections
...
This prevents an accumulation of temproots. See
89dc62c174
.
2017-09-14 18:16:33 +02:00
Eelco Dolstra
6517446c34
Update to latest nixUnstable
2017-09-14 17:22:48 +02:00
Eelco Dolstra
7c976d2aec
hydra-queue-runner: Make build notification more reliable
...
Previously, when hydra-queue-runner was restarted, any pending "build
finished" notifications were lost. Now hydra-queue-runner marks
finished but unnotified builds in the database and uses that to run
pending notifications at startup.
2017-07-26 15:17:51 +02:00
Eelco Dolstra
e78b9fd4ee
hydra-queue-runner: Allow concurrent notifications
...
The queue runner can now run up to ‘max-concurrent-notifications’ in
parallel (default is 2). This is useful when some hydra-notify
invocations can take a long time to complete (e.g. because they need
to compress a giant build log) and we don't want this to block all
other notifications.
2017-07-24 16:35:34 +02:00
Eelco Dolstra
bba383bf1b
hydra-queue-runner: Keep some notification statistics
2017-07-24 16:26:44 +02:00
Eelco Dolstra
6fc851d376
Improve erorr message
2017-07-17 14:10:34 +02:00
Eelco Dolstra
66ae66024e
Sync with latest Nix
2017-07-17 11:38:58 +02:00
Eelco Dolstra
1f94f03699
Fix build
2017-04-26 15:11:12 +02:00
Eelco Dolstra
cc85208fe4
Fix build
2017-04-18 20:50:18 +02:00
Eelco Dolstra
426aea1236
hydra-queue-runner: Allow multiple concurrent daemon connections
2017-04-06 18:50:53 +02:00
Eelco Dolstra
57bc0eaead
hydra-queue-runner: Limit concurrent database connections
...
Adding a 96-core aarch64 build machine to the build farm caused the
potential number of database connections to increase a lot, so we
started hitting the Postgres connection limit.
2017-03-21 11:53:46 +01:00
Eelco Dolstra
150228d7de
Upload build logs to the binary cache
2017-03-15 16:59:57 +01:00
Eelco Dolstra
7e6486e694
Move log compression to a plugin
2017-03-15 16:59:57 +01:00
Eelco Dolstra
d1afb42f12
Supress debug message
2017-03-15 16:59:56 +01:00
Eelco Dolstra
73900e9f5f
Fix std::stoi exception
2017-03-08 15:07:52 +01:00
Eelco Dolstra
edebdf33f0
hydra-queue-runner: Handle SIGINT
2017-03-03 12:41:00 +01:00
Eelco Dolstra
500c27e4d5
Add hydra.conf option "nar_buffer_size" to configure memoryTokens limit
...
It defaults to half the physical RAM.
2017-03-03 12:37:27 +01:00
Eelco Dolstra
53b1f7da64
Decrease memoryTokens
2017-02-03 14:44:52 +01:00
Eelco Dolstra
a366f362e1
Use latest nixUnstable
2017-02-03 14:39:18 +01:00
Eelco Dolstra
f6081668dc
Allow determinism checking for entire jobsets
...
Setting
xxx-jobset-repeats = patchelf:master:2
will cause Hydra to perform every build step in the specified jobset 2
additional times (i.e. 3 times in total). Non-determinism is not fatal
unless the derivation has the attribute "isDeterministic = true"; we
just note the lack of determinism in the Hydra database. This will
allow us to get stats about the (lack of) reproducibility of all of
Nixpkgs.
2016-12-07 15:57:13 +01:00
Eelco Dolstra
afb8765ae4
hydra-queue-runner: Bump memory limit to reflect more accurate accounting
2016-11-16 17:51:18 +01:00
Eelco Dolstra
cb5e438a08
Bump Nix
...
Fixes #398 .
2016-11-09 19:15:13 +01:00
Eelco Dolstra
b3169ce438
Kill active build steps when builds are cancelled
...
We now kill active build steps when there are no more referring
builds. This is useful e.g. for preventing cancelled multi-hour TPC-H
benchmark runs from hogging build machines.
2016-10-31 14:58:29 +01:00
Eelco Dolstra
a816ef873d
Warn against empty machines file
2016-10-31 11:40:36 +01:00
Eelco Dolstra
ee2e9f5335
Update to reflect BinaryCacheStore changes
...
BinaryCacheStore no longer implements buildPaths() and ensurePath(),
so we need to use copyPath() / copyClosure().
2016-10-07 20:23:05 +02:00
Eelco Dolstra
6a313c691b
hydra-queue-runner: Fix build
2016-10-06 16:58:54 +02:00
Alexander Ried
7089142fdc
Add error/warnings for deprecated store specification
2016-10-06 15:10:14 +02:00
Alexander Ried
a73f211bf2
Use store-api for binary cache instantiation
2016-10-06 15:09:44 +02:00
Alexander Ried
232e6e8556
Replace buildVerbosity with verboseBuild (nix#5761827)
2016-10-06 15:08:02 +02:00
Eelco Dolstra
a55942603a
Provide a plugin hook for when build steps finish
...
Fixes #318 .
2016-05-27 14:35:32 +02:00
Eelco Dolstra
b50a105ca7
S3BinaryCacheStore: Use disk cache
2016-04-20 15:29:40 +02:00
Eelco Dolstra
afb86638cd
Updates for negative .narinfo caching
2016-04-15 15:39:20 +02:00
Eelco Dolstra
ef72569cc3
Merge pull request #280 from shlevy/github-status-api
...
Add a plugin to interact with the github status API.
2016-04-14 20:03:45 +02:00
Eelco Dolstra
b1e36b550c
max-output-size -> max_output_size
...
To be consistent with other Catalyst/Hydra config option names.
2016-04-13 16:30:52 +02:00
Eelco Dolstra
077ed3f571
Periodically clear orphaned build steps
...
These are build steps that remain "busy" in the database even though
they have finished, because they couldn't be updated (e.g. due to a
PostgreSQL connection problem). To prevent them from showing up as
busy in the "Machine status" page, we now periodically purge them.
2016-04-13 16:30:52 +02:00
Eelco Dolstra
00c78440b1
Disambiguate "marking build as succeeded" message
2016-04-13 16:30:52 +02:00
Shea Levy
9b37cb89ae
Add buildStarted plugin hook
2016-04-12 14:42:01 -04:00
Eelco Dolstra
0aecd65e59
/queue-runner-status: Include info about temporarily disabled machines
2016-03-22 16:54:06 +01:00
Eelco Dolstra
60e7930d2b
Bump memory limit a bit
2016-03-10 16:46:01 +01:00
Eelco Dolstra
4b9c76e502
hydra-queue-runner: Ensure regular status dumps
2016-03-09 17:11:34 +01:00