at 25.11-pre 1.5 kB view raw
1{ 2 system ? builtins.currentSystem, 3 pkgs ? import ../.. { inherit system; }, 4 ... 5}: 6let 7 lib = pkgs.lib; 8 testScript = '' 9 machine.start() 10 machine.wait_for_unit("ferretdb.service") 11 machine.wait_for_open_port(27017) 12 machine.succeed("mongosh --eval 'use myNewDatabase;' --eval 'db.myCollection.insertOne( { x: 1 } );'") 13 ''; 14in 15with import ../lib/testing-python.nix { inherit system; }; 16{ 17 18 postgresql = makeTest { 19 inherit testScript; 20 name = "ferretdb-postgresql"; 21 meta.maintainers = with lib.maintainers; [ julienmalka ]; 22 23 nodes.machine = 24 { pkgs, ... }: 25 { 26 services.ferretdb = { 27 enable = true; 28 settings.FERRETDB_HANDLER = "pg"; 29 }; 30 31 systemd.services.ferretdb.serviceConfig = { 32 Requires = "postgresql.service"; 33 After = "postgresql.service"; 34 }; 35 36 services.postgresql = { 37 enable = true; 38 ensureDatabases = [ "ferretdb" ]; 39 ensureUsers = [ 40 { 41 name = "ferretdb"; 42 ensureDBOwnership = true; 43 } 44 ]; 45 }; 46 47 environment.systemPackages = with pkgs; [ mongosh ]; 48 }; 49 }; 50 51 sqlite = makeTest { 52 inherit testScript; 53 name = "ferretdb-sqlite"; 54 meta.maintainers = with lib.maintainers; [ julienmalka ]; 55 56 nodes.machine = 57 { pkgs, ... }: 58 { 59 services.ferretdb.enable = true; 60 61 environment.systemPackages = with pkgs; [ mongosh ]; 62 }; 63 }; 64}