Jenkins. Stage выполняется на windows ноде. Настроен таймаут на выполнение, по разным причинам stage иногда падает по таймауту. Для разбора полетов хотелось бы получать скриншот происходящего на винде в момент истечения таймаута, прикрепленный как артефакт к билду. Как сделать?
Pipeline - скриншот на Windows slave-ноде
Есть самый простой способ
шаг после сборки - при любом расскладе sucseed/fail
import -window root screen.jpeg
требует установленного ImageMagick
P.S. Или VNC Recorder - но с ним большие так сказать проблемы/ И Headles - но это уже совсем изврат и все в челом через VNC сервер
Чот мне кажется, что если используется pipeline (а вроде бы он и используется, раз автор топика пишет про stage), то такое не прокатит. Ведь когда сработал таймаут, процесс уже прибит, и вряд ли там чего годное можно будет на скрине увидеть.
Таймаут он внутри Jenkins - это настройка Pipilene через примерно такую конструкцию
node "1C" {
with_timeout {
sh 'main_job.sh'
} always {
sh 'create_screenshot'
}
}
Таймаут так задается:
Синтаксис декларативный если чё
Потыкаю в post
Ну как, получилось запечатлеть на скриншоте причину таймаута?
Так как для снятия скриншотов для VB уже стоит IrfanView, то в post для failure добавил аналогичную команду + archive скриншота в артефакты