Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
L'intégration continue de A à Z sur une applica...
Search
Marek Kalnik
November 30, 2012
Programming
0
700
L'intégration continue de A à Z sur une application PHP existante
Les slides de mon talk que j'ai donné à Nantes pour PHPTour 2012
Marek Kalnik
November 30, 2012
Tweet
Share
More Decks by Marek Kalnik
See All by Marek Kalnik
Ma liste subjective des 10 développeurs à connaitre
marekkalnik
0
71
Le management LEAN
marekkalnik
0
74
Versioning mobile apps and apis
marekkalnik
0
88
Comment Ionic vous aide
marekkalnik
0
140
Pourquoi choisir Ionic ?
marekkalnik
0
260
Cordova vs. Steroids
marekkalnik
0
140
Arrêtons de parler de code de qualité, ce qu'il faut c'est du code agile !
marekkalnik
2
580
Code Agile - comment redéfinir la qualité
marekkalnik
2
180
Behat - retour d'expérience
marekkalnik
1
400
Other Decks in Programming
See All in Programming
CSC305 Summer Lecture 12
javiergs
PRO
0
130
AI時代のドメイン駆動設計-DDD実践におけるAI活用のあり方 / ddd-in-ai-era
minodriven
24
9.2k
サーバーサイドのビルド時間87倍高速化
plaidtech
PRO
0
660
Vue・React マルチプロダクト開発を支える Vite
andpad
0
100
SOCI Index Manifest v2が出たので調べてみた / Introduction to SOCI Index Manifest v2
tkikuc
1
110
tool ディレクティブを導入してみた感想
sgash708
1
150
[FEConf 2025] 모노레포 절망편, 14개 레포로 부활하기까지 걸린 1년
mmmaxkim
0
1.3k
フロントエンドのmonorepo化と責務分離のリアーキテクト
kajitack
2
150
パッケージ設計の黒魔術/Kyoto.go#63
lufia
2
310
物語を動かす行動"量" #エンジニアニメ
konifar
14
5.6k
開発チーム・開発組織の設計改善スキルの向上
masuda220
PRO
17
9.1k
Ruby Parser progress report 2025
yui_knk
1
180
Featured
See All Featured
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
252
21k
Gamification - CAS2011
davidbonilla
81
5.4k
GraphQLとの向き合い方2022年版
quramy
49
14k
Optimizing for Happiness
mojombo
379
70k
Fantastic passwords and where to find them - at NoRuKo
philnash
52
3.4k
Why You Should Never Use an ORM
jnunemaker
PRO
59
9.5k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Building Adaptive Systems
keathley
43
2.7k
Unsuck your backbone
ammeep
671
58k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
KATA
mclloyd
32
14k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Transcript
PHPTour Nantes 2012 www.afup.org L'intégration continue de A à Z
sur une application PHP existante
Technical Team Manager Theodo Evolution Developer RogerCmsBundle Maintainer Formateur en
Bonnes Pratiques @marekkalnik Marek Kalnik http://tumblr.com/marekkalnik BLOG
Un projet legacy...
...des développeurs, des project managers...
...et la peur de bugs et deadlines.
Pour mieux dormir la nuit...
...faisons appel à l'intégration continue !
Intégration continue Automatisation Tests Documentation Intégration Votre porte-boNheur
Intégration Branche d'intégration Commits de développeurs
Tests TESTS DE DÉVELOPPEMENT TESTS UNITAIRES TESTS D'INTEGRATION TESTS APRÈS-BUGS
D'ACCEPTANCE TESTS TESTS DE DÉVELOPPEUR
Automatisation Push Build Tests DeploiemeNt Photo : stadtstreicher79@flickr
Documentation Qualité du code Installation Déploiement Développement Photo : ZeroOne
/ Foter
Intégration du legacy
Factoriser pour faire les tests ? Brett L. Schuchert Toughworks
Risque d'introduction d'un bug en modifiant une seule ligne du code legacy
LXC Jailer Les micro-frameworks Serveur BDD Les services web Slim
Photo : Darwin Bell / Foter Réplication d’environnement Pentaho Kettle Silex
Les tests non-intrusifs Linkchecker Mink + ZombieJS Mink + Selenium
Smoke testing Dev testing Build testing On peut commencer la factorisation et les tests unitaires Photo : katerha / Foter
Build Configuration Jenkins Déploiement Automatisation Jenkins-PHP Ant Fabric Jenkins-CLI Photo
: GogDog / Foter
Documentation Build Tests Déploiement HTMLPublisherPlugin + PlotPlugin RegistrationFormHandler [x] Does
not bind on get [x] Saves and sends mail on request [x] Binds facebook data UserFormHandler [x] No bind on get [x] Returns false on invalid data [x] Get user and bind on valid data
Frontend Andrew Morrell Photography / Foter
JS Test Driver JSTD
Linters JS Hint CSS Lint
Installation Jenkins 1 journée Réplication de l'environnement < 1 mois
Création de tests quelques mois Amélioration continue et projet plus stable pour la vie Estimation ?
@marekkalnik Marek Kalnik http://tumblr.com/marekkalnik BLOG L'intégration continue de A à
Z sur une application PHP existante Questions ? http://joind.in/7259 Joind.in