jenkins - 詹金斯一步一步与用户交互并失败
问题描述
在声明性 Jenkinsfile 中,我有一个步骤让用户交互继续或中止剩余的工作。在某个超时后,作业终止。
stage("User Confirmation") {
steps {
timeout(time: 5, unit: 'MINUTES') {
input "Are you sure you want to deploy to ${params.omgeving} ? "
}
}
}
但是,我想取消超时,以便在用户不回答问题时继续工作。我怎样才能做到这一点?
解决方案
您可以使用try/catch
块来输入https://support.cloudbees.com/hc/en-us/articles/230922428-Pipeline-How-to-add-an-input-step-that-continues -if-aborted-using -价值
或catchError/warnError
詹金斯https://www.jenkins.io/doc/pipeline/steps/workflow-basic-steps/#catcherror-catch-error-and-set-build-result-to-failure
在您的情况下的方法会像所以
stage("User Confirmation") {
steps {
script {
try {
timeout(time: 5, unit: 'MINUTES') {
input "Are you sure you want to deploy to ${params.omgeving} ? "
}
} catch (err) {
print("continue")
}
}
}
}
推荐阅读
- python - 提取数据框中一个日期的位置
- reactjs - react js axios没有显示来自django rest api的图像
- javascript - 通过将键传递给 react 和 lodash 中的对象数组来获取值
- c# - 将类名传递给 GenericMethod
, 当 className 存储为 String - reactjs - 待办事项列表上的编辑功能
- typescript - fp-ts:如何将嵌套的`Either`/`TaskEither`“拉起”到外部类型?
- javascript - 链接 reactQuery 调用
- python - spacy 3 NER Scorer() 抛出 TypeError: score() 接受 2 个位置参数,但给出了 3 个
- java - 让 Picocli 与 Springboot 应用程序一起工作
- python - 我可以用什么代替在python中使用这个for循环