虽然我可以实现所需的结果,但它具有并行阶段,这些阶段将等待上一个(或任何给定的)阶段完成后再继续。我觉得这不是达到所需最终状态的正确方法。但是,即使在对github和stackoverflow进行了一些研究之后,我也找不到合适的答案,也无法引导我如何在声明式管道中实现相关的并行阶段。
def action_a_status
def action_b_status
def action_c_status
def action_d_status
pipeline {
agent any
stages {
stage("Deploy") {
parallel {
stage("action 1") {
steps {
sleep 10
script {
action_a_status="completed"
}
}
}
stage("action 2") {
steps {
script {
waitUntil {
action_a_status=="completed"
}
sleep 5
action_b_status="completed"
}
}
}
stage("action 3") {
steps {
script {
waitUntil {
action_b_status=="completed"
}
sleep 3
action_c_status="completed"
}
}
}
stage("action 4") {
steps {
script {
waitUntil {
action_c_status=="completed"
}
action_c_status="completed"
}
}
}
}
}
}
}
重要的是要注意,这不是达到期望结果的最佳方法,并且我发现了一种适当的方法来分组阶段,因此我选择不继续使用非直观的代码来改善BlueOcean管道的可视化。相反,病态只是使用步骤。
确保所有人安全并清洁代码。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句