jenkins pipeline 如何在 stage3 错误的时候,返回 stage2 重新执行

2023-03-30 18:59:46 +08:00
 laters
stages {
                stage('1') {
                    steps {
                    }
                }
                stage('2') {
                    steps {
                    }
                }
                stage('3') {
                    steps {
                        script{
                            try{}catch{
                            	// 重新回到 stage2 执行构建
                            }
                        }
                    }
                }
            }
        }

这样是否能做到

1692 次点击
所在节点    DevOps
3 条回复
Aliencn
2023-03-30 20:17:20 +08:00
大概想到两个方法。
1.把要做的 stage2 里的内容写成函数,stage3 里判断失败调用函数。
2 把 stage2 和 stage3 拆成多个 Job ,stage3 执行成功和执行失败调用不同的 Job 来执行下面的内容。
laters
2023-03-30 21:30:51 +08:00
@Aliencn 好的,谢谢
julyclyde
2023-04-01 09:23:46 +08:00
这个需求可能有问题啊

如果你想通过重新运行上一个步骤的方法来修复,那为什么当时运行的时候不一次做好呢?
说明目前的写法里,上一个步骤有可能存在隐性的外部依赖

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/928576

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX