Использование описательных конвейеров, как в вашем примере, перемещение 'скриншота' на post
должно помочь
stage("Start"){
options{
timeout(time: 1, unit: 'MINUTES')
}
steps {
// Start long command
}
}
post {
always {
// take Screenshot
archiveArtifacts '1.jpg'
}
}
Если вы решите попробовать скриптовые конвейеры (или включают скрипт блок на свой текущий), вы можете сделать что-то вроде
try {
timeout(20) {
// Start long command
}
} finally {
// take Screenshot
}
Поскольку вы упоминаете «снимок экрана» в конвейере, который по своей природе безголовый, мне интересно, что вы имеете в виду.
Если вы хотите сделать снимок экрана интеграционного теста в WebDriver, Selenium или аналогичном, это должен быть сценарий тестирования, у которого есть тайм-аут и который делает снимок экрана при ошибке.
Пожалуйста, объясните немного больше своего сценария, чтобы дать лучший ответ.