在Jenkins2之前我使用Build Pipeline Plugin构建并手动将应用程序部署到服务器。 旧配置:
这很好用,但我想使用从groovy脚本(Jenkinsfile)生成的新Jenkins管道来创建手动步骤。
到目前为止,我提出了input
jenkins步骤。
使用过的jenkinsfile脚本:
node {
stage 'Checkout'
// Get some code from repository
stage 'Build'
// Run the build
}
stage 'deployment'
input 'Do you approve deployment?'
node {
//deploy things
}
但是这等待用户输入,注意到构建没有完成。我可以向input
添加超时,但这不允许我选择/触发构建并稍后部署它:
我如何使用新的jenkins-pipeline与Build Pipeline Plugin之前的手动步/触发相同/类似的结果?
答案 0 :(得分:23)
这是Jenkins Pipeline能力IMO的巨大差距。由于管道是单个作业,因此绝对难以提供。一种解决方案可能是将工作空间“存档”为“工件”(tar和存档** / *为“workspace.tar.gz”),然后让另一个管道复制工件并将其解压缩到新工作空间中。这允许第二个管道在前一个管道停止的地方拾取。当然,没有办法证明第二条管道不能轮流执行或不止一次。哪个太糟糕了。 Delivery Pipeline插件真的很棒。您可以直接从视图执行新管道 - 而不是第一个作业。无论如何 - 没有多少答案 - 但它是我要尝试的道路。
编辑:这个插件看起来很有希望:https://github.com/jenkinsci/external-workspace-manager-plugin/blob/master/doc/PIPELINE_EXAMPLES.md