Skip to main content

Повторный запуск рабочих процессов и заданий

Вы можете повторно запустить рабочий процесс, все неудачные задания в выполнении рабочего процесса или определенные задания в рабочем процессе, выполняемые до 30 дней после первоначального запуска.

Кто может использовать эту функцию?

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

Tool navigation

Примечание. В GitHub Enterprise Server в настоящее время не поддерживаются средства выполнения тестов, размещенные в GitHub. Дополнительные сведения о планируемой поддержке в будущем см. в GitHub public roadmap.

Сведения о повторном запуске рабочих процессов и заданий

При повторном запуске рабочего процесса или заданий в рабочем процессе используются те же GITHUB_SHA (commit SHA) и GITHUB_REF (Git ref) исходного события, активировавшего запуск рабочего процесса. Рабочий процесс будет использовать привилегии субъекта, который изначально активировал рабочий процесс, а не привилегии субъекта, который инициировал повторное выполнение. Вы можете повторно запустить рабочий процесс или задания в рабочем процессе в течение 30 дней после первоначального запуска. Повторно запускать задания в рабочем процессе после того, как его журналы прошли свои ограничения хранения, нельзя. Дополнительные сведения см. в разделе "Ограничения использования, выставление счетов и администрирование". При повторном запуске рабочего процесса или заданий в рабочем процессе можно включить ведение журнала отладки для повторного выполнения. Это позволит включить ведение журнала диагностики средства выполнения и ведение журнала отладки шага для повторного выполнения. Дополнительные сведения о ведении журнала отладки см. в разделе "Включение ведения журналов отладки".

Повторный запуск всех заданий в рабочем процессе

  1. На GitHubперейдите на главную страницу репозитория.

  2. Под именем репозитория щелкните Actions.

    Снимок экрана: вкладки для репозитория github/docs. Вкладка "Действия" выделена оранжевым контуром.

  3. На левой боковой панели щелкните нужный рабочий процесс.

    Снимок экрана: левая боковая панель вкладки "Действия". Рабочий процесс CodeQL описывается в темно-оранжевый цвет.

  4. В списке запусков рабочего процесса щелкните имя запуска, чтобы просмотреть сводку по выполнению рабочего процесса.

  5. В правом верхнем углу рабочего процесса повторно запустите задания.

    • Если не удалось выполнить задания, выберите раскрывающееся меню "Синхронизация" aria-hidden="true" %} Повторное выполнение заданий и нажмите кнопку "Повторно выполнить все задания".

    • Если не удалось выполнить задания, нажмите кнопку "Повторно выполнить все задания".

  6. Чтобы включить ведение журнала диагностики для средства выполнения и ведение журнала пошаговой отладки для повторного выполнения, установите флажок Включить ведение журнала отладки.

  7. Нажмите кнопку "Повторно выполнить задания".

Дополнительные сведения о GitHub CLIсм. в разделе "Сведения о GitHub CLI".

Чтобы повторно запустить неудачно завершившийся рабочий процесс, используйте подкоманду run rerun. Замените run-id идентификатором неудачного запуска, который вы хотите запустить повторно. Если не указать run-id, GitHub CLI отобразит интерактивное меню для выбора последнего неудачного запуска.

gh run rerun RUN_ID

Чтобы включить ведение журнала диагностики runner и ведение журнала отладки шага для повторного выполнения, используйте --debug флаг.

gh run rerun RUN_ID --debug

Чтобы просмотреть ход выполнения рабочего процесса, используйте подкоманду run watch и выберите нужное выполнение в интерактивном списке.

gh run watch

Повторное выполнение неудачно завершившихся заданий в рабочем процессе

Если какие-либо задания в рабочем процессе завершились неудачно, можно повторно запустить только те задания, которые не удалось выполнить. При повторном запуске заданий, которые завершились неудачно, для всех таких заданий и зависимых от них объектов запускается новый рабочий процесс. Все выходные данные для всех успешных заданий в предыдущем запуске рабочего процесса будут использоваться для повторного запуска. Все артефакты, созданные при первоначальном запуске, будут доступны в повторном запуске. Все правила защиты развертывания, переданные в предыдущем запуске, автоматически передаются повторно.

  1. На GitHubперейдите на главную страницу репозитория.

  2. Под именем репозитория щелкните Actions.

    Снимок экрана: вкладки для репозитория github/docs. Вкладка "Действия" выделена оранжевым контуром.

  3. На левой боковой панели щелкните нужный рабочий процесс.

    Снимок экрана: левая боковая панель вкладки "Действия". Рабочий процесс CodeQL описывается в темно-оранжевый цвет.

  4. В списке запусков рабочего процесса щелкните имя запуска, чтобы просмотреть сводку по выполнению рабочего процесса.

  5. В правом верхнем углу рабочего процесса выберите раскрывающееся меню Повторное выполнение заданий и нажмите кнопку "Повторно выполнить неудачные задания".

  6. Чтобы включить ведение журнала диагностики для средства выполнения и ведение журнала пошаговой отладки для повторного выполнения, установите флажок Включить ведение журнала отладки.

  7. Нажмите кнопку "Повторно выполнить задания".

Чтобы повторно запустить неудачные задания в рабочем процессе, используйте подкоманду run rerun с флагом --failed. Замените run-id идентификатором запуска, для которого вы хотите повторно запустить неудачные задания. Если не указать run-id, GitHub CLI отобразит интерактивное меню для выбора последнего неудачного запуска.

gh run rerun RUN_ID --failed

Чтобы включить ведение журнала диагностики runner и ведение журнала отладки шага для повторного выполнения, используйте --debug флаг.

gh run rerun RUN_ID --failed --debug

Повторный запуск определенного задания в рабочем процессе

При повторном запуске определенного задания в рабочем процессе для этого задания и всех зависимых от него объектов запускается новый рабочий процесс. Все выходные данные для всех остальных заданий в предыдущем запуске рабочего процесса будут использоваться для повторного запуска. Все артефакты, созданные при первоначальном запуске, будут доступны в повторном запуске. Все правила защиты развертывания, переданные в предыдущем запуске, автоматически передаются повторно.

  1. На GitHubперейдите на главную страницу репозитория.

  2. Под именем репозитория щелкните Actions.

    Снимок экрана: вкладки для репозитория github/docs. Вкладка "Действия" выделена оранжевым контуром.

  3. На левой боковой панели щелкните нужный рабочий процесс.

    Снимок экрана: левая боковая панель вкладки "Действия". Рабочий процесс CodeQL описывается в темно-оранжевый цвет.

  4. В списке запусков рабочего процесса щелкните имя запуска, чтобы просмотреть сводку по выполнению рабочего процесса.

  5. В разделе "Задания" левой боковой панели рядом с заданием, которое требуется повторно выполнить, щелкните .

  6. Чтобы включить ведение журнала диагностики для средства выполнения и ведение журнала пошаговой отладки для повторного выполнения, установите флажок Включить ведение журнала отладки.

  7. Нажмите кнопку "Повторно выполнить задания".

Чтобы повторно запустить определенное задание в рабочем процессе, используйте подкоманду run rerun с флагом --job. Замените job-id идентификатором задания, которое вы хотите запустить повторно.

gh run rerun --job JOB_ID

Чтобы включить ведение журнала диагностики runner и ведение журнала отладки шага для повторного выполнения, используйте --debug флаг.

gh run rerun --job JOB_ID --debug

Повторное выполнение рабочих процессов и заданий с помощью повторно используемых рабочих процессов

Ссылки на многократно используемые рабочие процессы из общедоступных репозиториев могут указывать код SHA, тег выпуска или имя ветви. Дополнительные сведения см. в разделе Повторное использование рабочих процессов.

При повторном запуске рабочего процесса, в котором есть ссылка на повторно используемый рабочий процесс, формат которой отличен от SHA, следует учитывать важные особенности поведения.

  • Повторное выполнение всех заданий в рабочем процессе будет использовать повторно используемый рабочий процесс, на который предоставлена ссылка. Дополнительные сведения о повторном выполнении всех заданий в рабочем процессе см. в разделе "Повторный запуск рабочих процессов и заданий".
  • Повторное выполнение завершившихся неудачей заданий или конкретного задания в рабочем процессе выполняется с помощью повторно используемого рабочего процесса в том же SHA фиксации, который использовался для первой попытки. Дополнительные сведения о повторном выполнении неудачных заданий в рабочем процессе см. в разделе "Повторный запуск рабочих процессов и заданий". Дополнительные сведения о повторном выполнении определенного задания в рабочем процессе см. в разделе "Повторный запуск рабочих процессов и заданий".

Проверка предыдущих запусков рабочего процесса

Вы можете просмотреть результаты предыдущих попыток выполнения рабочего процесса. Вы также можете просмотреть предыдущие запуски рабочего процесса с помощью API. Дополнительные сведения см. в разделе Конечные точки REST API для выполнения рабочих процессов.

  1. На GitHubперейдите на главную страницу репозитория.

  2. Под именем репозитория щелкните Actions.

    Снимок экрана: вкладки для репозитория github/docs. Вкладка "Действия" выделена оранжевым контуром.

  3. На левой боковой панели щелкните нужный рабочий процесс.

    Снимок экрана: левая боковая панель вкладки "Действия". Рабочий процесс CodeQL описывается в темно-оранжевый цвет.

  4. В списке запусков рабочего процесса щелкните имя запуска, чтобы просмотреть сводку по выполнению рабочего процесса.

  5. Справа от имени запуска выберите раскрывающееся меню "Последняя версия" и щелкните предыдущую попытку выполнения.