Sha*_*aun 6 jenkins jenkins-plugins
我有两个Jenkins构建,一个用于编译,一个用于部署.
开发人员希望能够在运行部署构建时从编译器构建中选择构建,而不是始终运行最新构建.
我所追求的是一种为部署构建填充选择参数的方法,其中包含来自编译构建的成功\不稳定构建的列表.
然后,我将使用参数中列出的选项来部署该工件.
使用动态参数插件
在你的推广工作中:
import jenkins.model.Jenkins
import hudson.model.AbstractProject
import hudson.model.Result
import hudson.util.RunList
AbstractProject<?, ?> otherJob = Jenkins.getInstance().getItemByFullName("otherJobName", AbstractProject.class)
RunList<?> builds = otherJob.getBuilds().overThresholdOnly(Result.SUCCESS)
def list = builds.limit(5).collect { it.number }
Run Code Online (Sandbox Code Playgroud)
维基页面的屏幕截图:

由于动态参数插件无法再访问。您可以在 Jenkins 中使用Active Choice 参数插件。现在,您可以将所有成功的 Jenkins 构建列为 Jenkins 作业/管道中的参数化选项
按照以下步骤访问成功作业列表 [作为下拉列表]
在作业配置[常规部分]中选择该项目已参数化
选择添加参数作为“主动选择参数”
给参数命名
选择 groovy 脚本并将以下代码粘贴到 groovy 脚本文本框中
return jenkins.model.Jenkins.instance.getJob('<Jenkins-job>').builds.findAll{ it.result == hudson.model.Result.SUCCESS }.collect{ "$it.number" }
没有 powershell 和 BASH 就可以很好地工作
无需处理 Jenkins API 和过滤 JSON 输出
一种选择是使用升级构建插件来标记要部署的特定构建。这会将选择从部署构建移至编译构建。在编译构建中选择“在...时升级构建”选项,并设置您希望升级的工作方式。开发人员可以选择(或自动化)要推广的构建。在部署构建中,Copy Artifact 插件可以获取适当的构建(基于最新升级构建的永久链接)。
| 归档时间: |
|
| 查看次数: |
10621 次 |
| 最近记录: |