56 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
		
		
			
		
	
	
			56 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
|   | import ./make-test-python.nix ({ pkgs, ... }: | ||
|  | 
 | ||
|  | let | ||
|  |   lfs = pkgs.fetchurl { | ||
|  |     url = "https://gerrit-ci.gerritforge.com/job/plugin-lfs-bazel-master/90/artifact/bazel-bin/plugins/lfs/lfs.jar"; | ||
|  |     sha256 = "023b0kd8djm3cn1lf1xl67yv3j12yl8bxccn42lkfmwxjwjfqw6h"; | ||
|  |   }; | ||
|  | 
 | ||
|  | in { | ||
|  |   name = "gerrit"; | ||
|  | 
 | ||
|  |   meta = with pkgs.stdenv.lib.maintainers; { | ||
|  |     maintainers = [ flokli zimbatm ]; | ||
|  |   }; | ||
|  | 
 | ||
|  |   nodes = { | ||
|  |     server = | ||
|  |       { config, pkgs, ... }: { | ||
|  |         networking.firewall.allowedTCPPorts = [ 80 2222 ]; | ||
|  | 
 | ||
|  |         virtualisation.memorySize = 1024; | ||
|  | 
 | ||
|  |         services.gerrit = { | ||
|  |           enable = true; | ||
|  |           serverId = "aa76c84b-50b0-4711-a0a0-1ee30e45bbd0"; | ||
|  |           listenAddress = "[::]:80"; | ||
|  |           jvmHeapLimit = "1g"; | ||
|  | 
 | ||
|  |           plugins = [ lfs ]; | ||
|  |           builtinPlugins = [ "hooks" "webhooks" ]; | ||
|  |           settings = { | ||
|  |             gerrit.canonicalWebUrl = "http://server"; | ||
|  |             lfs.plugin = "lfs"; | ||
|  |             plugins.allowRemoteAdmin = true; | ||
|  |             sshd.listenAddress = "[::]:2222"; | ||
|  |             sshd.advertisedAddress = "[::]:2222"; | ||
|  |           }; | ||
|  |         }; | ||
|  |       }; | ||
|  | 
 | ||
|  |     client = | ||
|  |       { ... }: { | ||
|  |       }; | ||
|  |   }; | ||
|  | 
 | ||
|  |   testScript = ''
 | ||
|  |     start_all() | ||
|  |     server.wait_for_unit("gerrit.service") | ||
|  |     server.wait_for_open_port(80) | ||
|  |     client.succeed("curl http://server") | ||
|  | 
 | ||
|  |     server.wait_for_open_port(2222) | ||
|  |     client.succeed("nc -z server 2222") | ||
|  |   '';
 | ||
|  | }) |