Serving Pull Requests with Jenkins

14
Serving Pull Requests with Jenkins Seth Goings, DevTools Team Lead @ Deis

Transcript of Serving Pull Requests with Jenkins

Page 1: Serving Pull Requests with Jenkins

Serving Pull Requests with Jenkins

Seth Goings, DevTools Team Lead @ Deis

Page 2: Serving Pull Requests with Jenkins

Setting Up Your Own PaaS and CI/CD Pipeline

http://tinyurl.com/jnxn8ln

Page 3: Serving Pull Requests with Jenkins

We’re tasked with building the deployment system for the company’s blog

… exciting, I know

Page 4: Serving Pull Requests with Jenkins

Pull Requests

● Run the build/tests/etc● Stand up an actual instance of the blog in Deis (separate app per PR)

Production (master branch)

● Run the build/tests/etc● Deploy new version of the blog in Deis (with no downtime)

Page 5: Serving Pull Requests with Jenkins
Page 6: Serving Pull Requests with Jenkins
Page 7: Serving Pull Requests with Jenkins
Page 8: Serving Pull Requests with Jenkins

http://tinyurl.com/hen848b

2.0

Page 10: Serving Pull Requests with Jenkins
Page 11: Serving Pull Requests with Jenkins

But wait...

● No GitHub Pull Request Plugin Support in Jenkins Pipeline Plugin (yet)

● No Pipeline Visualization in OSS Jenkins (yet)

Page 12: Serving Pull Requests with Jenkins

The Pipeline To Today

Step 1

Acquire (Jenkins)

docker-machine

docker-compose

Step 2

Deploy (Deis)

rigger configure

rigger deploy

Step 3

Connect

Jenkins -> GitHub (API key)

Add SSH Key for Deis in Jenkins

Step 4

Experiment

Create pr builder job

Create production job

Page 13: Serving Pull Requests with Jenkins

Ramping Up With Rigger

http://tinyurl.com/z9wesjt