【发布时间】:2022-11-09 20:47:08
【问题描述】:
我有一个 Jenkins 管道,它使用 matrix 指令在不同的工作人员中针对各种环境运行一套自动化测试。最后,我想将各种测试套件运行的代码覆盖率输出合并到一个文件中前收集它们,以确保结果准确。这听起来应该很简单:
- 对于每个矩阵单元格,根据矩阵单元格的值,使用唯一的存储名称存储覆盖范围输出文件。
- 测试运行完成后,取消存储“主”工作器上的所有文件并将它们合并。
但是,存储是动态命名的这一事实使第 2 步变得困难。这似乎给我留下了三个选择:
- 对矩阵轴进行硬编码再次卸载时。不是特别吸引人。
- 以编程方式检索矩阵轴。好像是应该有可能,但我不确定如何从代表矩阵阶段的
FlowNodeWrapper转到底层轴字符串。 - 列出构建的所有存储,然后选择我想要的。如果可能的话,这也是一个可行的解决方案,因为存储名称遵循一种模式,但我什至不确定从哪里开始。在 Jenkins 问题板上有一个与此相关的 open issue,但它似乎不会很快发生变化。
简而言之:我怎样才能做到这一点?我怎么能:
- 从
FlowNodeWrapper转到矩阵轴? - 以不同的方式找到我的藏匿处?
【问题讨论】:
标签: jenkins jenkins-pipeline jenkins-groovy