continuous delivery pipeline with docker and jenkins

59
Continuous Delivery Pipeline with Docker and Jenkins Camilo Ribeiro

Upload: camilo-ribeiro

Post on 21-Jan-2017

923 views

Category:

Software


4 download

TRANSCRIPT

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) :)