RP - Déploiement en pré-production
SOPT technique,SOPT, Mai 2025. Workflow de déploiement en pré-production, de la PR validée jusqu'à l'exécution du script Deployer.
Certaines étapes de ce workflow sont temporaires et seront remplacées par un déclenchement à distance via workflow_dispatch GitHub Actions (prévu dans un prochain sprint tech).
Étape 1 - Merger la PR vers dev
Une fois la PR approuvée par les pairs, effectuer le merge dans dev via GitHub.
Étape 2 - Prévenir l'équipe sur Slack
Envoyer un message dans le salon #équipe_technico_santé pour signaler le déploiement imminent :
Déploiement de RP en PP en cours ...
Étape 3 - Mettre à jour l'environnement local
Basculer sur la branche dev, la mettre à jour et synchroniser les dépendances :
git checkout dev
git pull
composer install
symfony console cache:clearÉtape 4 - Modifier temporairement deploy.php (temporaire, uniquement pour Reconnect Pro)
Ne pas committer cette modification. Cette étape est vouée à disparaître avec l'arrivée du workflow_dispatch.
Dans deploy.php à la racine du projet, localiser la tâche deploy:restart_workers et adapter les lignes commentées pour cibler la pré-production :
- Commenter la ligne
sudo systemctl restart messenger_worker@*.service - Décommenter les 3 lignes suivantes :
sudo systemctl restart messenger_worker_async@*.servicesudo systemctl restart messenger_worker_dmp@*.servicesudo systemctl restart messenger_worker_export@*.service
Voir l'état attendu du bloc dans deploy.php
task('deploy:restart_workers', function () {
// run('sudo systemctl restart messenger_worker@*.service');
run('sudo systemctl restart messenger_worker_async@*.service');
run('sudo systemctl restart messenger_worker_dmp@*.service');
run('sudo systemctl restart messenger_worker_export@*.service');
});
Étape 5 - Lancer le déploiement
Exécuter le script de déploiement via :
make deploy-preprodÉtape 6 - Valider le déploiement et rétablir deploy.php
Poster un message de confirmation dans le salon #équipe_technico_santé :
Déploiement de RP en PP
Puis rétablir deploy.php dans son état d'origine :
- Décommenter la ligne
sudo systemctl restart messenger_worker@*.service - Commenter les 3 lignes pré-production :
sudo systemctl restart messenger_worker_async@*.servicesudo systemctl restart messenger_worker_dmp@*.servicesudo systemctl restart messenger_worker_export@*.service
Ne pas committer cette modification. Le fichier doit rester dans son état production pour tout déploiement ultérieur.
Voir l'état attendu du bloc rétabli
task('deploy:restart_workers', function () {
run('sudo systemctl restart messenger_worker@*.service');
// run('sudo systemctl restart messenger_worker_async@*.service');
// run('sudo systemctl restart messenger_worker_dmp@*.service');
// run('sudo systemctl restart messenger_worker_export@*.service');
});
