transition from ci to cd

22
The Transition from Continuous Integration to continuous Delivery Joannah Nanjekye [email protected] @JoannahNanjekye Geek night kampala

Upload: nanjekye-joannah

Post on 16-Jan-2017

268 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Transition from CI to CD

The Transition from Continuous Integration to continuous Delivery

Joannah [email protected]

@JoannahNanjekyeGeek night kampala

Page 2: Transition from CI to CD

● Joannah Nanjekye● Programmer , Fintech Uganda Limited● .Net and Ruby.● Interests

systems programming

About me

Page 3: Transition from CI to CD

Outline

● Overview of CI● Continuous delivery● Demo

Page 4: Transition from CI to CD

what is continous integrationContinuous Integration is a software development practice where members of a team integrate their work frequently, usually each person integrates at least daily - leading to multiple integrations per day

http://www.martinfowler.com/articles/continuousIntegration.html

Page 5: Transition from CI to CD

A Typical CI workflow

Page 6: Transition from CI to CD

The last mile to a release

last mile

Page 7: Transition from CI to CD

The last mile

“It is hard enough for software developers to write code that works on their machine.But even when thats done,there is a long journey from there to software that is producing value since software only produces value when its in production.”

Martin Fowler

Page 8: Transition from CI to CD

Release management Antipatterns

● Manual deployments● Wait until development is done to release.● Manual configuration management.

Page 9: Transition from CI to CD
Page 10: Transition from CI to CD

There is need for repeatable,reliable and reusable way of ensuring reliable releases;

Page 11: Transition from CI to CD

Continuous Delivery

Page 12: Transition from CI to CD

...a set of practices to software delivery that aims at building software so that it is in a state where it could be in production or is releasable at any time ...

What is continous delivery..

Page 13: Transition from CI to CD

Goal

● High Quality releases● Low cycle time

Page 14: Transition from CI to CD

Continuous delivery setup

Page 15: Transition from CI to CD

You are doing CD when….

● Your software is deployable throughout its lifecycle

● Team Priority is having deployable software over working on new features

● Anybody can get fast, automated feedback on the production readiness of their systems any time somebody

makes a change to them

● You can perform push-button deployments of any version of the software to any environment on demand

http://martinfowler.com/bliki/ContinuousDelivery.html

Page 16: Transition from CI to CD

Continous what????

Page 17: Transition from CI to CD

what is required to do CD● Automation of the delivery process.

○ Automated testing○ Continuous integration○ Automated deployment

● The ‘DevOps’ culture of delivery.

Page 18: Transition from CI to CD

Benefits of Continuous delivery

● Making release a non-issue.● Faster Feedback .● Believable progress.● Accelerated time to market.

Page 19: Transition from CI to CD

challenges

● Automated tests● Developer training● Incremental releases are complicated.

Page 20: Transition from CI to CD

Demo

Page 21: Transition from CI to CD
Page 22: Transition from CI to CD

Thank you