Skip to main content

Enterprise Server 3.21 в настоящее время доступен в качестве кандидата на выпуск.

Справочник по отмене рабочего процесса

Найдите информацию о шагах GitHub , которые предпринимаются для отмены запуска рабочего процесса.

При отмене выполнения рабочего процесса может быть запущено другое программное обеспечение, использующее ресурсы, связанные с выполнением рабочего процесса. Чтобы освободить ресурсы, связанные с запуском рабочего процесса, полезно понять шаги GitHub , которые выполняются для отмены запуска рабочего процесса.

  1. Чтобы отменить запуск рабочего процесса, сервер повторно оценивает условия if для всех выполняющихся в настоящее время заданий. Если условие оценивается как true, задание не отменяется. Например, условие if: always() будет иметь значение true, и задание продолжит выполняться. Если условие отсутствует, это эквивалентно условию if: success(), которое выполняется только в случае успешного завершения предыдущего шага.
  2. Для заданий, которые необходимо отменить, сервер отправляет всем компьютерам выполнения сообщение об отмене с указанием соответствующих заданий.
  3. Для заданий, которые продолжают выполняться, сервер повторно оценивает условия if для незавершенных шагов. Если условие оценивается как true, шаг продолжает выполняться. Выражение можно использовать cancelled для применения проверки cancelled()состояния. Дополнительные сведения см. в разделе Оценка выражений в рабочих процессах и действиях.
  4. Для шагов, которые необходимо отменить, компьютер-средство запуска отправляется SIGINT/Ctrl-C в процесс записи шага (node для действий JavaScript, docker для действий контейнера и bash/cmd/pwd при использовании run на шаге). Если процесс не завершается в течение 7500 мс, средство выполнения отправит SIGTERM/Ctrl-Break в процесс, а затем будет ждать завершения процесса еще 2500 мс. Если процесс по-прежнему выполняется, средство выполнения завершает его дерево.
  5. После 5-минутного тайм-аута после отмены сервер принудительно завершает все задания и шаги, отмеченные как отмены, которые всё ещё выполняются.