Установка ограничения по времени для каждого этапа - PullRequest
0 голосов
/ 13 ноября 2018

Я создал конвейер DevOps с несколькими этапами.Весь трубопровод занимает много времени, чтобы закончить.Поэтому я хочу быстрый способ отслеживать, застрял конвейер на каком-либо этапе или нет, и хотел бы добавить более качественный мониторинг на уровне этапа.

Есть ли возможность установить ограничение времени на этапе послео котором я получу уведомление о задержке.Не нужно отменять этап за пределами срока, просто сообщите мне.

Ответы [ 2 ]

0 голосов
/ 13 ноября 2018

Вы можете установить время ожидания для шага сборки, а также установить флажок «Продолжить при ошибке». Однако тайм-аут отменяет этап сборки, который занимает слишком много времени, поэтому они не будут завершены успешно. Это зависит от того, как реализован шаг / сценарий сборки.

Затем после каждого шага добавьте шаг условной сборки для отправки уведомления в mail / slack / команды / что угодно.

Простой способ проверить это - создать шаг построения командной строки и добавить «Sleep 120» в качестве команды. Затем установите время ожидания этого шага сборки на 1 минуту.

enter image description here

Время ожидания отображается в журнале: enter image description here

Это журнал шагов сборки: 1. Эхо "Начинаю спать" 2. спать 120 3. эхо "спало"

Обратите внимание, что спящий также распечатан! enter image description here

0 голосов
/ 13 ноября 2018

Похоже, вы не можете установить время ожидания для этапа , однако вы можете установить время ожидания для отдельных заданий агента . Это означает, что если на вашей сцене ровно одна агентская работа, то это то, что вам нужно. Если на вашей стадии более одной работы, вам придется разделить желаемое время ожидания на меньшие. Смотрите скриншот, вы можете установить его здесь.

Что касается второй части вашего вопроса, такая вещь не поддерживается. Но вы всегда можете обмануть. Есть несколько способов, которыми вы можете сделать это. Самым простым вариантом, вероятно, будет иметь дополнительное задание агента, которое запускается таким образом, чтобы оно выполнялось одновременно с другой / основной работой. В этой работе у вас может быть сценарий PS, выполняющий цикл в течение всего времени ожидания, и если он превышает время ожидания, он отправляет уведомление о задержке.

enter image description here

...