SlideShare ist ein Scribd-Unternehmen logo
1 von 69
ContinuousDelivery 31.03.2011 für Java Anwendungen Axel Fontaine Software Development Expert twitter.com/axelfontaine www.axelfontaine.com business@axelfontaine.com
Cecin’est pas une build tool.
Cecin’est pas une version control.
Cecin’est pas une testing. http://www.flickr.com/photos/vitorcastillo/2994723741/
Cecin’est pas une deployment. http://www.flickr.com/photos/chiotsrun/4457365506/
Cecin’est pas une process. http://www.flickr.com/photos/feffef/460299390/in/photostream/
Geht es auch anders?
http://code.flickr.com/
http://stackoverflow.com/
http://www.flickr.com/photos/aeroworks/97338266/in/photostream/
http://digitalcitizen.ca/2009/06/22/simpsons-profile-pics-for-facebook-and-other-applications/
Fokus der letzten 10 Jahre Fokus von Continuous Delivery
Continuous Delivery http://www.flickr.com/photos/kamshots/3096111340/
Zuverlässige Software Releases durch Build Automatisierung Test Automatisierung Deployment Automatisierung
http://www.flickr.com/photos/fordapa/3886403372/in/set-72157622110280353/ Build Automatisierung
DEV Build
DEV Version Control Build
Continuous Integration DEV Version Control Build Build
Build Automatisierung Schneller Build ---> Schnelles Feedback Früheinchecken, oft einchecken Build grün hat die höchstePrio NichtsNeueseinchecken, solange Build rotist Zurückrollen, wenn Build zulangerotist
Test Automatisierung http://www.flickr.com/photos/travelinlibrarian/160356388/
Small Medium Large Black Box System Test Unit Test Component Test
Small Medium Large Black Box System Test Unit Test Component Test
Anwendung System A System B DB
Anwendung System A Large Test System B DB
Anwendung System A Large Test System B Dummy DB
Anwendung System A Large Test System B Dummy DB
Anwendung System A Large Test System B Dummy DB
Continuous Integration DEV Small Tests Build Build Version Control
Continuous Integration DEV Small Tests Build Build Version Control Medium Tests
Continuous Integration DEV Small Tests Build Build Version Control Medium Tests Large Tests
Continuous Integration DEV Small Tests Small Tests Build Build Version Control Medium Tests Medium Tests Large Tests Large Tests
Test Automatisierung Schnelle Tests ---> Schnelles Feedback Alle Tests ausführenvordemEinchecken DummieseinsetzenfürexterneSysteme Tests laufenkomplettlokal(auch ext. Systeme) Tests mit@Ignorenichteinchecken
Deployment Automatisierung http://www.flickr.com/photos/soldiersmediacenter/3650607959/
Snapshots werden NICHT deployed !
Continuous Integration DEV Release Build Artifact Repository Small Tests Small Tests Build Version Control Medium Tests Medium Tests Large Tests Large Tests
Was wird deployed? Code Konfiguration DB Delta
backup stop install start … Code Deployment Package Deployment Script
backup stop install start … Code Deployment Package Deployment Script
Continuous Integration Ziel backup stop install start … Artifact Repository Release Deployment Script
Konfiguration Applikation + Umgebung Umgebung Sicherheit Applikation Deployment Package Configuration Server File System Code
? Environment Detection Code Deployment Package
Abnahme Environment Detection Code
Continuous Integration Ziel backup stop install start … Artifact Repository Release Deployment Script
DB Delta Code Deployment Package
? Code ? DB Deployment Package
http://code.google.com/p/flyway/
Continuous Integration Ziel backup stop install start … Artifact Repository Release Deployment Script
Deployment Automatisierung SchnellesDeployment ---> Schnelles Feedback Ein Deployment Package … … mit Code, Konfiguration und DB Delta … … vollautomatisiertdeployen … … nachjedemgrünen Build !
Ziel Continuous Integration DEV backup stop install start … Release Build Deployment Script Artifact Repository Small Tests Small Tests Build Version Control Medium Tests Medium Tests Large Tests Large Tests
3 morethings…
Briefversand Registrierung
Briefversand Registrierung
Briefversand Registrierung v2 Paketversand
Branch by Abstraction Briefversand Registrierung Paketversand
Branch by Abstraction Briefversand Registrierung Paketversand
DB
Memcache DB
Blue/Green Deployments Memcache DB
Code Deployment Package
Zusammenfassung
Team (a-team van)
ISBN-13: 978-0-321-60191-9
Danke ! Axel Fontaine Software Development Expert twitter.com/axelfontaine www.axelfontaine.com business@axelfontaine.com

Weitere ähnliche Inhalte

Mehr von Axel Fontaine

Immutable Infrastructure: the new App Deployment
Immutable Infrastructure: the new App DeploymentImmutable Infrastructure: the new App Deployment
Immutable Infrastructure: the new App DeploymentAxel Fontaine
 
Jfokus 2015 - Immutable Server generation: the new App Deployment
Jfokus 2015 - Immutable Server generation: the new App DeploymentJfokus 2015 - Immutable Server generation: the new App Deployment
Jfokus 2015 - Immutable Server generation: the new App DeploymentAxel Fontaine
 
Continuous Delivery and Zero Downtime: What your architecture needs to succeed
Continuous Delivery and Zero Downtime: What your architecture needs to succeedContinuous Delivery and Zero Downtime: What your architecture needs to succeed
Continuous Delivery and Zero Downtime: What your architecture needs to succeedAxel Fontaine
 
Immutable Server generation: The new App Deployment
Immutable Server generation: The new App DeploymentImmutable Server generation: The new App Deployment
Immutable Server generation: The new App DeploymentAxel Fontaine
 
Continuous Delivery and Zero Downtime
Continuous Delivery and Zero DowntimeContinuous Delivery and Zero Downtime
Continuous Delivery and Zero DowntimeAxel Fontaine
 
XP Days Ukraine 2013 - Architecting for Continuous Delivery
XP Days Ukraine 2013 - Architecting for Continuous DeliveryXP Days Ukraine 2013 - Architecting for Continuous Delivery
XP Days Ukraine 2013 - Architecting for Continuous DeliveryAxel Fontaine
 
Flyway (33rd Degree)
Flyway (33rd Degree)Flyway (33rd Degree)
Flyway (33rd Degree)Axel Fontaine
 
Architecting for continuous delivery (33rd Degree)
Architecting for continuous delivery (33rd Degree)Architecting for continuous delivery (33rd Degree)
Architecting for continuous delivery (33rd Degree)Axel Fontaine
 
Flyway: The agile database migration framework for Java
Flyway: The agile database migration framework for JavaFlyway: The agile database migration framework for Java
Flyway: The agile database migration framework for JavaAxel Fontaine
 
Architecting for Continuous Delivery
Architecting for Continuous DeliveryArchitecting for Continuous Delivery
Architecting for Continuous DeliveryAxel Fontaine
 

Mehr von Axel Fontaine (10)

Immutable Infrastructure: the new App Deployment
Immutable Infrastructure: the new App DeploymentImmutable Infrastructure: the new App Deployment
Immutable Infrastructure: the new App Deployment
 
Jfokus 2015 - Immutable Server generation: the new App Deployment
Jfokus 2015 - Immutable Server generation: the new App DeploymentJfokus 2015 - Immutable Server generation: the new App Deployment
Jfokus 2015 - Immutable Server generation: the new App Deployment
 
Continuous Delivery and Zero Downtime: What your architecture needs to succeed
Continuous Delivery and Zero Downtime: What your architecture needs to succeedContinuous Delivery and Zero Downtime: What your architecture needs to succeed
Continuous Delivery and Zero Downtime: What your architecture needs to succeed
 
Immutable Server generation: The new App Deployment
Immutable Server generation: The new App DeploymentImmutable Server generation: The new App Deployment
Immutable Server generation: The new App Deployment
 
Continuous Delivery and Zero Downtime
Continuous Delivery and Zero DowntimeContinuous Delivery and Zero Downtime
Continuous Delivery and Zero Downtime
 
XP Days Ukraine 2013 - Architecting for Continuous Delivery
XP Days Ukraine 2013 - Architecting for Continuous DeliveryXP Days Ukraine 2013 - Architecting for Continuous Delivery
XP Days Ukraine 2013 - Architecting for Continuous Delivery
 
Flyway (33rd Degree)
Flyway (33rd Degree)Flyway (33rd Degree)
Flyway (33rd Degree)
 
Architecting for continuous delivery (33rd Degree)
Architecting for continuous delivery (33rd Degree)Architecting for continuous delivery (33rd Degree)
Architecting for continuous delivery (33rd Degree)
 
Flyway: The agile database migration framework for Java
Flyway: The agile database migration framework for JavaFlyway: The agile database migration framework for Java
Flyway: The agile database migration framework for Java
 
Architecting for Continuous Delivery
Architecting for Continuous DeliveryArchitecting for Continuous Delivery
Architecting for Continuous Delivery
 

Continuous Delivery