Table des matières
Mise à jour de la version chapril mobilizon
Pour fusionner les avancées de l'upstream avec la branche chapril:
Plan d'action général
- Communiquer le début de migration
- Fusionner la nouvelle version dans notre branche “chapril”
- Compiler les assets du frontend et les envoyer sur la VM biliz
- prendre les vernières modifications et migrer la base de données
- relancer le service mobilizon
- Vérfier que tout est bon
- Communiquer la fin de migration
Voici le détail des opérations:
Localement
disons dans le dossier /var/www/html/mobilizon - fusionner le tag le plus récent sur la branche chapril
- pour voir la liste des tags: git tag
- git merge 1.0.6 (par exemple, mais il faut utiliser la version la plus récente)
- résoudre les éventuels conflits
- vérifier que tout fonctionne bien - en effectuant les migrations de base données mix ecto.migrate - en lançant localement le serveur mix phx.server et en naviguant sur http://localhost:4000 - créer un tag avec le préfixe chapril et le numéro de tag, par exemple git tag chapril-1.0.6 - envoyer vers la forge chapril notre nouveau tag
- git push –tags
- Se positionner sur la branche master: git checkout master
- Prendre les avancées du dépot upstream, tags inclus:
- Si vous n'avez pas ajouté le dépot upstream, ajoutez le en https ou en ssh selon votre préférence
- git remote add upstream https://framagit.org/framasoft/mobilizon.git
- git remote add upstream git@framagit.org:framasoft/mobilizon.git
- git pull –all
- Recompiler les assets du frontend et les mettre dans le dossier live/priv/static
- Syncroniser les assets compilés avec la VM biliz (nécessite d'avoir rsync installé sur la VM)
Sur la VM biliz
- se connecter à la VM biliz, aller dans le dossier “live”,
se mettre en tant qu'utilisateur mobilizon et récupérer les dernières modifications de la branche chapril. (attention à avoir comme dépot d'origine le dépot de la forge april, et non l'upstream pour bien avoir votre branche personnelle) Ce qui nous amène sur le tag le plus récent:
- Stopper le service mobilizon: service mobilizon stop
Migrer le backend de mobilizon
(on en a pas forcément besoin à tous les coups, si dans la partie locale vous aviez remarqué que seule la partie frontend changeait, vous pouvez relancer le service après avoir uniquement mis à jour les assets de priv/static et faire service mobilizon restart). Ne pas oublier de spécifier l'environnement de prod.
su -H mobilizon MIX_ENV=prod mix deps.get su -H mobilizon MIX_ENV=prod mix ecto.migrate
- Remettre l'utilisateur mobilizon comme owner des fichiers
- relancer le service mobilizon: service mobilizon start ce qui doit prendre environ 5 secondes sur Biliz.
Vérifications
- vérifier les erreur dans le journal du service :
journalctl -fu mobilizon -n1000
- si c'est bon, interrompre la lecture du journal d'erreurs: Ctrl + C.
- vérifier le frontend sur https://mobilizon.chapril.org , nécessite un vidage de votre cache navigateur (ctrl + R)
- Communiquer la fin de mise à jour sur les canaux qui vont bien.