POKE ME for any consultancy

Sunday, September 17, 2023

Keys to Continuous Delivery

 

  • Process should be automated

  • Reduces the number of features introduced per release, minimizing shock to users

  • Will reduce the standard release cycle

  • Changes approach to releasing software from an event to a non-event

  • Helps to avoid off-hour, high risk, expensive deployments

  • Know your rollback plan (do you rollback or roll forward only)

  • Build in health checks



Improve Deployments-DevOps

 Here are some common things that DevOps teams do to improve software releases:

  • Increase efficiency – less waste

  • Decrease time to commit software changes

  • Automate tests

  • Identify defects/issues quickly

  • Automate the build process

  • Simplify the deployment process

  • Make deployments reproducible

  • Automate as much as possible



How CI Improves Efficiency

 

  • Simplify Merges

  • Rapid Feedback

    • Identify problems early

    • Makes bugs easier to find

  • Reduce bug accumulation

  • Visibility (team and stakeholders)

  • Builds Automated 

    • minimizes manual intervention

    • plug-ins (i.e. for static code analysis, gathering metrics)

  • Precursor to Continuous Delivery & Deployment


Principles of Continuous Integration

 

  • Maintain a code repository

  • Automate the build

  • Make the build self-testing

  • Everyone commits to the baseline every day

  • Every commit (to baseline) should be built

  • Keep the build fast

  • Test in a clone of the production environment

  • Make it easy to get the latest deliverables

  • Everyone can see the results of the latest build

  • Facilitate automated deployments