Quand des changements sont disponibles sur la branche de production, il est possible de les installer et les faire fonctionner sur l'instance en utilisant la commande ./bw-dev update
. Cela fait plusieurs choses :
git pull
récupère le code à jour depuis le dépôt git. S'il y a des conflits, vous pourriez avoir besoin de lancer git pull
indépendamment et résoudre les conflits avant d'essayer le script ./bw-dev update
à nouveau.docker-compose build
reconstruit les images, ce qui permet de s'assurer que les bons paquets sont installés. Cette étape prend beaucoup de temps et est nécessaire uniquement lorsque les dépendances (incluant les paquets pip requirements.txt
) ont changées, il est donc possible de la commenter si on souhaite une mise à jour plus rapide et ne pas être gêné de la décommenter si nécessaire.docker-compose run --rm web python manage.py migrate
exécute les migrations de base de données dans Django en utilisant les images Docker nouvellement crééesdocker-compose run --rm web python manage.py collectstatic --no-input
charge tous les fichiers statiques mis à jour (comme les fichiers JavaScript et CSS)docker-compose down; docker-compose up -d
redémarrera tous les conteneurs docker et utilisera les images nouvellement construites (attention : l'instance sera inaccessible pendant son redémarrage)Les flux de chaque utilisateur·ice sont stockés dans Redis. Pour repeupler un flux, il faut utiliser la commande de gestion :
./bw-dev populate_streams
# Ou en utilisant directement docker-compose
docker-compose run --rm web python manage.py populate_streams
Si quelque chose s'est terriblement mal passé, le flux de donnée peut être supprimé.
docker-compose run --rm web python manage.py erase_streams