Manifest Package Delivery

Manifest Driven, Repeatable Delivery from a Packaged Artefact

There is no “compiled” output from the source files in this article, so the self-contained release package capability of Continuous Delivery Automation Framework (CDAF) is used to produce a portable, re-usable deployment artefact (release.ps1 or release.sh). This package is used to release the entire stack, i.e. Kubernetes, namespaces, networking and application pods.

This is promoted through each environment, using the pipeline, and once deployed to production, the package is published to the artefact store. This provides a feed-back loop, allowing developers and other pipelines (e.g. Kubernetes Containers) to pull this package and run it to create production-like environments on demand.

graph LR subgraph ado["Azure DevOps"] git[(Git)] build-artefact[(Build)] release.ps1 publish package-artefact[(Artifacts)] end release.ps1 subgraph az["Azure"] qa pp pr end git --CI--> build-artefact build-artefact --CD--> release.ps1 --> qa --> pp --> pr --> publish --> package-artefact classDef blue fill:#007FFF class release.ps1 blue