From 64298061146a7cf224212c33f2aedfe62c97e604 Mon Sep 17 00:00:00 2001 From: Sunil Mohan Adapa Date: Sun, 14 Nov 2021 11:57:52 -0800 Subject: [PATCH] email_server: Don't get domain name during initialization This keeps the LE module working better when the domain name is changed after startup. Tests: - Untested. The module is not enabled yet. LE functionality in email server is not fully functional. Signed-off-by: Sunil Mohan Adapa Reviewed-by: James Valleroy --- plinth/modules/email_server/__init__.py | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/plinth/modules/email_server/__init__.py b/plinth/modules/email_server/__init__.py index 150d4cdb8..71c4e1ab0 100644 --- a/plinth/modules/email_server/__init__.py +++ b/plinth/modules/email_server/__init__.py @@ -82,17 +82,13 @@ class EmailServerApp(plinth.app.App): self.add(webserver) # Let's Encrypt event hook - default_domain = get_domainname() - domains = [default_domain] if default_domain else [] - letsencrypt = LetsEncrypt('letsencrypt-email-server', domains=domains, + letsencrypt = LetsEncrypt('letsencrypt-email-server', + domains=get_domains, daemons=['postfix', 'dovecot'], should_copy_certificates=False, managing_app='email_server') self.add(letsencrypt) - if not domains: - logger.warning('Could not fetch the FreedomBox domain name!') - def _add_ui_components(self): info = plinth.app.Info( app_id=self.app_id, version=version, name=self.app_name, @@ -146,6 +142,12 @@ class EmailServerApp(plinth.app.App): return results +def get_domains(): + """Return the list of domains configured.""" + default_domain = get_domainname() + return [default_domain] if default_domain else [] + + def setup(helper, old_version=None): """Installs and configures module"""