2016-11-23 25 views
2

运行一个Jenkins流水线(基于Groovy),包含多个节点的阶段,我需要从StageA上的NodeA上的某个文件中的列表传递给StageB上的nodeB。Jenkins流水线阶段 - 传递整个文件

在STAGEA NodeA上我跑

DEVenv = readFile 'somefile.txt' 

在stageB我跑

println DEVenv 

到目前为止好,我得到的控制台输出。

现在如何将println DEVenv的输出传递给文件?

println DEVenv > otherfile.txt 

不会做的伎俩:-(

我敢肯定,这不是什么大不了的,但我一直搅动互联网进行了几个小时都没有结果。

回答

3

您可以使用writeFile步内容写入一个文件:

writeFile file: 'otherfile.txt', text: DEVenv 

顺便说一句为了工作区中的内容转移到另一个节点,你应该使用stash/unstash步(不知道,如果你已经使用过)。

+0

对不起,新来这个,我该怎么去使用stash unstash?和umm,将不会文本:DEVenv将文字“DEVenv”写入文件,而不是DEVenv变量的whoel值? –

+0

试一试..'DEVenv'是变量的名称,与'“DEVenv”'相比。一些关于'(un)隐藏的信息可以在这里找到(https://www.cloudbees.com/blog/parallelism-and-distributed-builds-jenkins)。您将需要将工作区从节点A复制到节点B. – StephenKing

+0

干杯,工作。谢谢,但我仍然坚持一个额外的groovy喜悦..在接下来的问题:http://stackoverflow.com/questions/40827434/jenkins-pipeline-in-stage1-read-number-from-file -in-的stage2-内节点正 –

相关问题