Skip to content
Latchkey

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.

Actions log
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

  1. Have a required reviewer approve the pending deployment in the run page.
  2. In environment settings, tune the wait timer and reviewer list to your release process.
  3. 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.

.github/workflows/deploy.yml
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.

Related guides

Tired of flaky CI? Latchkey auto-heals failed jobs and retries them for you. Start free →