有没有办法从Jenkins管道作业存储一些元数据,例如:
-
我们有一个Jenkins文件,它可以构建一个gradle项目,创建docker镜像并将其推送到google Cloud 端
-
然后启动"Subjob",在该docker镜像上运行集成测试(IT) . Subjob接收几个参数(其中一个 - 生成的docker镜像名称)
现在有时IT工作失败了,我想从主要工作视图中重新运行它,所以理想情况:
-
我们有一个插件,可以在主要作业的蓝海UI中呈现自定义按钮
-
通过单击该按钮,再次使用相同的参数调用子工作(插件查询jenkins api,获取此作业的参数,然后重新提交子工作) .
问题 ?如何获取/设置这些参数 . 我似乎无法找到一种机制,期望工件存储 . 我可以通过创建一个简单的json / text文件并将其作为工件上传,然后在我的插件中检索它来逃避,但也许有更好的方法?
阶段重新启动不会进入脚本管道,因此看起来不像ant选项 .
1 回答
也许您可以使用Jenkins API来获取构建的详细信息?
https://your_jenkins_url.com/job/job_name/lastBuild/api/json?pretty=true
您也可以使用内部版本号或lastStableBuild,lastSuccessfulBuild,lastFailedBuild,lastUnstableBuild,lastUnsuccessfulBuild,lastCompletedBuild而不是lastBuild .
在那里有一个参数键,其中包含构建中使用的所有参数名称和值 .
关于https://your_jenkins_url.com/job/job_name/api/的更多细节
还有,你不能在IT工作中使用重播按钮的任何原因?