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

如何在Jenkins邮件附件中拆分多值产品名字符串,正确附加对应报告

解决方案

方案1:使用通配符匹配附件(最快捷)

Jenkins邮件扩展插件的附件路径支持通配符匹配,你可以直接把附件路径配置改为:
*.xlsx
如果担心匹配到工作空间内其他无关的xlsx文件,可以提前将测试报告统一存放到单独目录(例如reports/),再将附件路径配置为reports/*.xlsx,不管生成多少个产品的报告都能自动全部匹配。

方案2:拆分参数动态生成附件路径(精准匹配)

如果需要严格只匹配传入的产品对应的报告,可以通过构建步骤拆分参数生成附件列表:

  1. 安装Jenkins的「EnvInject Plugin」插件,支持自定义注入环境变量
  2. 新增构建步骤,根据系统类型执行对应脚本拆分product_Name参数:

Linux系统Shell步骤代码:

# 拆分产品名,拼接为xlsx文件名列表
ATTACH_FILES=$(echo $product_Name | tr ' ' '\n' | awk '{print $1".xlsx"}' | tr '\n' ',')
# 去除末尾多余的逗号
ATTACH_FILES=${ATTACH_FILES%,}
# 写入属性文件待后续注入
echo "ATTACH_FILES=${ATTACH_FILES}" > build.env

Windows系统Batch步骤代码:

@echo off
setlocal enabledelayedexpansion
set ATTACH_FILES=
for %%p in (%product_Name%) do (
    set ATTACH_FILES=!ATTACH_FILES!%%p.xlsx,
)
# 去除末尾多余的逗号
set ATTACH_FILES=%ATTACH_FILES:~0,-1%
rem 写入属性文件待后续注入
echo ATTACH_FILES=%ATTACH_FILES% > build.env
  1. 新增「Inject environment variables」构建步骤,配置属性文件路径为build.env
  2. 将邮件附件配置修改为${ATTACH_FILES}即可

方案3:调整参数类型简化处理

你可以将原product_Name参数的类型改为「Extended Choice Parameter」,设置为多选模式,返回值用逗号分隔,后续处理参数拆分时会更便捷,不需要额外处理空格分隔符。


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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 16:45:03