Post on 16-Jan-2017
The Transition from Continuous Integration to continuous Delivery
Joannah Nanjekyenanjekyejoannah@gmail.com
@JoannahNanjekyeGeek night kampala
● Joannah Nanjekye● Programmer , Fintech Uganda Limited● .Net and Ruby.● Interests
systems programming
About me
Outline
● Overview of CI● Continuous delivery● Demo
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
A Typical CI workflow
The last mile to a release
last mile
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
Release management Antipatterns
● Manual deployments● Wait until development is done to release.● Manual configuration management.
There is need for repeatable,reliable and reusable way of ensuring reliable releases;
Continuous Delivery
...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..
Goal
● High Quality releases● Low cycle time
Continuous delivery setup
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
Continous what????
what is required to do CD● Automation of the delivery process.
○ Automated testing○ Continuous integration○ Automated deployment
● The ‘DevOps’ culture of delivery.
Benefits of Continuous delivery
● Making release a non-issue.● Faster Feedback .● Believable progress.● Accelerated time to market.
challenges
● Automated tests● Developer training● Incremental releases are complicated.
Demo
Thank you