53 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
			
		
		
	
	
			53 lines
		
	
	
		
			1.4 KiB
		
	
	
	
		
			Nix
		
	
	
	
	
	
import ./make-test-python.nix ({ pkgs, lib, ... }:
 | 
						|
{
 | 
						|
  name = "codimd";
 | 
						|
 | 
						|
  meta = with lib.maintainers; {
 | 
						|
    maintainers = [ willibutz ];
 | 
						|
  };
 | 
						|
 | 
						|
  nodes = {
 | 
						|
    codimdSqlite = { ... }: {
 | 
						|
      services = {
 | 
						|
        codimd = {
 | 
						|
          enable = true;
 | 
						|
          configuration.dbURL = "sqlite:///var/lib/codimd/codimd.db";
 | 
						|
        };
 | 
						|
      };
 | 
						|
    };
 | 
						|
 | 
						|
    codimdPostgres = { ... }: {
 | 
						|
      systemd.services.codimd.after = [ "postgresql.service" ];
 | 
						|
      services = {
 | 
						|
        codimd = {
 | 
						|
          enable = true;
 | 
						|
          configuration.dbURL = "postgres://codimd:snakeoilpassword@localhost:5432/codimddb";
 | 
						|
        };
 | 
						|
        postgresql = {
 | 
						|
          enable = true;
 | 
						|
          initialScript = pkgs.writeText "pg-init-script.sql" ''
 | 
						|
            CREATE ROLE codimd LOGIN PASSWORD 'snakeoilpassword';
 | 
						|
            CREATE DATABASE codimddb OWNER codimd;
 | 
						|
          '';
 | 
						|
        };
 | 
						|
      };
 | 
						|
    };
 | 
						|
  };
 | 
						|
 | 
						|
  testScript = ''
 | 
						|
    start_all()
 | 
						|
 | 
						|
    with subtest("CodiMD sqlite"):
 | 
						|
        codimdSqlite.wait_for_unit("codimd.service")
 | 
						|
        codimdSqlite.wait_for_open_port(3000)
 | 
						|
        codimdSqlite.wait_until_succeeds("curl -sSf http://localhost:3000/new")
 | 
						|
 | 
						|
    with subtest("CodiMD postgres"):
 | 
						|
        codimdPostgres.wait_for_unit("postgresql.service")
 | 
						|
        codimdPostgres.wait_for_unit("codimd.service")
 | 
						|
        codimdPostgres.wait_for_open_port(5432)
 | 
						|
        codimdPostgres.wait_for_open_port(3000)
 | 
						|
        codimdPostgres.wait_until_succeeds("curl -sSf http://localhost:3000/new")
 | 
						|
  '';
 | 
						|
})
 |