59
Continuous Delivery Pipeline with Docker and Jenkins Camilo Ribeiro

Continuous Delivery Pipeline with Docker and Jenkins

Embed Size (px)

Citation preview

Continuous Delivery Pipeline with Docker and

Jenkins

Camilo Ribeiro

Camilo Ribeiro

Software Engineer at Klarna Former Senior Consultant at ThoughtWorks

@camiloribeiro

[email protected]

https://github.com/camiloribeiro/cdeasy

0

25

50

75

100

Local Build Stage 1 Stage 2 Stage 3 Stage N

Risk in each commit

Build Test Perf Sec Ship it!

Not only hardware abstraction, but operating system abstraction

https://hub.docker.com

https://hub.yourcompany.com

docker pull gradle docker run gradle clean build runInParallel

docker pull ruby docker run ruby bundle install && rake test

docker pull node docker run node npm install && node app.js

docker pull jenkins docker run -p 8080:80 jenkins

docker pull git docker run git pull [email protected]

Run a cloud-ish in your local machine

docker-compose

“ One image to run them all ” - Sauron

A Jenkins agent image with only docker and docker-compose installed

90 more jobs!

Jenkins Job Automation

• Template Project Plugin • Job Generator Plugin • Jenkins Job Builder • JobDSL Plugin

Jenkins Job Automation

• Template Project Plugin • Job Generator Plugin • Jenkins Job Builder • JobDSL Plugin

Jenkins Job DSL

Turn your job-dsl scripts into a project!

Wanna learn more?

• CDEasy: https://github.com/camiloribeiro/cdeasy • Jenkins running in docker with examples

• Job DSL playground: http://job-dsl.herokuapp.com/ • Know your xml when you write the groovy scripts

• Job DSL reference: https://jenkinsci.github.io/job-dsl-plugin/ • Nice documentation with current state of Job DSL

Demo

If we have time (and internet) :)