Jenkins
From Continuous Integration to Continuous Delivery

John Ferguson Smart
CEO
Wakaleo Consulting
Who is this guy, anyway?
               Consulta
                       nt
               Trainer
              Mentor
              Author
             Speaker
             Coder
   John Fer
            guson S
                    mar t




                            2
Continuous Delivery

 Ge5ng	
  value	
  to	
  the	
  business.
              Fast.




                                            3
CI in the clouds



                   DEV


                   INTEGRATION



                      STAGING




                         PROD

                            4
Demonstration environment




                    Source	
  code	
  on	
  Github
Demonstration environment




                 Jenkins	
  instance	
  on	
  Amazon
Demonstration environment




                Deploying	
  to	
  CloudBees	
  @RUN
Demonstration environment




                    Our	
  applicaLon
Branching into Continuous Delivery




            or:	
   How	
   I	
   Stopped	
   Worring	
   And	
  
            Learned	
  to	
  Love	
  Feature	
  Branches
Branching into Continuous Delivery

                  Feature	
  B	
  




                                          Stable	
  



                 Feature	
  A	
  




                       Feature	
  C	
  
Branching into Continuous Delivery

                                     Feature	
  B	
  




                                                             Stable	
  



                                     Feature	
  A	
  




 Pick	
  and	
  choose	
  what	
          Feature	
  C	
  

  goes	
  into	
  a	
  release
Branching into Continuous Delivery
The	
  problem	
  with	
  
feature	
  branches




                             Everyone	
  needs	
  a	
  canary	
  or	
  two
Branching into Continuous Delivery




                               Stable	
  




                              IntegraLon
Branching into Continuous Delivery




                               Stable	
  




     gameoflife-­‐integraLon
                              IntegraLon
Branching into Continuous Delivery




     Feature	
  branch	
  integraLon	
  is	
  easy	
  with	
  git	
  and	
  Jenkins
DEMO
The integration branch in action
Smoke tests
“Where	
  there’s	
  smoke,	
  there’s	
  fire”




                                     ConLnuous	
  Delivery	
  is	
  impossible	
  
                                       without	
  ConLnuous	
  Quality
Smoke tests



        gameoflife-­‐integraLon
                                               DEV

             gameoflife-­‐smoke-­‐tests
                                         INTEGRATION


                                            STAGING



                                               PROD
Smoke tests
Smoke	
  Tests	
  can	
  also	
  be	
  Automated	
  Acceptance	
  Tests




                      gameoflife-­‐integraLon
                                                                          DEV

                            gameoflife-­‐smoke-­‐tests
DEMO
Smoke Tests in Action
Continuous Delivery




 Deliveries	
  when	
  the	
  business	
  needs	
  them
Continuous Delivery

                    Feature	
  B	
  




                                                  Stable	
  
       gameoflife-­‐default

          gameoflife-­‐code-­‐quality            1.2.3


              gameoflife-­‐release-­‐candidate
                                                 STAGING

                    gameoflife-­‐smoke-­‐tests
DEMO
Producing a release candidate
Build Pipeline
Pushing	
  your	
  code	
  into	
  producLon
Build Pipeline


                                                      Stable	
  
            gameoflife-­‐default

               gameoflife-­‐code-­‐quality

                   gameoflife-­‐release-­‐candidate
                                                     STAGING

                         gameoflife-­‐smoke-­‐tests
    1.2.3


                   gameoflife-­‐deploy-­‐to-­‐prod
                                                         PROD
                         gameoflife-­‐smoke-­‐tests
Build Pipeline
DEMO
The build pipeline
THANK YOU!
                 John	
  Ferguson	
  Smart
  Email:	
  john.smart@wakaleo.com
   Web:	
  h`p://www.wakaleo.com
                     Twi`er:	
  wakaleo

Jenkins: From Continuous Integration to Continuous Delivery