Continuous Delivery

  • CD is an approach of automating the steps of delivering code to production. From the time when a developer commits a change to when that change is deployed to production, any step that can be automated, should be -ie testing, change control, the process of deployment, etc.

  • Aim

    • is to reduce the time and effort required to deploy code.

    • improves the repeatability and auditability of your deployment process.

      • A repeatable process is inherently less risky, which can encourage organizations to release more often and with smaller changesets

      • Automating deployments greatly improves transparency, which naturally improves auditability

        • Automated deployments can also generate reports that can also help with auditing.

        • Scripts can be stored in version control, allowing for easy review

A whole ethos

  • CD generally encompases

    • CI

    • Trunk based development

    • pipelines

    • Developer led testing ie tdd

For

  • https://medium.com/defense-unicorns/5-minute-devops-continuous-delivery-faq-4aadc02c1b6e

Examples

  • https://minimumcd.org/minimumcd/

Agility and CD

  • The purpose of agility is to satisfy the customer, via continous delivery of valuable software

  • Both are linked

    • https://journal.optivem.com/p/cant-be-agile-without-cicd-and-tdd?utm_source=substack&utm_medium=email

Last updated

Was this helpful?