Kubernetes Containers

Declare Container Deployment as Terraform Package

The key component of the package is the release manifest, this declares the component versions of the solution. The desired state engine (Terraform) will ensure all components for the release align with the declaration in the manifest. These are added to your CDAF.solution file.

ner_image=rt.azurecr.io/ner:1.3.39
cache_image=rt.azurecr.io/cache:0.0.94
sts_image=rt.azurecr.io/sts:1.3.72

The CDAF release process produces the deployment asset (release.ps1 or release.sh) which is retained in the pipeline for continuous delivery (CD) stages. In this example, Azure is the hosting provider and Azure DevOps is the pipeline tool.

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

Feedback Loop

The desired combination of application components are tested in the pipeline by using the latest production release train asset to create a sandpit environment, with the new components installed and then tested using test automation assets.

Publish

Once the automated tests are complete, the release asset is published for use in the release train. This is the conclusion of the Kubernetes Containers pipeline.