4. Release ?
Patch Bugfix Hotfix
Nouvelle version en production
(compilation, QA, préprod, déploiement)
5. Quotidienne ?
•
Lundi •
Vendredi
•
Mardi •
Veilles de
•
Mercredi jours fériés
•
Jeudi
6. Processus d'une release
Constructio
Compilation
n
Déploiement
Tests/ QA Préprod
Déploiement
Production
Monitoring
7. Construction d'une release
Objectif :
Ne pas attendre qu'une feature soit
débugguée pour releaser le reste
•
Pas de phase de stabilisation de la release
•
Assemblage de « bouts de code »
•
Désassemblage facile
8. Git, un scm branché !
•
Un développement, une branche, un ticket
•
Plusieurs branches de release :
•
Stage-XX
•
Preprod
•
Prod
•
Master
•
Couplage à un gestionnaire de tickets
9. Compilation
●
Récupération du code + dépendances
●
I18n
●
Compilation coffee + stylus
●
Minification des assets
●
Gestion de l'invalidation de cache des assets
AUTOMATISATION
10. Si ça se lance dans un shell, c'est bon !
•
Fabric
•
Makefile
•
Script shell
•
Ruby
•
PHP
•
Python
•
Javascript
11. Assurance qualité ?
C'est pas le farwest ici !
"Les devs c'est tous des mythos !"
(une chef de projet)
•
Stage : validation fonctionnelle
•
Préprod : Prod à blanc
12. Rollback !!!!
( Ce n'est pas sale ! )
•
Intérêt du monitoring
•
Tâche très rapide
•
La branche Master
13. Devops ?
•
La release est la zone naturelle de recouvrement
•
Release par les devs très bénéfique
•
Compréhension entre dev et ops sur l'exploitation
•
Communication accrue