在某个 Jenkins 配置中,我希望触发另一个配置作为构建后操作。我想将当前构建状态作为参数之一传递。
IE:表示状态(SUCCESS/FAIL/UNSTABLE)的字符串/int。
我有 2 个选项来创建构建后触发器:
使用加入插件
在构建后操作中使用触发器参数化构建
我希望在运行结束时有某种可访问的环境变量......
有什么想法吗?
谢谢!
在某个 Jenkins 配置中,我希望触发另一个配置作为构建后操作。我想将当前构建状态作为参数之一传递。
IE:表示状态(SUCCESS/FAIL/UNSTABLE)的字符串/int。
我有 2 个选项来创建构建后触发器:
使用加入插件
在构建后操作中使用触发器参数化构建
我希望在运行结束时有某种可访问的环境变量......
有什么想法吗?
谢谢!
这是一个简单的解决方案,可以回答大多数情况:
使用' Trigger Parameterized Build '插件,并设置两个触发器 -
这些触发器中的每一个都应该运行相同的作业——我们称之为“ JOB_B ”。
对于每个触发器,传递您喜欢的任何参数,并传递用户定义的值:
现在,您需要做的就是从JOB_B测试${JOB_A_STATUS}的值,看看它是设置为“SUCCESS”还是“FAIL”。
请注意,此解决方案不区分“稳定”和“不稳定”,而只知道“失败”和“成功”之间的区别。
祝你好运!
您可以通过Groovy Post-Build 插件在后期构建步骤中使用 Groovy 脚本检查状态,该插件可以通过Jenkins Java API访问 Jenkins 内部。该插件为脚本提供了变量管理器,可用于访问 API 的重要部分(请参阅插件文档中的使用部分)。
例如,您可以通过以下方式将构建结果输出到构建控制台:
def result = manager.build.result
manager.listener.logger.println "And the result is: ${result}"
现在,您可以改为使用该值创建一个属性文件并将该文件传递给 Parameterized Trigger post-build 步骤(它有这样一个选项)。
一个警告:我不确定是否可以安排构建后步骤以特定顺序执行,以确保 Groovy 构建后步骤在参数化触发器步骤之前运行。