Transcript
Page 1: Jenkins: From Continuous Integration to Continuous Delivery

JenkinsFrom Continuous Integration to Continuous Delivery

John Ferguson SmartCEOWakaleo Consulting

Page 2: Jenkins: From Continuous Integration to Continuous Delivery

Who is this guy, anyway?

2

John Ferguson Smart

ConsultantTrainerMentorAuthorSpeakerCoder

Page 3: Jenkins: From Continuous Integration to Continuous Delivery

Continuous Delivery

3

Ge5ng  value  to  the  business.Fast.

Page 4: Jenkins: From Continuous Integration to Continuous Delivery

CI in the clouds

4

DEV

INTEGRATION

STAGING

PROD

Page 5: Jenkins: From Continuous Integration to Continuous Delivery

Demonstration environment

Source  code  on  Github

Page 6: Jenkins: From Continuous Integration to Continuous Delivery

Demonstration environment

Jenkins  instance  on  Amazon

Page 7: Jenkins: From Continuous Integration to Continuous Delivery

Demonstration environment

Deploying  to  CloudBees  @RUN

Page 8: Jenkins: From Continuous Integration to Continuous Delivery

Demonstration environment

Our  applicaLon

Page 9: Jenkins: From Continuous Integration to Continuous Delivery

Branching into Continuous Delivery

or:   How   I   Stopped   Worring   And  Learned  to  Love  Feature  Branches

Page 10: Jenkins: From Continuous Integration to Continuous Delivery

Branching into Continuous Delivery

Stable  

Feature  A  

Feature  B  

Feature  C  

Page 11: Jenkins: From Continuous Integration to Continuous Delivery

Branching into Continuous Delivery

Stable  

Feature  A  

Feature  B  

Feature  C  Pick  and  choose  what  goes  into  a  release

Page 12: Jenkins: From Continuous Integration to Continuous Delivery

Everyone  needs  a  canary  or  two

Branching into Continuous Delivery

The  problem  with  feature  branches

Page 13: Jenkins: From Continuous Integration to Continuous Delivery

Branching into Continuous Delivery

Stable  

IntegraLon

Page 14: Jenkins: From Continuous Integration to Continuous Delivery

Branching into Continuous Delivery

Stable  

IntegraLongameoflife-­‐integraLon

Page 15: Jenkins: From Continuous Integration to Continuous Delivery

Branching into Continuous Delivery

Feature  branch  integraLon  is  easy  with  git  and  Jenkins

Page 16: Jenkins: From Continuous Integration to Continuous Delivery

DEMOThe integration branch in action

Page 17: Jenkins: From Continuous Integration to Continuous Delivery

Smoke tests

ConLnuous  Delivery  is  impossible  without  ConLnuous  Quality

“Where  there’s  smoke,  there’s  fire”

Page 18: Jenkins: From Continuous Integration to Continuous Delivery

Smoke tests

gameoflife-­‐integraLon

gameoflife-­‐smoke-­‐tests

STAGING

INTEGRATION

PROD

DEV

Page 19: Jenkins: From Continuous Integration to Continuous Delivery

Smoke tests

gameoflife-­‐integraLon

gameoflife-­‐smoke-­‐tests

DEV

Smoke  Tests  can  also  be  Automated  Acceptance  Tests

Page 20: Jenkins: From Continuous Integration to Continuous Delivery

DEMOSmoke Tests in Action

Page 21: Jenkins: From Continuous Integration to Continuous Delivery

Continuous Delivery

Deliveries  when  the  business  needs  them

Page 22: Jenkins: From Continuous Integration to Continuous Delivery

Continuous Delivery

Stable  

Feature  B  

gameoflife-­‐default

gameoflife-­‐code-­‐quality

gameoflife-­‐release-­‐candidate

gameoflife-­‐smoke-­‐tests

STAGING

1.2.3

Page 23: Jenkins: From Continuous Integration to Continuous Delivery

DEMOProducing a release candidate

Page 24: Jenkins: From Continuous Integration to Continuous Delivery

Build Pipeline

Pushing  your  code  into  producLon

Page 25: Jenkins: From Continuous Integration to Continuous Delivery

Build Pipeline

Stable  

gameoflife-­‐default

gameoflife-­‐code-­‐quality

gameoflife-­‐release-­‐candidate

gameoflife-­‐smoke-­‐tests

STAGING

gameoflife-­‐deploy-­‐to-­‐prod

gameoflife-­‐smoke-­‐tests

PROD

1.2.3

Page 26: Jenkins: From Continuous Integration to Continuous Delivery

Build Pipeline

Page 27: Jenkins: From Continuous Integration to Continuous Delivery

DEMOThe build pipeline

Page 28: Jenkins: From Continuous Integration to Continuous Delivery

THANK YOU!John  Ferguson  Smart

Email:  [email protected]:  h`p://www.wakaleo.com

Twi`er:  wakaleo


Top Related