Skip to main content
Мы публикуем частые обновления нашей документации, и перевод этой страницы может все еще выполняться. Актуальные сведения см. в документации на английском языке.

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

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

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

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

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

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

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

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

  1. На экземпляр GitHub Enterprise Server перейдите на главную страницу репозитория. 1. Под именем репозитория щелкните Действия. Вкладка "Действия" на главной панели навигации по репозиторию 1. На левой боковой панели щелкните нужный рабочий процесс.

    Снимок экрана: левая боковая панель вкладки "Действия". Рабочий процесс CodeQL выделен темно-оранжевым цветом. 1. В списке запусков рабочего процесса щелкните имя запуска, чтобы просмотреть сводку по выполнению рабочего процесса. 1. В правом верхнем углу рабочего процесса повторно выполните задания.

    • Если какие-либо задания завершились сбоем, выберите раскрывающееся меню Повторное выполнение заданий и щелкните Повторно запустить все задания.

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

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

  3. Щелкните Повторное выполнение заданий.

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

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

gh run rerun RUN_ID

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

gh run rerun RUN_ID --debug

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

gh run watch

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

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

  1. На экземпляр GitHub Enterprise Server перейдите на главную страницу репозитория. 1. Под именем репозитория щелкните Действия. Вкладка "Действия" на главной панели навигации по репозиторию 1. На левой боковой панели щелкните нужный рабочий процесс.

    Снимок экрана: левая боковая панель вкладки "Действия". Рабочий процесс CodeQL выделен темно-оранжевым цветом. 1. В списке запусков рабочего процесса щелкните имя запуска, чтобы просмотреть сводку по выполнению рабочего процесса.

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

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

  4. Щелкните Повторное выполнение заданий.

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

gh run rerun RUN_ID --failed

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

gh run rerun RUN_ID --failed --debug

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

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

  1. На экземпляр GitHub Enterprise Server перейдите на главную страницу репозитория. 1. Под именем репозитория щелкните Действия. Вкладка "Действия" на главной панели навигации по репозиторию 1. На левой боковой панели щелкните нужный рабочий процесс.

    Снимок экрана: левая боковая панель вкладки "Действия". Рабочий процесс CodeQL выделен темно-оранжевым цветом. 1. В списке запусков рабочего процесса щелкните имя запуска, чтобы просмотреть сводку по выполнению рабочего процесса.

  2. Рядом с заданием, которое требуется повторно запустить, щелкните .

    Снимок экрана: страница для запуска рабочего процесса. На левой боковой панели справа от задания значок синхронизации выделен темно-оранжевым цветом.

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

  4. Щелкните Повторное выполнение заданий.

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

gh run rerun --job JOB_ID

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

gh run rerun --job JOB_ID --debug

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

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

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

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

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

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

  1. На экземпляр GitHub Enterprise Server перейдите на главную страницу репозитория. 1. Под именем репозитория щелкните Действия. Вкладка "Действия" на главной панели навигации по репозиторию 1. На левой боковой панели щелкните нужный рабочий процесс.

    Снимок экрана: левая боковая панель вкладки "Действия". Рабочий процесс CodeQL выделен темно-оранжевым цветом. 1. В списке запусков рабочего процесса щелкните имя запуска, чтобы просмотреть сводку по выполнению рабочего процесса.

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

    Снимок экрана: страница для запуска рабочего процесса. Раскрывающееся меню с меткой "Последняя #2" выделено темно-оранжевым цветом.