dataset/seed/mailman/templates/postorius.service

31 lines
1.6 KiB
Desktop File

[Unit]
Description=Postorius WSGI Service
After=risotto.target
[Service]
Type=notify
User=postorius
Group=postorius
WorkingDirectory=/usr/share/postorius
RuntimeDirectory=postorius
StateDirectory=postorius
PrivateTmp=yes
PrivateUsers=yes
ProtectHostname=yes
ProtectKernelModules=yes
ProtectKernelLogs=yes
LockPersonality=yes
RestrictRealtime=yes
PrivateMounts=yes
Environment="MAILMAN_WEB_CONFIG=/usr/share/postorius/m_postorius/settings.py"
ExecStartPre=/usr/share/postorius/manage.py migrate
ExecStartPre=/usr/share/postorius/manage.py shell -c 'from django.contrib.sites.models import Site; site=Site.objects.first(); site.name="{{ general.revprox.revprox_client.revprox_client_external_domainnames[0] }}"; site.domain="{{ general.revprox.revprox_client.revprox_client_external_domainnames[0] }}"; site.save()'
ExecStartPre=/usr/share/postorius/manage.py shell -c 'from allauth.socialaccount.models import SocialApp; SocialApp.objects.create() if SocialApp.objects.count() == 0 else print("social app already exists"); a=SocialApp.objects.first(); a.name = "{{ general.network.interface_0.domain_name_eth0 }}"; a.provider = "risotto"; a.client_id = "{{ general.oauth2_client.oauth2_client_id }}"; a.secret = "{{ general.oauth2_client.oauth2_client_secret }}"; a.sites.set([1]); a.save()'
ExecStartPre=-/usr/share/postorius/manage.py createsuperuser --username "{{ general.mailman.mailman_mail_owner }}" --email "{{ general.mailman.mailman_mail_owner }}" --noinput
ExecStart=/usr/bin/gunicorn --config /etc/postorius/gunicorn_config.py m_postorius.wsgi
ExecReload=/bin/kill -s HUP $MAINPID
KillMode=mixed
TimeoutStopSec=5
[Install]
WantedBy=multi-user.target