at 23.11-pre 1.2 kB view raw
1import ../make-test-python.nix ({ lib, pkgs, ... }: { 2 name = "peering-manager"; 3 4 meta = with lib.maintainers; { 5 maintainers = [ yuka ]; 6 }; 7 8 nodes.machine = { ... }: { 9 services.peering-manager = { 10 enable = true; 11 secretKeyFile = pkgs.writeText "secret" '' 12 abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789 13 ''; 14 }; 15 }; 16 17 testScript = { nodes }: '' 18 machine.start() 19 machine.wait_for_unit("peering-manager.target") 20 machine.wait_until_succeeds("journalctl --since -1m --unit peering-manager --grep Listening") 21 22 print(machine.succeed( 23 "curl -sSfL http://[::1]:8001" 24 )) 25 with subtest("Home screen loads"): 26 machine.succeed( 27 "curl -sSfL http://[::1]:8001 | grep '<title>Home - Peering Manager</title>'" 28 ) 29 with subtest("checks succeed"): 30 machine.succeed( 31 "systemctl stop peering-manager peering-manager-rq" 32 ) 33 machine.succeed( 34 "sudo -u postgres psql -c 'ALTER USER \"peering-manager\" WITH SUPERUSER;'" 35 ) 36 machine.succeed( 37 "cd ${nodes.machine.config.system.build.peeringManagerPkg}/opt/peering-manager ; peering-manager-manage test --no-input" 38 ) 39 ''; 40})