所以,我的问题很简单。我想使用 GO CD 构建一个管道,该管道在与实际构建工件不同的阶段进行功能测试。类似于下图。
我的 FT Stage 有多个我想并行运行的作业(使用更多 Go 代理)。但是我该如何实现呢?因为如果我在两个阶段都检查了材料(git repo)并且有人在第一阶段触发之后但在第二阶段之前提交,那么我会打破 CI&CD 最重要的规则:可重复构建。
在 Jenkins 中,我标记在第一阶段签出的提交,然后在下一个作业中明确签出此标签。但是由于某种原因,Go 不支持 git 标签:|。
我可以运行一项任务并执行“git checkout $tagname”,但这是我继续使用 Jenkins 的原因。黑客攻击太多了