When people reach out to the git repository they probably want to use hydra from the same source. This also removes the need for an overlay with simpler and more performant direct use of the nixpkgs passed in. Before it was re-importing nixpkgs. test
49 lines
1.3 KiB
Nix
49 lines
1.3 KiB
Nix
{ self }:
|
|
|
|
{
|
|
hydra = { pkgs, lib,... }: {
|
|
_file = ./default.nix;
|
|
imports = [ ./hydra.nix ];
|
|
services.hydra-dev.package = lib.mkDefault self.packages.${pkgs.hostPlatform.system}.hydra;
|
|
};
|
|
|
|
hydraTest = { pkgs, ... }: {
|
|
services.hydra-dev.enable = true;
|
|
services.hydra-dev.hydraURL = "http://hydra.example.org";
|
|
services.hydra-dev.notificationSender = "admin@hydra.example.org";
|
|
|
|
systemd.services.hydra-send-stats.enable = false;
|
|
|
|
services.postgresql.enable = true;
|
|
services.postgresql.package = pkgs.postgresql_12;
|
|
|
|
# The following is to work around the following error from hydra-server:
|
|
# [error] Caught exception in engine "Cannot determine local time zone"
|
|
time.timeZone = "UTC";
|
|
|
|
nix.extraOptions = ''
|
|
allowed-uris = https://github.com/
|
|
'';
|
|
};
|
|
|
|
hydraProxy = {
|
|
services.httpd = {
|
|
enable = true;
|
|
adminAddr = "hydra-admin@example.org";
|
|
extraConfig = ''
|
|
<Proxy *>
|
|
Order deny,allow
|
|
Allow from all
|
|
</Proxy>
|
|
|
|
ProxyRequests Off
|
|
ProxyPreserveHost On
|
|
ProxyPass /apache-errors !
|
|
ErrorDocument 503 /apache-errors/503.html
|
|
ProxyPass / http://127.0.0.1:3000/ retry=5 disablereuse=on
|
|
ProxyPassReverse / http://127.0.0.1:3000/
|
|
'';
|
|
};
|
|
};
|
|
}
|