liveBook · Manning

Module approval process

As explained in Infrastructure as Code, Patterns and Practices: With examples in Python and Terraform

A module approval process is a controlled review workflow that evaluates module changes before they are released for use.

A module approval process reviews infrastructure-module changes before releasing them for use. A team can update a shared module, but a build system pauses release until designated approvers assess the change. section 5.4

A practical workflow is:

  • Submit the changed module to the repository. section 5.4
  • Notify infrastructure approvers and pause the build. section 5.4
  • Request subject-matter review when the change affects specialized systems. section 5.4
  • Release the module only after approval and verified migration steps. section 5.4

Database version change

The Beans team changes a database module to PostgreSQL 12. Review discovers that the upgrade could delete the previous database and create an empty one, so database specialists verify migration practices before release. section 5.4

Figure 5.13 An application team can update the database module. However, the team must wait for approval from subject-matter experts before being able to use the new release.

Shows the release gate between an application team's module update and expert approval. section 5.4

Figure 5.14 For disruptive module updates, the application team submits a ticket to the database team to verify database migration steps before releasing a new module version.

Shows specialist verification for disruptive database updates before releasing a module version. section 5.4

How Infrastructure as Code, Patterns and Practices: With examples in Python and Terraform covers it

How deep it goes
Defines an approval gate, specialist escalation, and migration verification, but does not specify implementation tooling.
Examples
Uses a PostgreSQL 12 module change that could delete an existing database and create an empty replacement.
What it assumes
Assumes established module development standards and processes, while teaching when specialist review is necessary.
What you can do after
Operate a release gate that routes risky module changes to infrastructure and database approvers.
How it connects
Connects module standards, self-service infrastructure, build systems, security, and database migration.

Related concepts

This explainer was generated by Manning's knowledge graph from the text of Infrastructure as Code, Patterns and Practices: With examples in Python and Terraform. The section links point to the parts of the book it draws on.