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

Continuous Delivery

5,135

Published on

Folien meines Continuous Delivery Vortrags auf die RheinJUG am 31.3.2011

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
5,135
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Continuous Delivery

  1. 1. ContinuousDelivery<br />31.03.2011<br />für Java Anwendungen<br />Axel Fontaine<br />Software Development Expert<br />twitter.com/axelfontaine<br />www.axelfontaine.com<br />business@axelfontaine.com<br />
  2. 2.
  3. 3. Cecin’est pas une build tool.<br />
  4. 4. Cecin’est pas une version control.<br />
  5. 5. Cecin’est pas une testing.<br />http://www.flickr.com/photos/vitorcastillo/2994723741/<br />
  6. 6. Cecin’est pas une deployment.<br />http://www.flickr.com/photos/chiotsrun/4457365506/<br />
  7. 7. Cecin’est pas une process.<br />http://www.flickr.com/photos/feffef/460299390/in/photostream/<br />
  8. 8. Geht es auch anders?<br />
  9. 9.
  10. 10. http://code.flickr.com/<br />
  11. 11.
  12. 12. http://stackoverflow.com/<br />
  13. 13. http://www.flickr.com/photos/aeroworks/97338266/in/photostream/<br />
  14. 14. http://digitalcitizen.ca/2009/06/22/simpsons-profile-pics-for-facebook-and-other-applications/<br />
  15. 15.
  16. 16. Fokus der letzten 10 Jahre<br />Fokus von Continuous Delivery<br />
  17. 17. Continuous<br />Delivery<br />http://www.flickr.com/photos/kamshots/3096111340/<br />
  18. 18. Zuverlässige Software Releases<br />durch<br />Build Automatisierung<br />Test Automatisierung<br />Deployment Automatisierung<br />
  19. 19. http://www.flickr.com/photos/fordapa/3886403372/in/set-72157622110280353/<br />Build<br />Automatisierung<br />
  20. 20. DEV<br />Build<br />
  21. 21. DEV<br />Version<br />Control<br />Build<br />
  22. 22. Continuous Integration<br />DEV<br />Version<br />Control<br />Build<br />Build<br />
  23. 23. Build Automatisierung<br />Schneller Build ---> Schnelles Feedback<br />Früheinchecken, oft einchecken<br />Build grün hat die höchstePrio<br />NichtsNeueseinchecken, solange Build rotist<br />Zurückrollen, wenn Build zulangerotist<br />
  24. 24. Test<br />Automatisierung<br />http://www.flickr.com/photos/travelinlibrarian/160356388/<br />
  25. 25. Small<br />Medium<br />Large<br />Black Box<br />System Test<br />Unit Test<br />Component Test<br />
  26. 26. Small<br />Medium<br />Large<br />Black Box<br />System Test<br />Unit Test<br />Component Test<br />
  27. 27. Anwendung<br />System A<br />System B<br />DB<br />
  28. 28. Anwendung<br />System A<br />Large<br />Test<br />System B<br />DB<br />
  29. 29. Anwendung<br />System A<br />Large<br />Test<br />System B Dummy<br />DB<br />
  30. 30. Anwendung<br />System A<br />Large<br />Test<br />System B Dummy<br />DB<br />
  31. 31. Anwendung<br />System A<br />Large<br />Test<br />System B Dummy<br />DB<br />
  32. 32. Continuous Integration<br />DEV<br />Small<br />Tests<br />Build<br />Build<br />Version<br />Control<br />
  33. 33. Continuous Integration<br />DEV<br />Small<br />Tests<br />Build<br />Build<br />Version<br />Control<br />Medium<br />Tests<br />
  34. 34. Continuous Integration<br />DEV<br />Small<br />Tests<br />Build<br />Build<br />Version<br />Control<br />Medium<br />Tests<br />Large<br />Tests<br />
  35. 35. Continuous Integration<br />DEV<br />Small<br />Tests<br />Small<br />Tests<br />Build<br />Build<br />Version<br />Control<br />Medium<br />Tests<br />Medium<br />Tests<br />Large<br />Tests<br />Large<br />Tests<br />
  36. 36. Test Automatisierung<br />Schnelle Tests ---> Schnelles Feedback<br />Alle Tests ausführenvordemEinchecken<br />DummieseinsetzenfürexterneSysteme<br />Tests laufenkomplettlokal(auch ext. Systeme)<br />Tests mit@Ignorenichteinchecken<br />
  37. 37. Deployment<br />Automatisierung<br />http://www.flickr.com/photos/soldiersmediacenter/3650607959/<br />
  38. 38. Snapshots<br />werden<br />NICHT<br />deployed !<br />
  39. 39. Continuous Integration<br />DEV<br />Release<br />Build<br />Artifact Repository<br />Small<br />Tests<br />Small<br />Tests<br />Build<br />Version<br />Control<br />Medium<br />Tests<br />Medium<br />Tests<br />Large<br />Tests<br />Large<br />Tests<br />
  40. 40. Was wird deployed?<br />Code<br />Konfiguration<br />DB Delta<br />
  41. 41. backup<br />stop<br />install<br />start<br />…<br />Code<br />Deployment<br />Package<br />Deployment<br />Script<br />
  42. 42. backup<br />stop<br />install<br />start<br />…<br />Code<br />Deployment<br />Package<br />Deployment<br />Script<br />
  43. 43. Continuous Integration<br />Ziel<br />backup<br />stop<br />install<br />start<br />…<br />Artifact Repository<br />Release<br />Deployment<br />Script<br />
  44. 44. Konfiguration<br />Applikation<br />+<br />Umgebung<br />Umgebung<br />Sicherheit<br />Applikation<br />Deployment<br />Package<br />Configuration Server<br />File<br />System<br />Code<br />
  45. 45. ?<br />Environment Detection<br />Code<br />Deployment<br />Package<br />
  46. 46. Abnahme<br />Environment Detection<br />Code<br />
  47. 47. Continuous Integration<br />Ziel<br />backup<br />stop<br />install<br />start<br />…<br />Artifact Repository<br />Release<br />Deployment<br />Script<br />
  48. 48. DB Delta<br />Code<br />Deployment<br />Package<br />
  49. 49. ?<br />Code<br />?<br />DB<br />Deployment<br />Package<br />
  50. 50. http://code.google.com/p/flyway/<br />
  51. 51. Continuous Integration<br />Ziel<br />backup<br />stop<br />install<br />start<br />…<br />Artifact Repository<br />Release<br />Deployment<br />Script<br />
  52. 52. Deployment Automatisierung<br />SchnellesDeployment ---> Schnelles Feedback<br />Ein Deployment Package …<br />… mit Code, Konfiguration und DB Delta …<br />… vollautomatisiertdeployen …<br />… nachjedemgrünen Build !<br />
  53. 53. Ziel<br />Continuous Integration<br />DEV<br />backup<br />stop<br />install<br />start<br />…<br />Release<br />Build<br />Deployment<br />Script<br />Artifact Repository<br />Small<br />Tests<br />Small<br />Tests<br />Build<br />Version<br />Control<br />Medium<br />Tests<br />Medium<br />Tests<br />Large<br />Tests<br />Large<br />Tests<br />
  54. 54. 3 morethings…<br />
  55. 55. Briefversand<br />Registrierung<br />
  56. 56. Briefversand<br />Registrierung<br />
  57. 57. Briefversand<br />Registrierung<br />v2<br />Paketversand<br />
  58. 58. Branch by Abstraction<br />Briefversand<br />Registrierung<br />Paketversand<br />
  59. 59. Branch by Abstraction<br />Briefversand<br />Registrierung<br />Paketversand<br />
  60. 60. DB<br />
  61. 61. Memcache<br />DB<br />
  62. 62. Blue/Green Deployments<br />Memcache<br />DB<br />
  63. 63. Code<br />Deployment<br />Package<br />
  64. 64. Zusammenfassung<br />
  65. 65.
  66. 66. Team (a-team van)<br />
  67. 67.
  68. 68. ISBN-13: 978-0-321-60191-9 <br />
  69. 69. Danke !<br />Axel Fontaine<br />Software Development Expert<br />twitter.com/axelfontaine<br />www.axelfontaine.com<br />business@axelfontaine.com<br />

×