at 23.11-beta 1.3 kB view raw
1import ./make-test-python.nix ({ lib, pkgs, ... }: 2let 3 port = 5000; 4 scanPath = "/var/lib/legit"; 5in 6{ 7 name = "legit-web"; 8 meta.maintainers = [ lib.maintainers.ratsclub ]; 9 10 nodes = { 11 server = { config, pkgs, ... }: { 12 services.legit = { 13 enable = true; 14 settings = { 15 server.port = 5000; 16 repo = { inherit scanPath; }; 17 }; 18 }; 19 20 environment.systemPackages = [ pkgs.git ]; 21 }; 22 }; 23 24 testScript = { nodes, ... }: 25 let 26 strPort = builtins.toString port; 27 in 28 '' 29 start_all() 30 31 server.wait_for_unit("network.target") 32 server.wait_for_unit("legit.service") 33 34 server.wait_until_succeeds( 35 "curl -f http://localhost:${strPort}" 36 ) 37 38 server.succeed("${pkgs.writeShellScript "setup-legit-test-repo" '' 39 set -e 40 git init --bare -b master ${scanPath}/some-repo 41 git init -b master reference 42 cd reference 43 git remote add origin ${scanPath}/some-repo 44 date > date.txt 45 git add date.txt 46 git -c user.name=test -c user.email=test@localhost commit -m 'add date' 47 git push -u origin master 48 ''}") 49 50 server.wait_until_succeeds( 51 "curl -f http://localhost:${strPort}/some-repo" 52 ) 53 ''; 54})