One version to rules
them all
bertrand.paquet@gmail.com
Pourquoi ?
•

Continuous deployment

•

Déployer
•

Qu’est ce qu’on
déploie ?

Souvent

•

Facilement

•

Sans angoisse

P...
Qu’est ce qu’une version ?
•

Ce qu’il faut pour garantir sa reproductibilité

Application
Heroku

Site ECommerce en PHP

...
Version ?
Socle

Code

Configuration Socle / OS

Application compilée

Monitoring / Supervision

Dépendances compilée

Confi...
Repo binaire

Git

Repo Apt

Socle

Code

Configuration Socle / OS

Application compilée

Monitoring / Supervision

Dépenda...
Concrètement
Donc
Fichier de
version

Repos
binaire

Git

Git

HTTP

Git
Socle
Capistrano

Applicatif

API

Chef solo

Plateforme

Cont...
Processus de
« labelisation »
Equipes

Jira

Jenkins

Git

Job de livraison

V0.148
V0.149
V0.150
Déploiement intégration
...
Déploiement
TAG=1.149 ./run.rb prd1 chef apps:deploy:all
Working from /jenkins/workspace/Deploy labelized platform
Launchi...
Workflow
Décision
Labelisation
Intégration

Décision

Tests de non régression
automatisés

Pré production

Décision

Recett...
Tout automatique ?
•

Tout est gérable en version ?

•

Toutes les équipes respectent le processus ?

•

Qui décide de lab...
Prochain SlideShare
Chargement dans…5
×

One version to rules them all

837 vues

Publié le

Publié dans : Technologie
0 commentaire
1 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
837
Sur SlideShare
0
Issues des intégrations
0
Intégrations
11
Actions
Partages
0
Téléchargements
7
Commentaires
0
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

One version to rules them all

  1. 1. One version to rules them all bertrand.paquet@gmail.com
  2. 2. Pourquoi ? • Continuous deployment • Déployer • Qu’est ce qu’on déploie ? Souvent • Facilement • Sans angoisse Peux t on passer la version X en production ?
  3. 3. Qu’est ce qu’une version ? • Ce qu’il faut pour garantir sa reproductibilité Application Heroku Site ECommerce en PHP Back office @ Orange Plateforme Cloud
  4. 4. Version ? Socle Code Configuration Socle / OS Application compilée Monitoring / Supervision Dépendances compilée Configuration Plateforme Schémas SQL / LDAP Description Plateforme Données éditoriales Package OS Application iPhone / Android
  5. 5. Repo binaire Git Repo Apt Socle Code Configuration Socle / OS Application compilée Monitoring / Supervision Dépendances compilées Configuration Plateforme Schémas SQL / LDAP Description Plateforme Données éditoriales Package OS Application iPhone /
  6. 6. Concrètement
  7. 7. Donc Fichier de version Repos binaire Git Git HTTP Git Socle Capistrano Applicatif API Chef solo Plateforme Contrôleur
  8. 8. Processus de « labelisation » Equipes Jira Jenkins Git Job de livraison V0.148 V0.149 V0.150 Déploiement intégration Tests automatisés OK / KO
  9. 9. Déploiement TAG=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
  10. 10. Workflow Décision Labelisation Intégration Décision Tests de non régression automatisés Pré production Décision Recette manuelle Production
  11. 11. 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 ?

×