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
95
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
640
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
CSC307 Lecture 13
javiergs
PRO
0
310
AIに任せる範囲を安全に広げるためにやっていること
fukucheee
0
110
Python’s True Superpower
hynek
0
200
朝日新聞のデジタル版を支えるGoバックエンド ー価値ある情報をいち早く確実にお届けするために
junkiishida
1
370
Unity6.3 AudioUpdate
cova8bitdots
0
110
「やめとこ」がなくなった — 1月にZennを始めて22本書いた AI共創開発のリアル
atani14
0
350
CSC307 Lecture 14
javiergs
PRO
0
450
DSPy入門 Pythonで実現する自動プロンプト最適化 〜人手によるプロンプト調整からの卒業〜
seaturt1e
1
540
AIプロダクト時代のQAエンジニアに求められること
imtnd
2
710
Head of Engineeringが現場で回した生産性向上施策 2025→2026
gessy0129
0
210
The Past, Present, and Future of Enterprise Java
ivargrimstad
0
240
AWS×クラウドネイティブソフトウェア設計 / AWS x Cloud-Native Software Design
nrslib
4
400
Featured
See All Featured
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
150
Ethics towards AI in product and experience design
skipperchong
2
210
The Spectacular Lies of Maps
axbom
PRO
1
580
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
200
30 Presentation Tips
portentint
PRO
1
250
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.5k
Writing Fast Ruby
sferik
630
63k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
810
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
55
3.3k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.8k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.7k
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