diff --git a/imageroot/events/user-domain-changed/20configure_ldap b/imageroot/events/user-domain-changed/20configure_ldap new file mode 100755 index 0000000..67ea885 --- /dev/null +++ b/imageroot/events/user-domain-changed/20configure_ldap @@ -0,0 +1,28 @@ +#!/usr/bin/env python3 + +# +# Copyright (C) 2024 Nethesis S.r.l. +# SPDX-License-Identifier: GPL-3.0-or-later +# + +import json +import sys +import os +import agent + +rdb = agent.redis_connect(use_replica=True) +event = json.load(sys.stdin) + +if not os.environ.get('MAIL_SERVER', ''): + exit(0) # ignore event if mail server is not set + +providers = agent.list_service_providers(rdb, 'imap', 'tcp', { + 'module_uuid': os.environ.get('MAIL_SERVER', '') +}) + +user_domain = providers[0]['user_domain'] + +if event.get('domain') != user_domain: + exit(0) + +agent.run_helper('systemctl', '--user', '-T', 'try-restart', 'roundcubemail.service').check_returncode()