This standard ensures all infrastructure modules are versioned and maintain backwards compatibility, enabling safe and predictable evolution of infrastructure. It reduces disruption and supports collaborative, multi-team environments.
Aligned to our "Infrastructure as Code (IaC) & Policy as Code" policy, this standard enhances stability, reusability, and trust in automation. Without it, changes can break dependent systems and increase operational risk.
Level 1 – Initial: Infrastructure code is unversioned or manually managed. Breaking changes may be introduced without awareness or control, leading to system instability.
Level 2 – Managed: Some teams version infrastructure modules, but practices are inconsistent. Compatibility is not routinely tested, and downstream consumers may be impacted by changes.
Level 3 – Defined: All infrastructure modules are versioned using a standard approach. Teams apply semantic versioning and test for backwards compatibility before publishing changes.
Level 4 – Quantitatively Managed: Module usage, upgrade frequency, and compatibility are tracked. Changes are validated through automated pipelines, and consumers are notified proactively.
Level 5 – Optimising: Versioning and compatibility feedback loops are fully integrated. Teams co-design shared modules, improve reuse patterns, and continuously refine practices to ensure safe, scalable infrastructure evolution.