You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Jenkins上游任务中展示下游任务生成的artifacts

Jenkins上游任务直接展示下游制品的操作方案

方案1:启用制品指纹关联(无额外插件依赖,适配自由风格任务)

  • 上下游任务均开启制品指纹追踪:进入任务配置页 → 找到「构建后操作」板块 → 勾选「记录 fingerprints 以追踪构件使用情况」,下游任务的归档制品配置需同步开启指纹记录
  • 上游触发下游的配置中勾选「等待下游任务完成」:如果使用Trigger/call builds on other projects构建步骤,需同时打开「等待下游构建完成」「传播下游构建结果」两个开关
  • 配置生效后,上游构建详情页会自动生成「下游构建」卡片,卡片内直接展示下游所有归档制品的访问入口,无需跳转下游任务页面

方案2:通过Description Setter插件自定义上游页面展示(展示效果更直观)

  • 先安装Description Setter插件,重启Jenkins后生效
  • 上游任务触发下游后,新增Shell/Windows命令执行步骤,提取下游构建编号、制品地址写入临时文件,示例命令:
echo "下游构建 #${DOWNSTREAM_BUILD_NUMBER} 制品:<a href='${JENKINS_URL}/job/下游任务名称/${DOWNSTREAM_BUILD_NUMBER}/artifact/目标制品文件名'>点击下载</a>" > artifact_link.txt
  • 添加上游构建后操作「Set build description」,在「Description file」字段填入artifact_link.txt,同时勾选「Expand description and format as HTML」选项
  • 保存配置后,每次上游构建完成,构建描述栏会直接展示可点击的制品下载链接

方案3:Pipeline任务专属实现(灵活度最高)

如果上游任务为Pipeline类型,可直接在Jenkinsfile中嵌入下游触发和制品展示逻辑,示例代码片段:

pipeline {
  agent any
  stages {
    stage('触发下游构建') {
      steps {
        script {
          // 触发下游任务并等待执行完成
          def downstreamBuild = build job: '下游任务名称', parameters: [
            string(name: '自定义参数1', value: params.自定义参数1),
            // 其余需要传递的参数按格式补充
          ], wait: true
          // 把下游制品地址写入当前上游构建的描述字段
          currentBuild.description = """
          下游构建详情:<a href="${downstreamBuild.absoluteUrl}">${downstreamBuild.displayName}</a><br>
          制品下载入口:<a href="${downstreamBuild.absoluteUrl}artifact/目标制品文件名">点击下载</a>
          """
        }
      }
    }
  }
}

注意:如果配置完成后页面仅显示HTML源码、不渲染可点击链接,进入「Manage Jenkins」→「Security」→「Markup Formatter」,选择「Safe HTML」后保存即可生效。

内容的提问来源于stack exchange,提问作者kutschkem

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 08:51:01