68
Ciao Continuous Integration for Apps on OpenStack Everett Toews Developer Advocate @everett_toews OpenStack Summit Nov. 3, 2014 @ 5:10 pm

Ciao: Continuous Integration for Apps on OpenStack

Embed Size (px)

DESCRIPTION

Learn how to do continuous integration for applications on OpenStack. From the OpenStack Summit Paris 2014

Citation preview

Page 1: Ciao: Continuous Integration for Apps on OpenStack

CiaoContinuous Integrationfor Apps on OpenStack

Everett Toews

Developer Advocate

@everett_toews

OpenStack SummitNov. 3, 2014 @ 5:10 pm

Page 2: Ciao: Continuous Integration for Apps on OpenStack

Intro

Developer

Page 3: Ciao: Continuous Integration for Apps on OpenStack

PMC and Committer on Apache jclouds

Page 4: Ciao: Continuous Integration for Apps on OpenStack

Intro

Advocate

Page 5: Ciao: Continuous Integration for Apps on OpenStack
Page 6: Ciao: Continuous Integration for Apps on OpenStack

Intro

Operations

Page 7: Ciao: Continuous Integration for Apps on OpenStack

Co-author of The OpenStack Ops Guide

docs.openstack.org/ops

Page 8: Ciao: Continuous Integration for Apps on OpenStack

ContinuousIntegration

(CI)

Page 9: Ciao: Continuous Integration for Apps on OpenStack
Page 10: Ciao: Continuous Integration for Apps on OpenStack

CI

Software Development

Lifecycle (SDLC)

Page 11: Ciao: Continuous Integration for Apps on OpenStack

CI

Integrate Code

Page 12: Ciao: Continuous Integration for Apps on OpenStack

CI

Frequently

Page 13: Ciao: Continuous Integration for Apps on OpenStack

CI

Frequently?

Page 14: Ciao: Continuous Integration for Apps on OpenStack

CI

Every Single Change

Page 15: Ciao: Continuous Integration for Apps on OpenStack

CI

Shared Code

Repository

Page 16: Ciao: Continuous Integration for Apps on OpenStack

CI

Automated Build

Page 17: Ciao: Continuous Integration for Apps on OpenStack

CI

Tests

Page 18: Ciao: Continuous Integration for Apps on OpenStack

CI

Detect Problems

Page 19: Ciao: Continuous Integration for Apps on OpenStack

CI forApps on OpenStack

Page 20: Ciao: Continuous Integration for Apps on OpenStack
Page 21: Ciao: Continuous Integration for Apps on OpenStack
Page 22: Ciao: Continuous Integration for Apps on OpenStack

The Developer’sPerspective

Page 23: Ciao: Continuous Integration for Apps on OpenStack

GitHub

Developer

1. PR

2. ???

4. Result

3. ???

Page 24: Ciao: Continuous Integration for Apps on OpenStack

Dev Perspective

1. Pull Request

Page 25: Ciao: Continuous Integration for Apps on OpenStack
Page 26: Ciao: Continuous Integration for Apps on OpenStack

Dev Perspective

2. ???

Page 27: Ciao: Continuous Integration for Apps on OpenStack

Dev Perspective

3. ???

Page 28: Ciao: Continuous Integration for Apps on OpenStack
Page 29: Ciao: Continuous Integration for Apps on OpenStack

Dev Perspective

4. Result

Page 30: Ciao: Continuous Integration for Apps on OpenStack
Page 31: Ciao: Continuous Integration for Apps on OpenStack
Page 32: Ciao: Continuous Integration for Apps on OpenStack
Page 33: Ciao: Continuous Integration for Apps on OpenStack
Page 34: Ciao: Continuous Integration for Apps on OpenStack

The Operator’sPerspective

Page 35: Ciao: Continuous Integration for Apps on OpenStack

GitHub

Developer

1. PR

OpenStack

2. Webhook Jenkins WorkerWorkerWorker

3. Build

4. Result

Page 37: Ciao: Continuous Integration for Apps on OpenStack
Page 38: Ciao: Continuous Integration for Apps on OpenStack

Ops Perspective

Create Server

Page 39: Ciao: Continuous Integration for Apps on OpenStack

Ops Perspective

Install Jenkins

Page 40: Ciao: Continuous Integration for Apps on OpenStack

Ops Perspective

Secure Jenkins

Page 41: Ciao: Continuous Integration for Apps on OpenStack

Ops Perspective

Jenkins Plugins

Page 42: Ciao: Continuous Integration for Apps on OpenStack

Ops Perspective

Jenkins Job

Page 43: Ciao: Continuous Integration for Apps on OpenStack

Ops Perspective

Jenkins/GitHub

Integration

Page 44: Ciao: Continuous Integration for Apps on OpenStack

Ops Perspective

Build on Commit

Page 45: Ciao: Continuous Integration for Apps on OpenStack

Ops Perspective

Build on

Pull Request

Page 47: Ciao: Continuous Integration for Apps on OpenStack

Ops Perspective

jclouds Plugin

Page 48: Ciao: Continuous Integration for Apps on OpenStack

Ops Perspective

Add New Cloud

Page 49: Ciao: Continuous Integration for Apps on OpenStack

Ops Perspective

Create Instance Template

Page 50: Ciao: Continuous Integration for Apps on OpenStack

Ops Perspective

Manual Instance

Creation

Page 51: Ciao: Continuous Integration for Apps on OpenStack

Ops Perspective

Test

Page 52: Ciao: Continuous Integration for Apps on OpenStack

Ops Perspective

Configure Dynamic Instance Creation

Page 53: Ciao: Continuous Integration for Apps on OpenStack

Fill in the ???

Page 54: Ciao: Continuous Integration for Apps on OpenStack

GitHub

Developer

1. PR

Jenkins WorkerWorkerWorker

OpenStack

2. Webhook

3. Build

4. Result

Page 55: Ciao: Continuous Integration for Apps on OpenStack

Ops Perspective

1. Pull Request

Page 56: Ciao: Continuous Integration for Apps on OpenStack
Page 57: Ciao: Continuous Integration for Apps on OpenStack

Ops Perspective

2. Webhook

Page 58: Ciao: Continuous Integration for Apps on OpenStack
Page 59: Ciao: Continuous Integration for Apps on OpenStack

Ops Perspective

3. Build

Page 60: Ciao: Continuous Integration for Apps on OpenStack
Page 61: Ciao: Continuous Integration for Apps on OpenStack

Ops Perspective

4. Result

Page 62: Ciao: Continuous Integration for Apps on OpenStack
Page 63: Ciao: Continuous Integration for Apps on OpenStack

What’s Next?

Page 64: Ciao: Continuous Integration for Apps on OpenStack

Next

Install Jenkins

with OpenStack Heat

Page 67: Ciao: Continuous Integration for Apps on OpenStack
Page 68: Ciao: Continuous Integration for Apps on OpenStack

Thank Yourack.to/ciao

developer.rackspace.com

Everett Toews

Developer Advocate

@everett_toews