mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-16 06:45:16 +01:00
d75c296dc2
https://roundcube.net/news/2019/11/09/roundcube-1.4.0-released * `curl` cmd in the test can fail as roundcube returns a http/401 if unauthorized (and we're explicitly requesting the login form). By checking if the `persistent_login` plugin is loaded, the assertion is still valid) * Use `$argv[0]` to determine install path in the installer script. I'm not exactly sure why, but it seems as `__DIR__` now resolves symlinks which breaks the installer if roundcube is in a `buildEnv` with third-party plugins.
30 lines
872 B
Nix
30 lines
872 B
Nix
import ./make-test-python.nix ({ pkgs, ...} : {
|
|
name = "roundcube";
|
|
meta = with pkgs.stdenv.lib.maintainers; {
|
|
maintainers = [ globin ];
|
|
};
|
|
|
|
nodes = {
|
|
roundcube = { config, pkgs, ... }: {
|
|
services.roundcube = {
|
|
enable = true;
|
|
hostName = "roundcube";
|
|
database.password = "notproduction";
|
|
package = pkgs.roundcube.withPlugins (plugins: [ plugins.persistent_login ]);
|
|
plugins = [ "persistent_login" ];
|
|
};
|
|
services.nginx.virtualHosts.roundcube = {
|
|
forceSSL = false;
|
|
enableACME = false;
|
|
};
|
|
};
|
|
};
|
|
|
|
testScript = ''
|
|
roundcube.start
|
|
roundcube.wait_for_unit("postgresql.service")
|
|
roundcube.wait_for_unit("phpfpm-roundcube.service")
|
|
roundcube.wait_for_unit("nginx.service")
|
|
roundcube.succeed("curl -sSL http://roundcube/ | grep 'Keep me logged in'")
|
|
'';
|
|
})
|