at master 1.2 kB view raw
1{ pkgs, lib, ... }: 2{ 3 name = "lanraragi"; 4 meta.maintainers = with lib.maintainers; [ tomasajt ]; 5 6 nodes = { 7 machine1 = 8 { pkgs, ... }: 9 { 10 services.lanraragi.enable = true; 11 }; 12 machine2 = 13 { pkgs, ... }: 14 { 15 services.lanraragi = { 16 enable = true; 17 passwordFile = pkgs.writeText "lrr-test-pass" '' 18 Ultra-secure-p@ssword-"with-spec1al\chars 19 ''; 20 port = 4000; 21 redis = { 22 port = 4001; 23 passwordFile = pkgs.writeText "redis-lrr-test-pass" '' 24 123-redis-PASS 25 ''; 26 }; 27 }; 28 }; 29 }; 30 31 testScript = '' 32 start_all() 33 34 machine1.wait_for_unit("lanraragi.service") 35 machine1.wait_until_succeeds("curl -f localhost:3000") 36 machine1.succeed("[ $(curl -o /dev/null -X post 'http://localhost:3000/login' --data-raw 'password=kamimamita' -w '%{http_code}') -eq 302 ]") 37 38 machine2.wait_for_unit("lanraragi.service") 39 machine2.wait_until_succeeds("curl -f localhost:4000") 40 machine2.succeed("[ $(curl -o /dev/null -X post 'http://localhost:4000/login' --data-raw 'password=Ultra-secure-p@ssword-\"with-spec1al\\chars' -w '%{http_code}') -eq 302 ]") 41 ''; 42}