2017-02-23 45 views
1

我有一个外部程序,可以完成我所有的构建/运行/测试。我并不特别想把它分成三个不同的程序/脚本/流水线阶段,但我很乐意根据舞台得出失败/时间细分。jenkins - 可以通过外部程序(“shell脚本”)改变阶段吗?

有没有办法让shell脚本改变它所在的舞台?例如,我可以想象,詹金斯很聪明,可以从正在运行的shell脚本和切换阶段识别输出,例如“STAGE:”,但我找不到任何此类功能的文档。

将脚本分割成部分并不是很可行 - 它需要将一堆状态保存到由Jenkins指定的中间tmpfiles中,这似乎是一团糟。

回答

0

从我与詹金斯的经历以及对你的问题的研究中,我可以毫无疑问地总结出你在詹金斯或任何我能找到的插件中特别要求的东西。

如果您有能力将流程拆分为多个脚本,那么您将能够实现所描述的“分段结构”。

个人而言,我强烈建议管道。我最近将所有多工作转换为管道工作流程,其好处是巨大的。我也通过以下插件获得了非常有用的'舞台视图': Stage View Plugin

+1

这真的很不幸,因为这意味着我必须任意砍掉一个已存在的工具流,并强制它保存状态,然后重新启动,这样我们就可以在詹金斯看到舞台了。所以就这样了。 –

+1

刚才我想到我可以编写一个groovy脚本,它在读取输出的同时运行脚本,并在groovy中相应地切换阶段。真是一团糟。 –

+0

这将会有点混乱,但这可能是您完成自己想要的任务而不必去掉现有工具的最佳方式。听起来像是阻力最小的路径 – lax1089

相关问题