summaryrefslogtreecommitdiffstats
path: root/nixos/tests/web-apps/writefreely.nix
blob: 86fb284f1dde26a3707d7afa4c7bde6d546b3b7a (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
40
41
42
43
44
{ runTest }:

let
  writefreelyTest =
    { name, type }:
    runTest {
      name = "writefreely-${name}";

      nodes.machine =
        { config, pkgs, ... }:
        {
          services.writefreely = {
            enable = true;
            host = "localhost:3000";
            admin.name = "nixos";

            database = {
              inherit type;
              createLocally = type == "mysql";
              passwordFile = pkgs.writeText "db-pass" "pass";
            };

            settings.server.port = 3000;
          };
        };

      testScript = ''
        start_all()
        machine.wait_for_unit("writefreely.service")
        machine.wait_for_open_port(3000)
        machine.succeed("curl --fail http://localhost:3000")
      '';
    };
in
{
  sqlite = writefreelyTest {
    name = "sqlite";
    type = "sqlite3";
  };
  mysql = writefreelyTest {
    name = "mysql";
    type = "mysql";
  };
}