maish saidel-keesing & naama bamberger, cisco - the openstack plugin for jenkins, openstack...

Post on 14-Aug-2015

205 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

TRANSCRIPT

Simple and Painless CI/CD

The OpenStack Plugin for JenkinsNaama Bamberger (nabamber@cisco.com)Maish Saidel-Keesing (msaidelk@cisco.com)

Monday, June 15, 2015

2© 2015 Cisco and/or its affiliates. All rights reserved

Nice to Meet You!

Integrated Infrastructure

Adiel Grosmark(agrosmar@cisco.com)

Einav Rivni(erivni@cisco.com)

@maishsk

Learn more about Cisco’s technology and solutions for OpenStack®, in three areas:

Building OpenStack

Code Contributions

Infrastructure

Using OpenStack

Operations and Management

Application Tools

Connecting OpenStack

Intercloud

Partner Ecosystem

4© 2015 Cisco and/or its affiliates. All rights reserved

CI/CD with OpenStack

5© 2015 Cisco and/or its affiliates. All rights reserved.

piedmont_fossil (flickr)

atomicshed(flickr)

kovah (flickr)

Our Goal?

A CI/CD pipeline – using OpenStack

7© 2015 Cisco and/or its affiliates. All rights reserved.

8© 2015 Cisco and/or its affiliates. All rights reserved.

Modular Stack

ardonik (flickr)

• Modularity

• Each team is responsible for their components

• Heat defines only the deployment model

ardonik (flickr)

9© 2015 Cisco and/or its affiliates. All rights reserved.

Doesn’t this complicate things?

dannyman (flickr)

10© 2015 Cisco and/or its affiliates. All rights reserved.

That is where Jenkins comes in

11© 2015 Cisco and/or its affiliates. All rights reserved.

The plugin

12© 2015 Cisco and/or its affiliates. All rights reserved.

Define Product

Generate Product Artifact

Define Deployment

Deploy on OpenStack

13© 2015 Cisco and/or its affiliates. All rights reserved.

• Required RPMs• Dependent products• HEAT template• Puppet scripts

Define Product

Generate Product Artifact

Define Deployment

Deploy on OpenStack

14© 2015 Cisco and/or its affiliates. All rights reserved.

Define Product

Generate Product Artifact

Define Deployment

Deploy on OpenStack

• Resolve versions• Download dependencies• Generate Artifacts (pom, tar, rpm)• Upload to Nexus

15© 2015 Cisco and/or its affiliates. All rights reserved.

Define Product

Generate Product Artifact

Define Deployment

Deploy on OpenStack

• What to deploy?• Where to deploy to?

• OpenStack credentials• Stack parameters

• Which YUM repo to use?

16© 2015 Cisco and/or its affiliates. All rights reserved.

• Delete old stack• Download all artifacts• Move RPMs to YUM repo• Load stack• Set parameters• Create Stack• Wait for completion

Define Product

Generate Product Artifact

Define Deployment

Deploy on OpenStack

17© 2015 Cisco and/or its affiliates. All rights reserved.

• From cloned Heat git repo• Load stack by name pattern (xx.yaml, xx.env.yaml, xx.yaml.dependencies

nested files)• Parse yaml & replace parameters (Jenkins)• Generate the createStack REST request from

the loaded data

Stack Creation

18© 2015 Cisco and/or its affiliates. All rights reserved.

• For multiple stacks, with relationships and dependencies• Database (backend)• Web application

• In the ‘product create’ step, you can set the dependent products and the order in which they will be deployed

• The Jenkins plugin will deploy the whole set

Nesting

tambako (flickr)

19© 2015 Cisco and/or its affiliates. All rights reserved.

• Input and Output parameters

Wiring

output input1 2

20© 2015 Cisco and/or its affiliates. All rights reserved.

Demo Time!!

21© 2015 Cisco and/or its affiliates. All rights reserved.

• https://github.com/foundation-runtime/jenkins-openstack-deployment-plugin

• https://github.com/ciscosystems

Links and Info

22© 2015 Cisco and/or its affiliates. All rights reserved.

Thank You

23© 2015 Cisco and/or its affiliates. All rights reserved.

24© 2015 Cisco and/or its affiliates. All rights reserved.

ScreenShots For Demo

25© 2015 Cisco and/or its affiliates. All rights reserved.

26© 2015 Cisco and/or its affiliates. All rights reserved.

27© 2015 Cisco and/or its affiliates. All rights reserved.

28© 2015 Cisco and/or its affiliates. All rights reserved.

29© 2015 Cisco and/or its affiliates. All rights reserved.

30© 2015 Cisco and/or its affiliates. All rights reserved.

31© 2015 Cisco and/or its affiliates. All rights reserved.

32© 2015 Cisco and/or its affiliates. All rights reserved.

33© 2015 Cisco and/or its affiliates. All rights reserved.

34© 2015 Cisco and/or its affiliates. All rights reserved.

35© 2015 Cisco and/or its affiliates. All rights reserved.

36© 2015 Cisco and/or its affiliates. All rights reserved.

37© 2015 Cisco and/or its affiliates. All rights reserved.

38© 2015 Cisco and/or its affiliates. All rights reserved.

39© 2015 Cisco and/or its affiliates. All rights reserved.

40© 2015 Cisco and/or its affiliates. All rights reserved.

41© 2015 Cisco and/or its affiliates. All rights reserved.

42© 2015 Cisco and/or its affiliates. All rights reserved.

top related