From 7f58b5fa009d10e145c7a1b0ed762145564a78b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20P=C3=A9pin?= Date: Fri, 4 Dec 2020 16:58:25 +0100 Subject: [PATCH] =?UTF-8?q?Vagrant:=20toutes=20les=20units=20systemd=20son?= =?UTF-8?q?t=20l=C3=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- provisioning/bootstrap.sh | 23 +++++++++++-------- provisioning/cron.dev | 10 -------- .../{nginx.conf => nginx/gestiocof.conf} | 0 provisioning/{ => systemd}/daphne.service | 2 +- provisioning/systemd/rappels.service | 8 +++++++ provisioning/systemd/rappels.timer | 9 ++++++++ provisioning/systemd/reventes.service | 8 +++++++ provisioning/systemd/reventes.timer | 9 ++++++++ provisioning/{ => systemd}/worker.service | 0 9 files changed, 49 insertions(+), 20 deletions(-) delete mode 100644 provisioning/cron.dev rename provisioning/{nginx.conf => nginx/gestiocof.conf} (100%) rename provisioning/{ => systemd}/daphne.service (91%) create mode 100644 provisioning/systemd/rappels.service create mode 100644 provisioning/systemd/rappels.timer create mode 100644 provisioning/systemd/reventes.service create mode 100644 provisioning/systemd/reventes.timer rename provisioning/{ => systemd}/worker.service (100%) diff --git a/provisioning/bootstrap.sh b/provisioning/bootstrap.sh index 5e2e4c44..9b2bf9f2 100644 --- a/provisioning/bootstrap.sh +++ b/provisioning/bootstrap.sh @@ -57,7 +57,7 @@ mkdir -p /srv/gestiocof/static chown -R vagrant:www-data /srv/gestiocof # Nginx -ln -s -f /vagrant/provisioning/nginx.conf /etc/nginx/sites-enabled/gestiocof.conf +ln -s -f /vagrant/provisioning/nginx/gestiocof.conf /etc/nginx/sites-enabled/gestiocof.conf rm -f /etc/nginx/sites-enabled/default systemctl reload nginx @@ -78,16 +78,21 @@ sudo -H -u vagrant \ --noinput \ --settings "$DJANGO_SETTINGS_MODULE" -# Installation du cron pour les mails de rappels -# TODO: FIXME -# sudo -H -u vagrant crontab provisioning/cron.dev - -# Daphne + runworker -# TODO: explain -ln -sf /vagrant/provisioning/daphne.service /etc/systemd/system/daphne.service -ln -sf /vagrant/provisioning/worker.service /etc/systemd/system/worker.service +# Quelques units systemd: +# - Daphne fait tourner le serveur asgi +# - worker = https://channels.readthedocs.io/en/stable/topics/worker.html +# - Mails de rappels du BdA +# - Mails de revente du BdA +ln -sf /vagrant/provisioning/systemd/daphne.service /etc/systemd/system/daphne.service +ln -sf /vagrant/provisioning/systemd/worker.service /etc/systemd/system/worker.service +ln -sf /vagrant/provisioning/systemd/reventes.service /etc/systemd/system/reventes.service +ln -sf /vagrant/provisioning/systemd/rappels.service /etc/systemd/system/rappels.service +ln -sf /vagrant/provisioning/systemd/reventes.timer /etc/systemd/system/reventes.timer +ln -sf /vagrant/provisioning/systemd/rappels.timer /etc/systemd/system/rappels.timer systemctl enable --now daphne.service systemctl enable --now worker.service +systemctl enable rappels.timer +systemctl enable reventes.timer # Configure le bash de l'utilisateur 'vagrant' pour utiliser le bon fichier de # settings et et bon virtualenv. diff --git a/provisioning/cron.dev b/provisioning/cron.dev deleted file mode 100644 index 896b5125..00000000 --- a/provisioning/cron.dev +++ /dev/null @@ -1,10 +0,0 @@ -# On utilise la version de développement de GestioCOF -DJANGO_SETTINGS_MODULE='cof.settings.dev' - -# Identifiants MySQL -DBUSER="cof_gestion" -DBNAME="cof_gestion" -DBPASSWD="4KZt3nGPLVeWSvtBZPSM3fSzXpzEU4" - -19 */12 * * * date >> /vagrant/rappels.log ; /ubuntu/home/venv/bin/python /vagrant/manage.py sendrappels >> /vagrant/rappels.log 2>&1 -*/5 * * * * /ubuntu/home/venv/bin/python /vagrant/manage.py manage_revente >> /vagrant/reventes.log 2>&1 diff --git a/provisioning/nginx.conf b/provisioning/nginx/gestiocof.conf similarity index 100% rename from provisioning/nginx.conf rename to provisioning/nginx/gestiocof.conf diff --git a/provisioning/daphne.service b/provisioning/systemd/daphne.service similarity index 91% rename from provisioning/daphne.service rename to provisioning/systemd/daphne.service index 451ac37c..a9c30008 100644 --- a/provisioning/daphne.service +++ b/provisioning/systemd/daphne.service @@ -1,4 +1,4 @@ -Description="GestioCOF" +Description="GestioCOF - Daphne" After=syslog.target After=network.target diff --git a/provisioning/systemd/rappels.service b/provisioning/systemd/rappels.service new file mode 100644 index 00000000..2d407d53 --- /dev/null +++ b/provisioning/systemd/rappels.service @@ -0,0 +1,8 @@ +[Unit] +Description=Envoi des mails de rappel des spectales BdA + +[Service] +Type=oneshot +User=vagrant +Environment="DJANGO_SETTINGS_MODULE=cof.settings.dev" +ExecStart=/home/vagrant/venv/bin/python /vagrant/manage.py sendrappels diff --git a/provisioning/systemd/rappels.timer b/provisioning/systemd/rappels.timer new file mode 100644 index 00000000..f05c54e0 --- /dev/null +++ b/provisioning/systemd/rappels.timer @@ -0,0 +1,9 @@ +[Unit] +Description=Envoi des mails de rappel des spectales BdA + +[Timer] +OnBootSec=10min +OnUnitActiveSec=3h + +[Install] +WantedBy=timers.target diff --git a/provisioning/systemd/reventes.service b/provisioning/systemd/reventes.service new file mode 100644 index 00000000..bd1992f8 --- /dev/null +++ b/provisioning/systemd/reventes.service @@ -0,0 +1,8 @@ +[Unit] +Description=Envoi des mails de BdA-Revente + +[Service] +Type=oneshot +User=vagrant +Environment="DJANGO_SETTINGS_MODULE=cof.settings.dev" +ExecStart=/home/vagrant/venv/bin/python /vagrant/manage.py manage_reventes diff --git a/provisioning/systemd/reventes.timer b/provisioning/systemd/reventes.timer new file mode 100644 index 00000000..2ccaf7bf --- /dev/null +++ b/provisioning/systemd/reventes.timer @@ -0,0 +1,9 @@ +[Unit] +Description=Envoi des mails de BdA-Revente + +[Timer] +OnBootSec=15min +OnUnitActiveSec=15min + +[Install] +WantedBy=timers.target diff --git a/provisioning/worker.service b/provisioning/systemd/worker.service similarity index 100% rename from provisioning/worker.service rename to provisioning/systemd/worker.service