繁体   English   中英

Jenkins Groovy,Jenkins DSL 脚本

[英]Jenkins Groovy, Jenkins DSL Script

如何在管道中手动更改詹金斯工作状态?

例子:-

我在流水线中有 7 个自由式工作(A、B、C、D、E、F、G),工作 A 初始工作,在 A 之后,我们有三个并行测试工作(B、C、D)。 作业E是报表生成作业,这里我们需要实现Pipeline的用户交互是否会继续?。

Job E 的条件: 1) 如果 Job E 成功,Pipeline 将继续发布 2) 如果 Job E 失败,Pipeline 应该在这里停止。 3)如果Job E不稳定,这里我们需要实现用户交互。 在用户交互中,用户需要将 Job E UNSTABLE 状态更改为成功或失败。

例如:- 如果作业 E 不稳定,则在用户交互中。 用户单击继续,作业 E 将不稳定更改为成功用户单击否,作业 E 将不稳定更改为失败。

我不建议尝试更改 aa 构建的状态。 您的用例非常适合管道。 理想情况下,我会建议摆脱自由式工作并开发适当的管道。

如果不能,您仍然可以从 groovy 管道中编排自由式作业。

从管道触发作业:

build job: jobFullname, parameters: listOfParameters

查看更多选项

显示等待决定的消息:

input "Continue or abort pipeline ?"

查看更多选项

如果你仍然想改变构建状态,你首先需要找到工作:

Job job = (Job) Jenkins.instance.getItemByFullName(jobFullname)

然后找到要更改的运行:

Run run = job.getBuildByNumber(buildNumber)

或者更方便的是,获取完整列表并在其中循环以找到您想要的列表:

RunList<RunT> runs = job.getBuilds()

然后,一旦你有你正在寻找的运行:

run.setResult(Result.SUCCESS)
run.setResult(Result.FAILURE)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM