python3Packages.orjson: Disable failing tests on 32 bit
[NixPkgs.git] / nixos / tests / hydra / common.nix
blob2bce03418e1ff3ed813c260d24a9b4105ce45d69
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 = {
40       distributedBuilds = true;
41       buildMachines = [{
42         hostName = "localhost";
43         systems = [ system ];
44       }];
45       settings.substituters = [];
46     };
47   };