vuls: init at 0.27.0
[NixPkgs.git] / nixos / tests / hydra / common.nix
blobf31518b1e2a20f80543a0f8875d323820150aef1
1 { system, ... }:
3   baseConfig = { pkgs, ... }: let
4     trivialJob = pkgs.writeTextDir "trivial.nix" ''
5      { trivial = builtins.derivation {
6          name = "trivial";
7          system = "${system}";
8          builder = "/bin/sh";
9          allowSubstitutes = false;
10          preferLocalBuild = true;
11          args = ["-c" "echo success > $out; exit 0"];
12        };
13      }
14     '';
16     createTrivialProject = pkgs.stdenv.mkDerivation {
17       name = "create-trivial-project";
18       dontUnpack = true;
19       nativeBuildInputs = [ pkgs.makeWrapper ];
20       installPhase = "install -m755 -D ${./create-trivial-project.sh} $out/bin/create-trivial-project.sh";
21       postFixup = ''
22         wrapProgram "$out/bin/create-trivial-project.sh" --prefix PATH ":" ${pkgs.lib.makeBinPath [ pkgs.curl ]} --set EXPR_PATH ${trivialJob}
23       '';
24     };
25   in {
26     virtualisation.memorySize = 2048;
27     time.timeZone = "UTC";
28     environment.systemPackages = [ createTrivialProject pkgs.jq ];
29     services.hydra = {
30       enable = true;
31       # Hydra needs those settings to start up, so we add something not harmfull.
32       hydraURL = "example.com";
33       notificationSender = "example@example.com";
34       extraConfig = ''
35         email_notification = 1
36       '';
37     };
38     services.postfix.enable = true;
39     nix.settings.substituters = [];
40   };