Date post: | 14-Apr-2017 |
Category: |
Software |
Upload: | trimble-navigations-ltd |
View: | 25 times |
Download: | 0 times |
Continuous Delivery
Shamika Ariyawansa
What is it ?
*Image source: http://blog.crisp.se/2013/02/05/yassalsundman/continuous-delivery-vs-continuous-deployment
Complete Picture
*Image source: http://www.strategybeach.com/wp-content/uploads/2014/01/Capture3.png
Pre-requisites : Environment Formation1.Formation of the environment infrastructure. - (No of instances,
DBs, ELBs, other services - AWS Opsworks/Cloudformation is used)
2.Runtimes and necessary agents will be installed. - (JRE, CodeDeploy Agent, Opsworks Agent)
Artifacts of a Deployment1.Environment based configurations - CM server is needed ( eg:-
puppet, chef (opsworks) )
2.DB Scripts
3.External dependant configurations. (eg:- API creations in API Cloud, Adding Fields in safenet)
4.Application Artifacts. (Jars, Wars)
Anything else ?
What we have to do ?1. Write the code well :).
2. Review the code.
3. Commit to a deployment branch (eg:- Dev)
4. Update the configuration scripts (if any) in Chef (opsworks).
Continuous Deployment Process per EnvBuild Unit Test Update
Config RepoTrigger
Deployment
Config Deployment
ApplicationDeployment
Locate the Deployment
Group Instances
Notify the Instances
Cleans previous Deployment
Run Pre Deployment Scripts (eg:- db)
Send Notifications
Start Application
Run Integration Test ???
Deployment Concerns 1.Rolling Deployments. (One at a time)
2.Deployment Failures ? - Rollback to previous version.
3.Auto-scalled a new instances.
Handles them all
DemoHow the formation is done using OpsWorks….
Simple deployment consider my computer as the Jenkins……
How the progress is tracked via Code-Deploy/Emails…..
Dev->QA->STG 1.Do the developer testing in Dev Env.
2.If everything is looks good. Merge the code to QA branch.
3.Above cycle continues and deployments will be available in QA.
4.QA tests.
5.Merge the things to STG Branch.
6.Deployment will be available in STG
7.To Prod ? Continuous Deployment ? Your thoughts ?
What is next ?Integrate with our GIt Lab
Needs a orchestrator to view the progress - Integrate with JIRA
Integrate with TPAAS env ? Or New environment ?
Thanks !!!!
Questions ?