one version to rules them all
Post on 27-Jun-2015
463 Views
Preview:
TRANSCRIPT
Pourquoi ?
• Continuous deployment
• Déployer
• Souvent
• Facilement
• Sans angoisse
Qu’est ce qu’on déploie ?
Peux t on passer la version X en production ?
Qu’est ce qu’une version ?• Ce qu’il faut pour garantir sa reproductibilité
Application Heroku Back office @
Orange
Plateforme Cloud
Site E-Commerce en PHP
Version ?
Package OS
CodeSocle
Monitoring / Supervision
Configuration Plateforme
Configuration Socle / OS Application compilée
Schémas SQL / LDAP
Application iPhone / Android
Description Plateforme
Dépendances compilée
Données éditoriales
Package OS
CodeSocle
Monitoring / Supervision
Configuration Plateforme
Configuration Socle / OS Application compilée
Schémas SQL / LDAP
Application iPhone /
Description Plateforme
Dépendances compilées
Données éditoriales
Repo binaire Git Repo Apt
Concrètement
DoncFichier de
version
Capistrano
Git Repos binaire
Plateforme
Contrôleur
Socle
GitGit HTTP
API
Chef soloApplicatif
Processus de « labelisation »
Jira
EquipesJenkins
Job de livraison Git
V0.148
V0.149
V0.150
Déploiement intégration
Tests automatisés
OK / KO
DéploiementTAG=1.149 ./run.rb prd1 chef apps:deploy:all
Working from /jenkins/workspace/Deploy labelized platform Launching cap command on env : prd1 Searching for tag : last_prd1 Using hash_code for releases : fcd64f1339b5bb09c8ff4bb4a7304239db6e7f4e Current tags : last_prd1 1.168.1 Using Release file : labelized_v1.yml Loading config from releases/labelized_v1.yml Using hashcode for deploy.git 3a0200955c1e2f18b2e4ca63c1a34ba0c7036dfc
Workflow
Labelisation
Tests de non régression automatisés
Décision
Intégration
Pré productionDécision
Production
Recette manuelle
Décision
Tout automatique ?
• Tout est gérable en version ?
• Toutes les équipes respectent le processus ?
• Qui décide de labéliser ?
• Quid des recettes manuelles ?
• Qui décide quel bug par en prod ?
top related