summaryrefslogtreecommitdiffstats
path: root/nixos/tests/sourcehut.nix
blob: 6492250bd57c017d4688efea2ee18c52b38250a0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
import ./make-test-python.nix ({ pkgs, ... }:

{
  name = "sourcehut";

  meta.maintainers = [ pkgs.lib.maintainers.tomberek ];

  machine = { config, pkgs, ... }: {
    virtualisation.memorySize = 2048;
    networking.firewall.allowedTCPPorts = [ 80 ];

    services.sourcehut = {
      enable = true;
      services = [ "meta" ];
      redis.enable = true;
      postgresql.enable = true;
      meta.enable = true;
      settings."sr.ht" = {
        global-domain = "sourcehut";
        service-key = pkgs.writeText "service-key" "8b327279b77e32a3620e2fc9aabce491cc46e7d821fd6713b2a2e650ce114d01";
        network-key = pkgs.writeText "network-key" "cEEmc30BRBGkgQZcHFksiG7hjc6_dK1XR2Oo5Jb9_nQ=";
      };
      settings.webhooks.private-key = pkgs.writeText "webhook-key" "Ra3IjxgFiwG9jxgp4WALQIZw/BMYt30xWiOsqD0J7EA=";
    };
    services.postgresql = {
      enable = true;
      enableTCPIP = false;
      settings.unix_socket_permissions = "0770";
    };
  };

  testScript = ''
    start_all()
    machine.wait_for_unit("multi-user.target")
    machine.wait_for_unit("metasrht.service")
    machine.wait_for_open_port(5000)
    machine.succeed("curl -sL http://localhost:5000 | grep meta.sourcehut")
  '';
})