summary refs log tree commit diff
path: root/nixos/tests/redmine.nix
blob: 330f72854cacf2e0ca2c1b7442b69346424b77e6 (plain) (blame)
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
import ./make-test.nix ({ pkgs, lib, ... }:
{
  name = "redmine";
  meta.maintainers = [ lib.maintainers.aanderse ];

  machine =
    { config, pkgs, ... }:
    { services.mysql.enable = true;
      services.mysql.package = pkgs.mariadb;
      services.mysql.ensureDatabases = [ "redmine" ];
      services.mysql.ensureUsers = [
        { name = "redmine";
          ensurePermissions = { "redmine.*" = "ALL PRIVILEGES"; };
        }
      ];

      services.redmine.enable = true;
      services.redmine.database.socket = "/run/mysqld/mysqld.sock";
      services.redmine.plugins = {
        redmine_env_auth = pkgs.fetchurl {
          url = https://github.com/Intera/redmine_env_auth/archive/0.6.zip;
          sha256 = "0yyr1yjd8gvvh832wdc8m3xfnhhxzk2pk3gm2psg5w9jdvd6skak";
        };
      };
      services.redmine.themes = {
        dkuk-redmine_alex_skin = pkgs.fetchurl {
          url = https://bitbucket.org/dkuk/redmine_alex_skin/get/1842ef675ef3.zip;
          sha256 = "0hrin9lzyi50k4w2bd2b30vrf1i4fi1c0gyas5801wn8i7kpm9yl";
        };
      };
    };

  testScript = ''
    startAll;

    $machine->waitForUnit('redmine.service');
    $machine->waitForOpenPort('3000');
    $machine->succeed("curl --fail http://localhost:3000/");
  '';
})