Skip to content

Road to Production

What this connects

This is the end-to-end path from PR to production with security and traceability in one loop:

PR → Preview → Merge to maintest → promoted staging → promoted prod.

How secure delivery flows

flowchart LR
Developer(("Developer")) --> PR["PR + checks"]
PR --> Reviewer(("Reviewer"))
Reviewer --> Evidence["Signed evidence"]
Evidence --> RM(("Release Manager"))
RM --> Prod["Approve staging → prod"]
Prod --> Audit["Audit trail"]
style Developer fill:#dbeafe,stroke:#2563eb,color:#172554
style Reviewer fill:#fef3c7,stroke:#d97706,color:#451a03
style RM fill:#ede9fe,stroke:#7c3aed,color:#2e1065

Why this model

Government platforms need delivery speed and evidence. Automation handles checks that should be repeatable. People approve the steps where judgment is required, and those approvals are logged.

Stage intent

StagePurposeControls
PreviewValidate each change before mergePR label, sandbox env
TestConfirm merge quality continuouslyRequired checks + auto-deploy
StagingValidate near-production behaviorManual promotion + signed operator
ProductionPublic traffic approval pointManual production promotion only

Security and compliance posture

  • Only authorized roles can trigger environment promotion.
  • Immutable image plus immutable Git history prevents silent artifact drift.
  • Every promotion and override is logged through audit systems.
  • GitHub governance scripts enforce org defaults, rulesets, reusable workflow policy, and repo-level production gates.

What to do if the process breaks

  • If checks fail, fix the branch and do not promote.
  • If shipping is blocked by an emergency, use the override process with written justification.
  • After override, schedule post-incident review at CCB cadence.

Benefits

  • Faster incident containment.
  • Clear owner traceability for every deploy decision.
  • Repeatable release evidence for audits.

Automation

Secure delivery automation should collect evidence as work happens. It should prove what ran, who approved it, which checks passed, and which artifact reached each environment. It should not remove human approval for production or emergency exceptions.

Useful automation:

  • Store build, test, scan, and deploy evidence with the release.
  • Link PR, commit, image digest, environment, and approver records.
  • Block promotion when required checks, scans, or approvals are missing.
  • Notify security and platform owners when restricted repos change.
  • Export audit evidence without manual screenshots or chat archaeology.

See also