python.pkgs.pyqt5: 5.14.2 -> 5.15.0
[NixPkgs.git] / nixos / tests / gerrit.nix
blob6cee64a20095a09d87d32cd881c13c57beebb1a3
1 import ./make-test-python.nix ({ pkgs, ... }:
3 let
4   lfs = pkgs.fetchurl {
5     url = "https://gerrit-ci.gerritforge.com/job/plugin-lfs-bazel-master/90/artifact/bazel-bin/plugins/lfs/lfs.jar";
6     sha256 = "023b0kd8djm3cn1lf1xl67yv3j12yl8bxccn42lkfmwxjwjfqw6h";
7   };
9 in {
10   name = "gerrit";
12   meta = with pkgs.stdenv.lib.maintainers; {
13     maintainers = [ flokli zimbatm ];
14   };
16   nodes = {
17     server =
18       { config, pkgs, ... }: {
19         networking.firewall.allowedTCPPorts = [ 80 2222 ];
21         virtualisation.memorySize = 1024;
23         services.gerrit = {
24           enable = true;
25           serverId = "aa76c84b-50b0-4711-a0a0-1ee30e45bbd0";
26           listenAddress = "[::]:80";
27           jvmHeapLimit = "1g";
29           plugins = [ lfs ];
30           builtinPlugins = [ "hooks" "webhooks" ];
31           settings = {
32             gerrit.canonicalWebUrl = "http://server";
33             lfs.plugin = "lfs";
34             plugins.allowRemoteAdmin = true;
35             sshd.listenAddress = "[::]:2222";
36             sshd.advertisedAddress = "[::]:2222";
37           };
38         };
39       };
41     client =
42       { ... }: {
43       };
44   };
46   testScript = ''
47     start_all()
48     server.wait_for_unit("gerrit.service")
49     server.wait_for_open_port(80)
50     client.succeed("curl http://server")
52     server.wait_for_open_port(2222)
53     client.succeed("nc -z server 2222")
54   '';