Skip to main content

Re-running workflows and jobs

You can re-run a workflow run, all failed jobs in a workflow run, or specific jobs in a workflow run up to 30 days after its initial run.

Who can use this feature?

People with write permissions to a repository can re-run workflows in the repository.

Tool navigation

Note

Re-run workflows use the privileges of the actor who initially triggered the workflow, not the privileges of the actor who initiated the re-run. The workflow will also use the same GITHUB_SHA (commit SHA) and GITHUB_REF (git ref) of the original event that triggered the workflow run.

Re-running all the jobs in a workflow

  1. On GitHub, navigate to the main page of the repository.

  2. Under your repository name, click Actions.

    Screenshot of the tabs for the "github/docs" repository. The "Actions" tab is highlighted with an orange outline.

  3. In the left sidebar, click the workflow you want to see.

    Screenshot of the left sidebar of the "Actions" tab. A workflow, "CodeQL," is outlined in dark orange.

  4. From the list of workflow runs, click the name of the run to see the workflow run summary.

  5. In the upper-right corner of the workflow, re-run jobs.

    • If any jobs failed, select the Re-run jobs dropdown menu and click Re-run all jobs.
    • If no jobs failed, click Re-run all jobs.
  6. Optionally, to enable runner diagnostic logging and step debug logging for the re-run, select Enable debug logging.

  7. Click Re-run jobs.

  1. To re-run a failed workflow run, use the run rerun subcommand, replacing RUN_ID with the ID of the failed run that you want to re-run. If you don't specify a run-id, GitHub CLI returns an interactive menu for you to choose a recent failed run.

    Shell
    gh run rerun RUN_ID
    

    To enable runner diagnostic logging and step debug logging for the re-run, use the --debug flag.

    Shell
    gh run rerun RUN_ID --debug
    
  2. To view the progress of the workflow run, use the run watch subcommand and select the run from the interactive list.

    Shell
    gh run watch
    

Re-running failed jobs in a workflow

  1. On GitHub, navigate to the main page of the repository.

  2. Under your repository name, click Actions.

    Screenshot of the tabs for the "github/docs" repository. The "Actions" tab is highlighted with an orange outline.

  3. In the left sidebar, click the workflow you want to see.

    Screenshot of the left sidebar of the "Actions" tab. A workflow, "CodeQL," is outlined in dark orange.

  4. From the list of workflow runs, click the name of the run to see the workflow run summary.

  5. In the upper-right corner of the workflow, select the Re-run jobs dropdown menu, and click Re-run failed jobs.

  6. Optionally, to enable runner diagnostic logging and step debug logging for the re-run, select Enable debug logging.

  7. Click Re-run jobs.

To re-run failed jobs in a workflow run, use the run rerun subcommand with the --failed flag. Replace RUN_ID with the ID of the run for which you want to re-run failed jobs. If you don't specify a run-id, GitHub CLI returns an interactive menu for you to choose a recent failed run.

gh run rerun RUN_ID --failed

To enable runner diagnostic logging and step debug logging for the re-run, use the --debug flag.

gh run rerun RUN_ID --failed --debug

Re-running a specific job in a workflow

  1. On GitHub, navigate to the main page of the repository.

  2. Under your repository name, click Actions.

    Screenshot of the tabs for the "github/docs" repository. The "Actions" tab is highlighted with an orange outline.

  3. In the left sidebar, click the workflow you want to see.

    Screenshot of the left sidebar of the "Actions" tab. A workflow, "CodeQL," is outlined in dark orange.

  4. From the list of workflow runs, click the name of the run to see the workflow run summary.

  5. Under the "Jobs" section of the left sidebar, next to the job that you want to re-run, click .

  6. Optionally, to enable runner diagnostic logging and step debug logging for the re-run, select Enable debug logging.

  7. Click Re-run jobs.

To re-run a specific job in a workflow run, use the run rerun subcommand with the --job flag. Replace JOB_ID with the ID of the job that you want to re-run.

gh run rerun --job JOB_ID

To enable runner diagnostic logging and step debug logging for the re-run, use the --debug flag.

gh run rerun --job JOB_ID --debug

Reviewing previous workflow runs

  1. On GitHub, navigate to the main page of the repository.

  2. Under your repository name, click Actions.

    Screenshot of the tabs for the "github/docs" repository. The "Actions" tab is highlighted with an orange outline.

  3. In the left sidebar, click the workflow you want to see.

    Screenshot of the left sidebar of the "Actions" tab. A workflow, "CodeQL," is outlined in dark orange.

  4. From the list of workflow runs, click the name of the run to see the workflow run summary.

  5. To the right of the run name, select the Latest dropdown menu and click a previous run attempt.