CI / CD with fabric8

26
James Rawlings Engineering Red Hat @jdrawlings Microservices workflow: continuous integration and delivery

Transcript of CI / CD with fabric8

Page 1: CI / CD with fabric8

James Rawlings Engineering Red Hat @jdrawlings

Microservices workflow: continuous integration and delivery

Page 3: CI / CD with fabric8

State of DevOps report 2015

“Our definition of IT performance includes two throughput

metrics — deployment frequency and deployment lead time —

and one stability metric, mean time to recover (MTTR). “

Page 4: CI / CD with fabric8

18 months ago…

github.com/fabric8io 4 main java repos, 1 nodejs + angularjs

ci.fabric.io ~ 15 jenkins jobs

Page 5: CI / CD with fabric8

Today…

github.com/fabric8io - over 80 repos in the last 6 months

github.com/fabric8-quickstarts - 45 quickstarts repos

48 apps

ci.fabric8.io - 143 jobs

cd.fabric8.io - 38 jobs + 26 releases in 3 days

Page 6: CI / CD with fabric8

Jenkins Pipeline

Page 7: CI / CD with fabric8

Jenkins Pipeline

Page 8: CI / CD with fabric8

Jenkinsfile

Page 9: CI / CD with fabric8
Page 10: CI / CD with fabric8

Single v Multi project release

Page 11: CI / CD with fabric8
Page 12: CI / CD with fabric8

Pipeline Shared Libraries

github.com/jenkinsci/workflow-cps-global-lib-plugingithub.com/fabric8io/jenkins-pipeline-library

Page 13: CI / CD with fabric8

f-m-p

f-m-d

Q 1 Q 2 Q 3 Q 4 Q n

central

pipe

line

pipe

line

Page 14: CI / CD with fabric8

Stage View

Page 15: CI / CD with fabric8

Kubernetes Plugin

github.com/jenkinsci/kubernetes-plugin

Multi container build pod (coming in 0.9)

Page 16: CI / CD with fabric8

Continuous Delivery is more than just one tool

Page 17: CI / CD with fabric8

Transparency

Automation

Social

Systems Availability

Continuous Improvement

Page 18: CI / CD with fabric8
Page 19: CI / CD with fabric8

Kibana

Grafana

Jolokia

Elasticsearch

Prometheus

Taiga Gerrit

Jenkins

KubernetesdockerHubot

Arquillian

Slack Lets Chat

Gogs

Forge

Ansible OpenShift

Page 20: CI / CD with fabric8
Page 21: CI / CD with fabric8
Page 22: CI / CD with fabric8
Page 23: CI / CD with fabric8
Page 24: CI / CD with fabric8

Automation

app creation build test import CI CD improve

Page 25: CI / CD with fabric8

Demo

Page 26: CI / CD with fabric8

@fabric8io

github.com/fabric8io/fabric8

fabric8.io

blog.fabric8.io

let’s deliver value faster