diff options
author | Aaron Andersen <aaron@fosslib.net> | 2019-02-25 21:17:50 -0500 |
---|---|---|
committer | Aaron Andersen <aaron@fosslib.net> | 2019-03-27 21:21:17 -0400 |
commit | 7f3d0aee1c4f41266a9ff46c3561b805ded707e4 (patch) | |
tree | 469dcb00e09817c04a7f6338f7cc614bd9ce49b3 | |
parent | 44a798e36f06f0bfa21d9f666f4ac46eff385b6d (diff) | |
download | nixpkgs-7f3d0aee1c4f41266a9ff46c3561b805ded707e4.tar nixpkgs-7f3d0aee1c4f41266a9ff46c3561b805ded707e4.tar.gz nixpkgs-7f3d0aee1c4f41266a9ff46c3561b805ded707e4.tar.bz2 nixpkgs-7f3d0aee1c4f41266a9ff46c3561b805ded707e4.tar.lz nixpkgs-7f3d0aee1c4f41266a9ff46c3561b805ded707e4.tar.xz nixpkgs-7f3d0aee1c4f41266a9ff46c3561b805ded707e4.tar.zst nixpkgs-7f3d0aee1c4f41266a9ff46c3561b805ded707e4.zip |
nixos/redmine: test configuration with postgresql as well as mysql
-rw-r--r-- | nixos/tests/redmine.nix | 53 |
1 files changed, 48 insertions, 5 deletions
diff --git a/nixos/tests/redmine.nix b/nixos/tests/redmine.nix index ea72a0121d1..cbdb5c8d295 100644 --- a/nixos/tests/redmine.nix +++ b/nixos/tests/redmine.nix @@ -7,7 +7,7 @@ with import ../lib/testing.nix { inherit system pkgs; }; with pkgs.lib; let - redmineTest = package: makeTest { + mysqlTest = package: makeTest { machine = { config, pkgs, ... }: { services.mysql.enable = true; @@ -21,6 +21,7 @@ let services.redmine.enable = true; services.redmine.package = package; + services.redmine.database.type = "mysql2"; services.redmine.database.socket = "/run/mysqld/mysqld.sock"; services.redmine.plugins = { redmine_env_auth = pkgs.fetchurl { @@ -38,7 +39,44 @@ let testScript = '' startAll; + $machine->waitForUnit('redmine.service'); + $machine->waitForOpenPort('3000'); + $machine->succeed("curl --fail http://localhost:3000/"); + ''; + }; + + pgsqlTest = package: makeTest { + machine = + { config, pkgs, ... }: + { services.postgresql.enable = true; + services.postgresql.ensureDatabases = [ "redmine" ]; + services.postgresql.ensureUsers = [ + { name = "redmine"; + ensurePermissions = { "DATABASE redmine" = "ALL PRIVILEGES"; }; + } + ]; + + services.redmine.enable = true; + services.redmine.package = package; + services.redmine.database.type = "postgresql"; + services.redmine.database.host = ""; + services.redmine.database.port = 5432; + services.redmine.plugins = { + redmine_env_auth = pkgs.fetchurl { + url = https://github.com/Intera/redmine_env_auth/archive/0.7.zip; + sha256 = "1xb8lyarc7mpi86yflnlgyllh9hfwb9z304f19dx409gqpia99sc"; + }; + }; + 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/"); @@ -46,13 +84,18 @@ let }; in { - redmine_3 = redmineTest pkgs.redmine // { - name = "redmine_3"; + v3-mysql = mysqlTest pkgs.redmine // { + name = "v3-mysql"; + meta.maintainers = [ maintainers.aanderse ]; + }; + + v4-mysql = mysqlTest pkgs.redmine_4 // { + name = "v4-mysql"; meta.maintainers = [ maintainers.aanderse ]; }; - redmine_4 = redmineTest pkgs.redmine_4 // { - name = "redmine_4"; + v4-pgsql = pgsqlTest pkgs.redmine_4 // { + name = "v4-pgsql"; meta.maintainers = [ maintainers.aanderse ]; }; } |