Mise en production - demarches-simplifiees/demarches-simplifiees.fr GitHub Wiki
Avant de mettre en prod
- Demander aux devs s’ils sont OK pour la MEP
ds-cli
Mettre en prod avec Lancer sur son poste :
./ds-cli deploy --env=prod
Puis :
- Créer une Pull request de
main
dansproduction
(ou laisserds-cli
le faire automatiquement) - Dans Github :
- Modifier le titre de la PR pour avoir un format
AAAA-MM-JJ-XX
(oùXX
est le numéro de la release du jour en question) ; - Éditer et nettoyer les notes de version en modifiant la description de la PR ;
- Une fois que les tests passent, merger la PR dans
production
.
- Modifier le titre de la PR pour avoir un format
- Signaler à
ds-cli
que la PR est mergée, et confirmer le lancement du déploiement - Créer une nouvelle release sur GitHub et y inclure les notes de version (ou laisser
ds-cli
créer la release automatiquement)
Après la mise en prod
- Si la release contient des nouveautés importantes, poster un message de succès sur
#startup-ds
une avec le lien vers la release - Faire le ménage dans le projet :
- Déplacer dans la colonne “À communiquer” les issues avec le label
a-communiquer
- Enlever de la colonne les autres issues (flèche en haut à droite de la carte, puis "Remove from project")
- Déplacer dans la colonne “À communiquer” les issues avec le label
- Si la mise en production est conséquente, envoyer une newsletter informant nos utilisateurs des mises-à-jour principales
- Traiter les issues avec les tags
a-communiquer
etsentry
, cf. Gestion des issues
Rollback
En cas d'erreur en production, il est possible de revenir rapidement à la version précédente (sans avoir à tout rebuilder).
Pour revenir à la version précédente :
- Se connecter au Gitlab interne (développement ou production) ;
- Aller dans
Project 'deploy' ▸ Pipelines
; - Sur le dernier Pipeline en cours, cliquer sur le bouton "Rollback".
Notes :
- Le rollback est très rapide (< 1mn), car on redirige juste un lien symbolique vers la version précédente (sans tout rebuilder).
- Les migrations de base de donnée ne sont pas rollbackées.
Format des notes de version
# Nouveautés
- Item 1
# Améliorations et correctifs
## Majeurs
- Item 2
## Mineurs
- Item 3
# Technique
- Item 4