如何从jenkins管道中的不同作业生成一个报告

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

我想从管道邮寄一份报告。管道执行不同的工作,每个工作都有报告。我正在看“片段生成器”,但无法设置多个报告集合

jenkins jenkins-pipeline
1个回答
1
投票

好吧首先让我们假设您有工作A工作B和工作C(称工作A和工作B)

在每个作业A和作业B中,您需要存档其日志文件,因此您需要将此脚本添加到管道中:

def jenkins = Jenkins.getInstance()
def job = jenkins.getItem(jobName)
def bld = job.getBuildByNumber(buildNumber)=
//use the method that suits you
bld.getLog(100) //number of lines to read
bld.getLogFile()
bld.getLogReader()

现在您的日志正在每个作业中存档,您可以在后期阶段转到作业C并使用copyArtifact插件复制存档日志示例:

//copyArtifacts filter: 'logs.log', fingerprintArtifacts: true, projectName: 'pathtoyourjob/job A', selector: lastSuccessful(), target: 'temp1' 

//copyArtifacts filter: 'logs.log', fingerprintArtifacts: true, projectName: 'pathtoyourjob/job B', selector: lastSuccessful(), target: 'temp1' 

这是我之前能够使用的唯一解决方法。希望能帮助到你!

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