如何拆分 Jenkins 电子邮件附件中的字符串?

问题描述 投票:0回答:1

我想运行两个产品product1和product2的脚本,该命令包含字符串product1product2并按预期运行两个产品的脚本。该命令在控制台上如下所示:

pytest -v  -s --browser_name "MobileChrome" --env "Production" --product_name product1 product2 --disable-pytest-warnings

但问题是结果文件名分别是

product1.xlsx
product2.xlsx
,但是当我在电子邮件附件中传递了
${product_Name}.xlsx
时,Jenkins正在尝试附加不存在的
product1 product2.xlsx
。不知何故,我想在附件部分拆分产品名称,并将其设为
product1.xlsx
product2.xlsx
,以便我可以在电子邮件中正确附加这两个文件。

在上图中,在使用参数传递以下值后,产品名称将变为product1 Product2

$product_Name
是一个字符串参数,可以保存多个值:

jenkins jenkins-plugins jenkins-job-dsl jenkins-cli jenkins-email-ext
1个回答
1
投票

在发送邮件之前,您可以尝试:

  • 项目配置→构建后操作添加构建后操作▼Groovy PostbuildGroovy脚本(未实际测试):
def myProducts = build.getEnvironment(listener).get('Product_Name')

// From Editable Email Notification → Attachments' inline help:
// 'The format is a comma separated list of Ant include file syntax.'

// create a string "referenceData/product1.xlsx,referenceData/product2.xlsx"
// from myProducts here
env.filesToBeAttached = ...

// use it in Editable Email Notification → Attachments: $filesToBeAttached 

希望以下可编辑电子邮件通知的环境能够进行相应调整。我对此不是 100% 确定。

一个简单的替代方案是在构建参数Product_Name处输入:

referenceData/product1.xlsx,referenceData/product2.xlsx

另请参阅:

© www.soinside.com 2019 - 2024. All rights reserved.