@@ -40,4 +40,5 @@ server {
|
|||||||
uwsgi_param UWSGI_SCRIPT instance.wsgi:application;
|
uwsgi_param UWSGI_SCRIPT instance.wsgi:application;
|
||||||
uwsgi_pass modoboa;
|
uwsgi_pass modoboa;
|
||||||
}
|
}
|
||||||
|
%{extra_config}
|
||||||
}
|
}
|
||||||
@@ -29,12 +29,12 @@ class Nginx(base.Installer):
|
|||||||
})
|
})
|
||||||
return context
|
return context
|
||||||
|
|
||||||
def _setup_config(self, app, hostname=None):
|
def _setup_config(self, app, hostname=None, extra_config=None):
|
||||||
"""Custom app configuration."""
|
"""Custom app configuration."""
|
||||||
if hostname is None:
|
if hostname is None:
|
||||||
hostname = self.config.get("general", "hostname")
|
hostname = self.config.get("general", "hostname")
|
||||||
context = self.get_template_context(app)
|
context = self.get_template_context(app)
|
||||||
context.update({"hostname": hostname})
|
context.update({"hostname": hostname, "extra_config": extra_config})
|
||||||
src = self.get_file_path("{}.conf.tpl".format(app))
|
src = self.get_file_path("{}.conf.tpl".format(app))
|
||||||
if package.backend.FORMAT == "deb":
|
if package.backend.FORMAT == "deb":
|
||||||
dst = os.path.join(
|
dst = os.path.join(
|
||||||
@@ -57,11 +57,24 @@ class Nginx(base.Installer):
|
|||||||
|
|
||||||
def post_run(self):
|
def post_run(self):
|
||||||
"""Additionnal tasks."""
|
"""Additionnal tasks."""
|
||||||
self._setup_config("modoboa")
|
extra_modoboa_config = ""
|
||||||
if self.config.getboolean("automx", "enabled"):
|
if self.config.getboolean("automx", "enabled"):
|
||||||
hostname = "autoconfig.{}".format(
|
hostname = "autoconfig.{}".format(
|
||||||
self.config.get("general", "domain"))
|
self.config.get("general", "domain"))
|
||||||
self._setup_config("automx", hostname)
|
self._setup_config("automx", hostname)
|
||||||
|
extra_modoboa_config = """
|
||||||
|
location /autodiscover/autodiscover.xml {
|
||||||
|
include uwsgi_params;
|
||||||
|
uwsgi_pass automx;
|
||||||
|
}
|
||||||
|
location /mobileconfig {
|
||||||
|
include uwsgi_params;
|
||||||
|
uwsgi_pass automx;
|
||||||
|
}
|
||||||
|
"""
|
||||||
|
self._setup_config(
|
||||||
|
"modoboa", extra_config=extra_modoboa_config)
|
||||||
|
|
||||||
if not os.path.exists("{}/dhparam.pem".format(self.config_dir)):
|
if not os.path.exists("{}/dhparam.pem".format(self.config_dir)):
|
||||||
cmd = "openssl dhparam -dsaparam -out dhparam.pem 4096"
|
cmd = "openssl dhparam -dsaparam -out dhparam.pem 4096"
|
||||||
utils.exec_cmd(cmd, cwd=self.config_dir)
|
utils.exec_cmd(cmd, cwd=self.config_dir)
|
||||||
|
|||||||
Reference in New Issue
Block a user