liveBook · Manning

Approval decision

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

Manual approval is a human authorization step that permits a pending software or infrastructure change to proceed.

Manual approval is a human quality gate that pauses an infrastructure delivery pipeline after testing and before production deployment. It lets a reviewer authorize a pending change. section 7.1.2

A typical pipeline deploys infrastructure to a testing environment, runs integration and end-to-end tests, then waits for approval. Approval improves confidence but can accumulate changes into large batches that make failures harder to isolate. section 7.1.2 section 7.1.3

Choose the delivery path according to the change:

  • Require approval for new or major changes, such as deploying a new infrastructure component or enabling SSL across services. section 7.1.4
  • Bypass approval for standard changes with predictable behavior and a documented rollback plan, or for urgent emergency fixes. section 7.1.4
  • Keep review for infrastructure modules when changes involve specialized data configurations; isolate emergency fixes with a new version or branch. section 7.1.5

Production delivery gate

A change is pushed to source control, deployed to a testing environment, and checked by integration and end-to-end tests. A teammate then reviews the results and approves production deployment. section 7.1.2

Figure 7.4 Continuous delivery automatically deploys and runs infrastructure changes in a testing environment and waits for manual approval for production.

Trace the flow from automated testing to the manual production gate. section 7.1.2

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

How deep it goes
Explains pipeline placement, batching risks, change categories, and module exceptions without detailing approval-tool implementation.
Examples
Uses testing environments, SSL enablement, new infrastructure components, database modules, and operating-system-image rollbacks as delivery examples.
What it assumes
Assumes familiarity with CI/CD, automated testing, source control, and infrastructure changes; emphasizes building testing and failure-recovery confidence before removing approval.
What you can do after
Operate/configure delivery pipelines that pause for review, classify changes, and bypass approval only when testing and rollback confidence justify automation.
How it connects
Connects manual approval with continuous delivery, continuous deployment, integration testing, end-to-end testing, rollback plans, and infrastructure modules.

Also explained in

Compare how 2 books explain approval decision →

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.