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