diff --git a/salt/profile/mailman3/config.sls b/salt/profile/mailman3/config.sls index 241fc51..9d7f2f4 100644 --- a/salt/profile/mailman3/config.sls +++ b/salt/profile/mailman3/config.sls @@ -20,6 +20,11 @@ mailman_lock_dir: - name: /var/lock/mailman/ - user: mailman +mailman_run_dir: + file.directory: + - name: /var/run/mailman/ + - user: mailman + mailman_spool_dir: file.directory: - name: /var/spool/mailman/ @@ -66,9 +71,9 @@ mailman_webui_settings_file: - require: - file: mailman_webui_dir - require_in: - - service: mailman_service + - service: mailman_webui_service - watch_in: - - module: mailman_restart + - module: mailman_webui_restart mailman_webui_urls_file: file.managed: @@ -77,9 +82,9 @@ mailman_webui_urls_file: - require: - file: mailman_webui_dir - require_in: - - service: mailman_service + - service: mailman_webui_service - watch_in: - - module: mailman_restart + - module: mailman_webui_restart mailman_webui_wsgi_file: file.managed: @@ -88,9 +93,9 @@ mailman_webui_wsgi_file: - require: - file: mailman_webui_dir - require_in: - - service: mailman_service + - service: mailman_webui_service - watch_in: - - module: mailman_restart + - module: mailman_webui_restart mailman_disable_signup: file.managed: @@ -106,9 +111,9 @@ mailman_uwsgi_conf: - require: - file: mailman_conf_dir - require_in: - - service: mailman_service + - service: mailman_webui_service - watch_in: - - module: mailman_restart + - module: mailman_webui_restart {% set logfiles = ['uwsgi', 'uwsgi-cron', 'uwsgi-error', 'uwsgi-qcluster'] %} @@ -134,9 +139,9 @@ mailman_hyperkitty_conf: - require: - file: mailman_conf_dir - require_in: - - service: mailman_service + - service: mailman_webui_service - watch_in: - - module: mailman_restart + - module: mailman_webui_restart /var/lib/mailman_webui/secret.txt: file.managed: diff --git a/salt/profile/mailman3/files/mailman.service b/salt/profile/mailman3/files/mailman.service index eba4acf..4c0cfb6 100644 --- a/salt/profile/mailman3/files/mailman.service +++ b/salt/profile/mailman3/files/mailman.service @@ -8,8 +8,9 @@ RestartSec=3 User=mailman Group=mailman -WorkingDirectory=/var/lib/mailman_webui/ -ExecStart=/usr/sbin/uwsgi --ini /etc/mailman/uwsgi.ini +WorkingDirectory=/var/lib/mailman/ +ExecStart=/usr/bin/mailman start +ExecStop=/usr/bin/mailman stop [Install] WantedBy=multi-user.target diff --git a/salt/profile/mailman3/files/mailman_webui.service b/salt/profile/mailman3/files/mailman_webui.service new file mode 100644 index 0000000..eba4acf --- /dev/null +++ b/salt/profile/mailman3/files/mailman_webui.service @@ -0,0 +1,15 @@ +[Unit] +Description=GNU Mailman Service + +[Service] +Type=simple +Restart=on-failure +RestartSec=3 + +User=mailman +Group=mailman +WorkingDirectory=/var/lib/mailman_webui/ +ExecStart=/usr/sbin/uwsgi --ini /etc/mailman/uwsgi.ini + +[Install] +WantedBy=multi-user.target diff --git a/salt/profile/mailman3/init.sls b/salt/profile/mailman3/init.sls index 4d184e5..256aa0a 100644 --- a/salt/profile/mailman3/init.sls +++ b/salt/profile/mailman3/init.sls @@ -23,3 +23,24 @@ mailman_restart: - m_name: mailman - require: - service: mailman_service + +mailman_webui_service_file: + file.managed: + - name: /etc/systemd/system/mailman_webui.service + - source: salt://profile/mailman3/files/mailman_webui.service + - require_in: + - service: mailman_webui_service + - watch_in: + - module: mailman_webui_restart + +mailman_webui_service: + service.running: + - name: mailman_webui + - enable: True + +mailman_webui_restart: + module.wait: + - name: service.restart + - m_name: mailman_webui + - require: + - service: mailman_webui_service