diff options
author | ajs124 <git@ajs124.de> | 2020-05-12 18:32:39 +0200 |
---|---|---|
committer | ajs124 <git@ajs124.de> | 2020-05-12 18:49:43 +0200 |
commit | e001f5760e4b342e20ba4d91f54a1745f2d4cc53 (patch) | |
tree | 926fe0176a48cfa9e992233a66b17c1c21fc9f8c /nixos/tests/sogo.nix | |
parent | 511b578c9312a36e70c33c46dc6d1f72d04ca842 (diff) | |
download | nixpkgs-e001f5760e4b342e20ba4d91f54a1745f2d4cc53.tar nixpkgs-e001f5760e4b342e20ba4d91f54a1745f2d4cc53.tar.gz nixpkgs-e001f5760e4b342e20ba4d91f54a1745f2d4cc53.tar.bz2 nixpkgs-e001f5760e4b342e20ba4d91f54a1745f2d4cc53.tar.lz nixpkgs-e001f5760e4b342e20ba4d91f54a1745f2d4cc53.tar.xz nixpkgs-e001f5760e4b342e20ba4d91f54a1745f2d4cc53.tar.zst nixpkgs-e001f5760e4b342e20ba4d91f54a1745f2d4cc53.zip |
nixosTests.sogo: init test
Diffstat (limited to 'nixos/tests/sogo.nix')
-rw-r--r-- | nixos/tests/sogo.nix | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/nixos/tests/sogo.nix b/nixos/tests/sogo.nix new file mode 100644 index 00000000000..016331a9eed --- /dev/null +++ b/nixos/tests/sogo.nix @@ -0,0 +1,58 @@ +import ./make-test-python.nix ({ pkgs, ... }: { + name = "sogo"; + meta = with pkgs.stdenv.lib.maintainers; { + maintainers = [ ajs124 das_j ]; + }; + + nodes = { + sogo = { config, pkgs, ... }: { + services.nginx.enable = true; + + services.mysql = { + enable = true; + package = pkgs.mysql; + ensureDatabases = [ "sogo" ]; + ensureUsers = [{ + name = "sogo"; + ensurePermissions = { + "sogo.*" = "ALL PRIVILEGES"; + }; + }]; + }; + + services.sogo = { + enable = true; + timezone = "Europe/Berlin"; + extraConfig = '' + WOWorkersCount = 1; + + SOGoUserSources = ( + { + type = sql; + userPasswordAlgorithm = md5; + viewURL = "mysql://sogo@%2Frun%2Fmysqld%2Fmysqld.sock/sogo/sogo_users"; + canAuthenticate = YES; + id = users; + } + ); + + SOGoProfileURL = "mysql://sogo@%2Frun%2Fmysqld%2Fmysqld.sock/sogo/sogo_user_profile"; + OCSFolderInfoURL = "mysql://sogo@%2Frun%2Fmysqld%2Fmysqld.sock/sogo/sogo_folder_info"; + OCSSessionsFolderURL = "mysql://sogo@%2Frun%2Fmysqld%2Fmysqld.sock/sogo/sogo_sessions_folder"; + OCSEMailAlarmsFolderURL = "mysql://sogo@%2Frun%2Fmysqld%2Fmysqld.sock/sogo/sogo_alarms_folder"; + OCSStoreURL = "mysql://sogo@%2Frun%2Fmysqld%2Fmysqld.sock/sogo/sogo_store"; + OCSAclURL = "mysql://sogo@%2Frun%2Fmysqld%2Fmysqld.sock/sogo/sogo_acl"; + OCSCacheFolderURL = "mysql://sogo@%2Frun%2Fmysqld%2Fmysqld.sock/sogo/sogo_cache_folder"; + ''; + }; + }; + }; + + testScript = '' + start_all() + sogo.wait_for_unit("multi-user.target") + sogo.wait_for_open_port(20000) + sogo.wait_for_open_port(80) + sogo.succeed("curl -sSfL http://sogo/SOGo") + ''; +}) |