Commit Graph

72 Commits

Author SHA1 Message Date
633724cc8a services.hydra -> services.hydra-dev
Since Nixpkgs 16.09 contains a Hydra module, we were getting a
conflict. I guess we should have a way to override modules in
Nixpkgs...
2016-10-10 11:29:15 +02:00
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
dedcb76bed module: add default to buildMachinesFiles (#372) 2016-08-20 19:50:12 +02:00
23bf99b8e2 Use pixz instead of bzip2 for compressing nars
According to following two benchmarks:

- https://www.rootusers.com/gzip-vs-bzip2-vs-xz-performance-comparison/
- http://catchchallenger.first-world.info/wiki/Quick_Benchmark:_Gzip_vs_Bzip2_vs_LZMA_vs_XZ_vs_LZ4_vs_LZO

xz has better compression ratio than bzip2 at lowest compression rate.

https://github.com/vasi/pixz has been chosen as it can scale compressing
over multiple cores linearly.

We're using this in snabblab for a month now and it has improved CPU
wise the main Hydra server.
2016-08-12 11:39:07 +02:00
6bcbabb4df Merge pull request #307 from groxxda/fix/trivial
Trivial fixes (readme, comment, missing dependency in release.nix)
2016-05-31 09:59:07 +01:00
6f10cd297b hydra-module: fix useSubstitutes configuration option 2016-05-26 14:16:47 +03:00
51d21b9b91 hydra-module.nix: fix warning about deprecated types.list 2016-05-09 19:09:33 +02:00
3ca0e50e01 hydra-module.nix: add 'useSubstitutes' option to control use of binary caches
Gives users who want to use binary caches a way to do so without messing
with module internals. Fixes https://github.com/NixOS/hydra/issues/297.
2016-05-06 10:30:54 +02:00
5777f246a5 hydra-module: fix debug attribute 2016-04-29 04:21:05 +02:00
7dad867498 Add smtpHost option 2016-04-13 16:46:24 +02:00
fd20c726e1 Remove ssmtp from $PATH again
See 10cad61231.
2016-04-13 16:33:38 +02:00
cbd2e3a50d Fix problem with delegating builds to localhost due to nix-store not being in the PATH 2016-04-06 14:16:04 +00:00
74dfcc84e9 Make NIX_REMOTE_SYSTEMS configurable 2016-03-25 15:41:38 +01:00
32fa392146 Fix hydra-queue-runner PATH 2016-03-23 12:35:55 +01:00
f09b92e289 Remove another obsolete SSL variable 2016-03-02 15:03:54 +01:00
ad035b5227 hydra-queue-runner: Enable core dumps 2016-02-28 14:09:04 +01:00
1693354506 Remove unnecessary call to hydra-queue-runner --unlock 2016-02-26 21:45:59 +01:00
b081133dcc Move GC roots to /nix/var/nix/gcroots/hydra
The uid split a while back caused the web interface to create GC roots
in /nix/var/nix/gcroots/per-user/hydra-www, where they wouldn't be
purged by hydra-update-gc-roots. Thus restarted builds would
accumulate forever. The fix is to keep the roots in a shared directory
with gid=hydra.
2015-12-14 13:31:24 +01:00
d22e7ac03d hydra-compress-logs: Use bzip2 -f flag 2015-10-27 16:10:02 +01:00
b8ff29f0db Periodically compress logs 2015-10-07 13:12:24 +02:00
68796b2762 Fix email notification 2015-08-26 17:25:00 +02:00
6ddcd37df1 hydra-queue-runner.service: Set IN_SYSTEMD 2015-07-21 01:54:24 +02:00
f5548dc225 Fix Persona logins 2015-07-08 16:57:33 +02:00
535e936732 Hackery 2015-07-02 02:55:15 +02:00
377d9d37f3 Fix paths 2015-07-02 02:54:59 +02:00
8ea05cc7f2 Don't require postgresql.service 2015-07-02 02:54:30 +02:00
dffb629b8a Unify Hydra's NixOS module with the one used for hydra.nixos.org
In particular, the queue runner and web server now run under different
UIDs.
2015-07-02 01:01:44 +02:00
1e87b15f91 Remove Nix options not needed by the new queue runner 2015-07-01 11:40:00 +02:00
60e8b9881b The new queue runner requires "hydra" to be a trusted Nix user
(Because it does unsigned imports into the store.)
2015-07-01 10:47:43 +02:00
171303864e Fix type 2015-06-29 09:29:04 +00:00
401f5bdce2 Add a unit for hydra-send-stats 2015-06-26 15:24:12 +02:00
17924ce012 Note in the log when the queue runner / evaluator gets killed 2015-06-26 11:56:11 +02:00
aabe514d07 Update the hydra-queue-runner unit 2015-06-26 11:29:30 +02:00
73a78c2073 Give services.hydra.package a reasonable default 2015-06-26 11:29:19 +02:00
cb1395ee47 hydra-server.service: Shut up warning about the terminal size being unknown 2014-11-12 13:50:25 +01:00
3b93c4721c hydra-module.nix: Remove log compression which is a local policy 2014-11-12 13:47:55 +01:00
91f895b3d6 hydra-module.nix: Take lib from the module system, not from pkgs 2014-05-14 15:06:57 -04:00
76a7cdc897 hydra-module: add config.extraEnv
This makes it easy to set environment variables for the Hydra server
(for example, your configuration.nix can use readFile to read an API
token to upload build results somewhere).

Signed-off-by: Austin Seipp <aseipp@pobox.com>
2014-04-30 11:54:47 -05:00
72d3504fbd hydra-module: Use PermissionsStartOnly in init.
Oops, forgot to add this in f75509099a.

This is necessary because we actually want to run the preStart script as
root (because it chmod/chowns stuff and also needs to create the
database using PostgreSQL's superuser) and the actual creation of the
database as user hydra.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-04-11 00:11:34 +02:00
f75509099a hydra-module: Don't rely on su being available.
The su binary is now in a separate output of the shadow package and
isn't included in the main output path anymore.

But instead of changing the call to use pkgs.su, we're now entirely
dropping the dependency because systemd is already able to execute
processes under a specific user by itself.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2014-04-10 20:09:29 +02:00
8b67ad8787 hydra-module.nix: Export the HYDRA_* environment variables
This is useful if you want to run hydra-* commands manually.
2013-11-06 17:32:50 +01:00
ed9d57d0a4 hydra-module.nix: More paranoid permissions on the data directory 2013-11-06 17:29:34 +01:00
2614fe21fb hydra-module.nix: Use startAt 2013-11-06 17:29:22 +01:00
d710c1e443 hydra-module.nix: Fix setting the logo 2013-11-06 17:27:36 +01:00
243b05f1e7 hydra-module.nix: Use -p instead of HYDRA_PORT 2013-11-06 17:19:57 +01:00
f4845cde00 hydra-module.nix: Make services require hydra-init 2013-11-06 17:09:24 +01:00
1f6304c876 hydra-module.nix: Don't use a password
If PostgreSQL is running on the same system, then the "hydra" user can
can connect without a password (via Unix domain socket
authentication), so no need to set up a password.  If PostgreSQL is on
another machine, then creating a user/database won't work anyway.
2013-11-06 17:07:25 +01:00
ed69106c34 hydra-module.nix: Give types to options
Also, rename the "service.hydra.hydra" option to
"service.hydra.package" to be consistent with NixOS option naming
conventions.
2013-11-06 16:34:16 +01:00
6fc59aa0da hydra-module.nix: Remove the useWAL option
This is not a Hydra option but a Nix option so it shouldn't be here.
2013-11-06 16:17:11 +01:00
9dc3311ff7 hydra-module.nix: Don't create an admin user
It's the user's job to create users with the appropriate roles.
2013-11-06 16:15:53 +01:00