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
730
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
79
Le management LEAN
marekkalnik
0
77
Versioning mobile apps and apis
marekkalnik
0
96
Comment Ionic vous aide
marekkalnik
0
150
Pourquoi choisir Ionic ?
marekkalnik
0
270
Cordova vs. Steroids
marekkalnik
0
150
Arrêtons de parler de code de qualité, ce qu'il faut c'est du code agile !
marekkalnik
2
650
Code Agile - comment redéfinir la qualité
marekkalnik
2
190
Behat - retour d'expérience
marekkalnik
1
440
Other Decks in Programming
See All in Programming
AIに任せる範囲を安全に広げるためにやっていること
fukucheee
0
130
CSC307 Lecture 15
javiergs
PRO
0
240
社内規程RAGの精度を73.3% → 100%に改善した話
oharu121
13
7.9k
Takumiから考えるSecurity_Maturity_Model.pdf
gessy0129
1
140
ふつうの Rubyist、ちいさなデバイス、大きな一年
bash0c7
0
840
Windows on Ryzen and I
seosoft
0
250
AIコードレビューの導入・運用と AI駆動開発における「AI4QA」の取り組みについて
hagevvashi
0
430
Go 1.26でのsliceのメモリアロケーション最適化 / Go 1.26 リリースパーティ #go126party
mazrean
1
380
ポーリング処理廃止によるイベント駆動アーキテクチャへの移行
seitarof
3
1k
maplibre-gl-layers - 地図に移動体たくさん表示したい
kekyo
PRO
0
250
モジュラモノリスにおける境界をGoのinternalパッケージで守る
magavel
0
3.5k
Angular-Apps smarter machen mit Gen AI: Lokal und offlinefähig - Hands-on Workshop!
christianliebel
PRO
0
100
Featured
See All Featured
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
Documentation Writing (for coders)
carmenintech
77
5.3k
ラッコキーワード サービス紹介資料
rakko
1
2.6M
The World Runs on Bad Software
bkeepers
PRO
72
12k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
231
22k
Why You Should Never Use an ORM
jnunemaker
PRO
61
9.8k
Typedesign – Prime Four
hannesfritz
42
3k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
82
How to train your dragon (web standard)
notwaldorf
97
6.6k
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
200
GraphQLの誤解/rethinking-graphql
sonatard
75
11k
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