Manifest Deployment
Manifest Driven Deployment using Desired State
At deployment time, the manifest is merged into the Terraform rules and applied. Terraform will only apply the changes needed to align the environment to the declared state.
graph LR
Key["Legend
Blue - IaC & CM
Green - Application Stack"]
subgraph ado["Azure DevOps"]
git[(Git)]
build-artefact[(Build)]
iac["release.ps1"]
package-artefact[(Artifacts)]
app["release.ps1"]
end
subgraph az["Azure"]
qa
pp
pr
end
registry[(Docker Registry)]
git --CI--> build-artefact
build-artefact --CD--> iac
package-artefact --CD--> app
registry -. "pull image" .-> qa
app -. "terraform apply" .-> qa
iac -. "terraform apply" .-> qa
classDef infra fill:LightBlue
class iac,az infra
classDef app-stack fill:LightGreen
class registry,app app-stack
Drift
Not every release makes it to production, as a result there can be drift between environments as releases make part journeys. Terraform will ensure that this drift is remediated as the next release progresses to production.