Merge branch 'Kerl/cron' into 'master'

Ajoute un cron pour les mails de rappel

Cette tâche cron sert à automatiser l'envoi des mails de rappel. Plus de détails dans `provisioning/cron.md`

Ce n'est pas nécessaire sur la VM vagrant pour développer mais il est possible de charger tout de même en tapant : 

    crontab provisioning/cron.dev

Sur la machine en prod, il faudra adapter ce fichier.



See merge request !67
This commit is contained in:
Martin Pepin 2016-07-30 12:15:22 +02:00
commit 237af58fbb
4 changed files with 29 additions and 0 deletions

1
.gitignore vendored
View file

@ -8,3 +8,4 @@ venv/
.vagrant .vagrant
/src /src
media/ media/
*.log

View file

@ -46,3 +46,6 @@ sudo -H -u vagrant pip install --user -r requirements.txt -r requirements-devel.
# Préparation de Django # Préparation de Django
sudo -H -u vagrant DJANGO_SETTINGS_MODULE='cof.settings_dev' DBUSER=$DBUSER DBNAME=$DBNAME DBPASSWD=$DBPASSWD sh provisioning/prepare_django.sh sudo -H -u vagrant DJANGO_SETTINGS_MODULE='cof.settings_dev' DBUSER=$DBUSER DBNAME=$DBNAME DBPASSWD=$DBPASSWD sh provisioning/prepare_django.sh
# Installation du cron pour les mails de rappels
sudo -H -u vagrant crontab provisioning/cron.dev

9
provisioning/cron.dev Normal file
View file

@ -0,0 +1,9 @@
# 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 ; python /vagrant/manage.py sendrappels >> /vagrant/rappels.log 2>&1

16
provisioning/cron.md Normal file
View file

@ -0,0 +1,16 @@
# Tâches cron à mettre sur la VM en production
---
## Envoi des mails de rappel
Il faut trigger de temps en temps la commande `sendrappels` de GestioCOF qui
envoie les mails de rappels des spectacles à venir (sauf s'ils ont déjà été
envoyés).
- Un fois toutes les 12 heures me semble bien.
- Penser à utiliser le bon executable python (virtualenvs) et les bonnes
variables d'environnement si besoin.
- Garde les logs peut être une bonne idée.
Exemple : voir le fichier `provisioning/cron.dev`.