Overview
Why Use Environment Progression?
Environment progression rules help you:- Enforce deployment order - Prevent skipping environments in your pipeline
- Catch issues early - Problems surface in lower environments first
- Build confidence - Each environment validates before the next
- Meet compliance - Satisfy audit requirements for change promotion
Configuration
Add an environment progression rule to your policy:Properties
Selector for the prerequisite environment(s). The release must be successfully
deployed to environments matching this selector before proceeding.
Percentage of targets in the prerequisite environment that must succeed
(0-100). Use a lower value if some targets are expected to be unavailable.
Job statuses considered successful. Defaults to standard success statuses.
Minutes to wait after the dependency succeeds before allowing progression. Use
this to ensure the release has time to stabilize.
Maximum age (in hours) of the dependency deployment. If the prerequisite
deployment is older than this, progression is blocked until redeployed.
Common Patterns
Simple Linear Progression
Enforce QA → Staging → Production order:Soak Time Requirements
Require the release to “soak” in staging before production:Freshness Requirements
Block promotion if the staging deployment is too old:Partial Success Threshold
Allow promotion when most (not all) targets succeed:Complete Pipeline with All Options
Full-featured production gate:Progression Lifecycle
1. Version Created
A new deployment version is created and ready for release.2. Lower Environment Deployment
The version is deployed to the prerequisite environment (e.g., QA).3. Success Evaluation
Ctrlplane evaluates if the deployment meets success criteria:- Job status matches
successStatuses - Success percentage meets
minimumSuccessPercentage
4. Soak Time (if configured)
IfminimumSoakTimeMinutes is set, the clock starts after success.
5. Progression Allowed
Once all criteria are met, the version can proceed to the next environment.Environment Selector Examples
By Name
By Multiple Names
By Metadata
Best Practices
Timing Guidelines
| Transition | Soak Time | Max Age | Notes |
|---|---|---|---|
| Dev → QA | 0 | - | Fast iteration |
| QA → Staging | 0-15 min | 24h | Quick validation |
| Staging → Production | 30-60 min | 48h | Thorough soak |
| Critical services | 2-4 hours | 24h | Extended observation |
Recommendations
- ✅ Start with simple progression, add soak time later
- ✅ Use
maximumAgeHoursto prevent stale promotions - ✅ Combine with verification for automated quality gates
- ✅ Use lower
minimumSuccessPercentagefor environments with flaky tests - ✅ Document your progression requirements for the team
Next Steps
- Policies Overview - Learn about policy structure
- Verification - Add automated health checks
- Gradual Rollouts - Control deployment pace