GitHub Actions Environment Wait Timer / Reviewers Blocking Deploys
A job referencing a protected environment is paused - waiting on a required reviewer, sitting out a wait timer, or blocked because the branch is not allowed by the environment deployment branch policy.
What this error means
A deploy job shows "Waiting for review" or a pending timer and never starts, or fails immediately because the current branch is not permitted to deploy to that environment.
Deployment to environment "production" is waiting for approval from
required reviewers.
# or
Branch "feature/x" is not allowed to deploy to production due to
environment protection rules.Common causes
Required reviewers or wait timer not satisfied
A protected environment can require manual approval and enforce a wait timer. The job pauses until a reviewer approves and the timer elapses.
Deployment branch policy excludes the branch
If the environment restricts deployments to specific branches, a run from another branch is rejected before the job runs.
How to fix it
Approve, or adjust the protection rules
- Have a required reviewer approve the pending deployment in the run page.
- In environment settings, tune the wait timer and reviewer list to your release process.
- Add the intended branches to the deployment branch policy if they should deploy.
Reference the environment correctly
Declare the environment on the job so the gate applies where you expect.
jobs:
deploy:
runs-on: ubuntu-latest
environment:
name: production
url: ${{ steps.deploy.outputs.page_url }}How to prevent it
- Keep environment reviewers and branch policies aligned with your release flow.
- Use wait timers deliberately; they pause every deployment.
- Limit protected environments to jobs that truly deploy.