import continuous.delivery.*                          Anton Arhipov                           @antonarhipov               ...
Agenda                          Agile Manifesto says:             INDIVIDUALS and INTERACTIONS                         ove...
Agenda                          PROCESSES and TOOLSMonday, November 19, 12
Fedex process      • Package      • Dropoff      • Transfer      • Delivery      • Profit!Monday, November 19, 12
Java EE      • Package      • Test      • Approve      • Deploy      • Profit!Monday, November 19, 12
Questions?      • What exactly is in prod now?      • How did it get deployed?      • How did it get there?      • Where d...
Fedex FAILMonday, November 19, 12
Software FAILMonday, November 19, 12
Monday, November 19, 12
Continuous Delivery              PipelineMonday, November 19, 12
A pipeline?                          Source: http://startupblog.files.wordpress.com/2008/09/pipeline1.jpgMonday, November 1...
Continuous Delivery pipeline!                          Source: http://studentthinktank.eu/wp-content/uploads/2012/02/03_TU...
Philosophy      • Automate      • Record      • Test      • RecoverMonday, November 19, 12
The Pipeline      • Orchestration Platform      • Delivery Manager      • Artifact RepositoryMonday, November 19, 12
Jenkins  (OSS Continuous Integration Server)Monday, November 19, 12
Orchestration                            platformMonday, November 19, 12
LiveRebel    (Commercial Delivery Manager)Monday, November 19, 12
What can you do with LiveRebel?      • Deploy/Undeploy      • Update        • No downtime        • No lost sessions       ...
Why LiveRebel?           • No good OSS alternative           • Supports many app servers           • No downtime updates  ...
And we freakin’                             built it!Monday, November 19, 12
Artifactory  (OSS/Commercial Artifact Repository)Monday, November 19, 12
Alternatives      • FTP      • Jenkins      • Nexus (and the like)Monday, November 19, 12
Monday, November 19, 12
Now let’s build a                        pipeline!Monday, November 19, 12
The Pipeline / The ReposMonday, November 19, 12
Repository              Build      Test            QA          RC      Pipeline            Build       Test          QA   ...
The tools in the pipelineMonday, November 19, 12
Pipeline phasesMonday, November 19, 12
Build phaseMonday, November 19, 12
Test phaseMonday, November 19, 12
QA phaseMonday, November 19, 12
Production phaseMonday, November 19, 12
Dirty details in                              JenkinsMonday, November 19, 12
Themes Not Covered      • Database      • Configuration & Environment      • Tests & MonitoringMonday, November 19, 12
Questions?      • How do you package the application?      • Where did it come from?      • Where does it go?      • How d...
The answers are                           in the pipeline!Monday, November 19, 12
Pipeline Summary      • Jenkins jobs represent the workflow      • Artifactory is a sync-point      • LiveRebel manages ap...
Not bad, but what about the process??Monday, November 19, 12
Monday, November 19, 12
Traditional Process       Developer                  QA                          Release Engineer   SysOpMonday, November ...
Powered by CD                                   QA       Developer                                Manager                 ...
What’s changed?Monday, November 19, 12
What’s changed?      • Increased significance of automated QAMonday, November 19, 12
What’s changed?      • Increased significance of automated QA      • Reduced manual testingMonday, November 19, 12
What’s changed?      • Increased significance of automated QA      • Reduced manual testing      • Infrastructure roles NO...
What’s changed?      • Increased significance of automated QA      • Reduced manual testing      • Infrastructure roles NO...
What’s changed?      • Increased significance of automated QA      • Reduced manual testing      • Infrastructure roles NO...
Q&A                               @antonarhipov                          anton@zeroturnaround.comMonday, November 19, 12
Upcoming SlideShare
Loading in...5
×

import continuous.delivery.*

1,766

Published on

Organizing continuous delivery pipeline with Jenkins, Artifactory & LiveRebel

Published in: Technology
2 Comments
7 Likes
Statistics
Notes
  • Michael, I was using just REST API, but it should be possible with Jenkins plugin also (I only used it to deploy single artifacts) - there are include/exclude patterns that you can specify to identify which artifacts to deploy.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
  • Hi Anton,

    How do you deploy your WARs and traces to various repos in Artifactory? Manual scripts or do you use the Artifactory Jenkins plugin at all?

    I'm just trying to figure out how to get a non-build job to deploy to Artifactory.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total Views
1,766
On Slideshare
0
From Embeds
0
Number of Embeds
5
Actions
Shares
0
Downloads
26
Comments
2
Likes
7
Embeds 0
No embeds

No notes for slide

import continuous.delivery.*

  1. 1. import continuous.delivery.* Anton Arhipov @antonarhipov Product Lead ZeroTurnaroundMonday, November 19, 12
  2. 2. Agenda Agile Manifesto says: INDIVIDUALS and INTERACTIONS over PROCESSES and TOOLS, blah, blah, blah ...Monday, November 19, 12
  3. 3. Agenda PROCESSES and TOOLSMonday, November 19, 12
  4. 4. Fedex process • Package • Dropoff • Transfer • Delivery • Profit!Monday, November 19, 12
  5. 5. Java EE • Package • Test • Approve • Deploy • Profit!Monday, November 19, 12
  6. 6. Questions? • What exactly is in prod now? • How did it get deployed? • How did it get there? • Where did it come from? • How did you package the application?Monday, November 19, 12
  7. 7. Fedex FAILMonday, November 19, 12
  8. 8. Software FAILMonday, November 19, 12
  9. 9. Monday, November 19, 12
  10. 10. Continuous Delivery PipelineMonday, November 19, 12
  11. 11. A pipeline? Source: http://startupblog.files.wordpress.com/2008/09/pipeline1.jpgMonday, November 19, 12
  12. 12. Continuous Delivery pipeline! Source: http://studentthinktank.eu/wp-content/uploads/2012/02/03_TURKMEN-PIPELINE.jpgMonday, November 19, 12
  13. 13. Philosophy • Automate • Record • Test • RecoverMonday, November 19, 12
  14. 14. The Pipeline • Orchestration Platform • Delivery Manager • Artifact RepositoryMonday, November 19, 12
  15. 15. Jenkins (OSS Continuous Integration Server)Monday, November 19, 12
  16. 16. Orchestration platformMonday, November 19, 12
  17. 17. LiveRebel (Commercial Delivery Manager)Monday, November 19, 12
  18. 18. What can you do with LiveRebel? • Deploy/Undeploy • Update • No downtime • No lost sessions • Plain old restarts • Environment/deployment statusMonday, November 19, 12
  19. 19. Why LiveRebel? • No good OSS alternative • Supports many app servers • No downtime updates • Integrates with OSS projectsMonday, November 19, 12
  20. 20. And we freakin’ built it!Monday, November 19, 12
  21. 21. Artifactory (OSS/Commercial Artifact Repository)Monday, November 19, 12
  22. 22. Alternatives • FTP • Jenkins • Nexus (and the like)Monday, November 19, 12
  23. 23. Monday, November 19, 12
  24. 24. Now let’s build a pipeline!Monday, November 19, 12
  25. 25. The Pipeline / The ReposMonday, November 19, 12
  26. 26. Repository Build Test QA RC Pipeline Build Test QA Dist GO! Deployment Test Staging ProdMonday, November 19, 12
  27. 27. The tools in the pipelineMonday, November 19, 12
  28. 28. Pipeline phasesMonday, November 19, 12
  29. 29. Build phaseMonday, November 19, 12
  30. 30. Test phaseMonday, November 19, 12
  31. 31. QA phaseMonday, November 19, 12
  32. 32. Production phaseMonday, November 19, 12
  33. 33. Dirty details in JenkinsMonday, November 19, 12
  34. 34. Themes Not Covered • Database • Configuration & Environment • Tests & MonitoringMonday, November 19, 12
  35. 35. Questions? • How do you package the application? • Where did it come from? • Where does it go? • How does it get deployed? • What exactly is in prod now?Monday, November 19, 12
  36. 36. The answers are in the pipeline!Monday, November 19, 12
  37. 37. Pipeline Summary • Jenkins jobs represent the workflow • Artifactory is a sync-point • LiveRebel manages apps and versions • Manual flows with REST • Tracking with scripts & text filesMonday, November 19, 12
  38. 38. Not bad, but what about the process??Monday, November 19, 12
  39. 39. Monday, November 19, 12
  40. 40. Traditional Process Developer QA Release Engineer SysOpMonday, November 19, 12
  41. 41. Powered by CD QA Developer Manager CD Engineer SysOpMonday, November 19, 12
  42. 42. What’s changed?Monday, November 19, 12
  43. 43. What’s changed? • Increased significance of automated QAMonday, November 19, 12
  44. 44. What’s changed? • Increased significance of automated QA • Reduced manual testingMonday, November 19, 12
  45. 45. What’s changed? • Increased significance of automated QA • Reduced manual testing • Infrastructure roles NOT involved with releaseMonday, November 19, 12
  46. 46. What’s changed? • Increased significance of automated QA • Reduced manual testing • Infrastructure roles NOT involved with release • Release approval is a business decisionMonday, November 19, 12
  47. 47. What’s changed? • Increased significance of automated QA • Reduced manual testing • Infrastructure roles NOT involved with release • Release approval is a business decision • Automation is the key Too good to be true, eh?Monday, November 19, 12
  48. 48. Q&A @antonarhipov anton@zeroturnaround.comMonday, November 19, 12
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×