在Jenkins管道中,如何从工作输出中生成简洁的报告

时间:2019-03-18 09:18:18

标签: jenkins jenkins-pipeline

我创建了一个管道,该管道是在各个并行阶段进行的一系列Powershell作业。虽然工作是分阶段进行的,但它们之间没有依赖性(我仅将它们分成多个阶段以避免冲突)。

我想从每项工作中收集一份报告,但要在管道级别。每个作业将输出一行文本,但是完整的报告需要处于管道级别。当前管道控制台的输出仅表示作业正在启动和停止,作业没有带来任何其他输出。我考虑了以下内容;

  1. 我已经看到了stash / unstash选项,但这似乎是在文件级别,我不确定如何使用它来生成报告。

  2. 我可以在管道中看到echo命令,但是看不到将字符串/变量从作业传递到管道的方法。

  3. 我尝试将管道的“ WORKSPACE”变量传递给作业,以便该作业可以直接写入单个文件,但是该变量无效(而且我不知道这是否违反了某些规定不成文的管道“规则”。

如何从管道中的每个作业中获取一行文本,输出到单个文本文件中?

1 个答案:

答案 0 :(得分:0)

  

Blockquote   我可以在管道中看到echo命令,但是看不到将字符串/变量从作业传递到管道的方法。   引用

如果使用powershell,则可以使用write-host或-verbose

  

Blockquote   我尝试将管道的'WORKSPACE'变量传递给作业,以便该作业可以直接写入单个文件,但是该变量不起作用(而且我不知道这是否违反了一些未写入的管道规则) )。   引用

要使用jenkins变量,必须使用“%”符号。

%WORKSPACE%