当前位置: 首页 > 面试题库 >

Jenkins管道:在stage1中,从文件中读取编号,在stage2中,**在**节点名称内,请使用该编号

越飞语
2023-03-14
问题内容

继续此操作: Jenkins管道阶段-传递整个文件

我现在不得不将数字设置为节点名称的一部分,该数字包含在另一个节点的文件中。

例如,如果属性文件包含数字6,则必须在名为DEV-SME-6的节点上运行作业。

有没有办法让我:在stage1中,从主节点上的文件中读取编号,如下所示:

Env_number = readFile 'file_containing_an_integer_between_2_and_7.txt'

然后在stage2中, 节点名称中使用该数字指定部分节点名称,如下所示:

node('DEV-SME-$Env_number')

??

这不适用于unstash(在阶段中指定节点名称之前尝试进行unstash会给我一个错误:FilePath.hudson丢失

在尝试了一些东西之后,我当前的代码是这样的:

stage "first stage"
   node ('master'){
      try{
         env.Env_number = sh ' echo DEV$(cat file_containing_an_integer_between_2_and_7.txt '
      catch(error)
         echo "failed to set variable Env_number "
            }}

stage "second stage"
   node('${Env_number}') {
      try{
         command1
         command2 
            }}

这给了我“没有标签为’null’的节点”


问题答案:

成功!没有sh脚本,带有readFile:

stage "first stage"
   node ('master'){
      try{
         env.Env_number = readFile 'file_containing_an_integer_between_2_and_7.txt'
      catch(error)
         echo "failed to set variable Env_number "
            }}

stage "second stage"
   node("DEV${Env_number}") {
      try{
         command1
         command2 
            }}


 类似资料:
  • 问题内容: 我正在看一位同事写的一些代码,她在require语句中使用该符号。这是这些文件之一的第一行: 当我尝试运行此代码时,出现错误: 坦率地说,我的目录中没有需要识别的东西!我似乎讨厌这里发生的一些魔术。 我所能猜测的是,这是我尚未接触到的一些晦涩的npm或Node技巧,或者也许是我没有得到其他一些暗黑的配置技巧。任何信息都值得赞赏,即使这只是对require的工作方式的解释。 其他想法:主

  • 我已经创建了一个jenkins管道,它正在从scm中提取管道脚本 我将分支说明符设置为“all”,因此它基于对任何分支的任何更改。 如何从Jenkinsfile访问导致此构建的分支名称? 我试过的所有东西都是空的,除了 它始终是主。

  • 问题内容: 我正在看一位同事写的一些代码,她在require语句中使用该符号。这是这些文件之一的第一行: 当我尝试运行此代码时,出现错误: 坦率地说,我的目录中没有需要识别的东西!我似乎讨厌这里发生的一些魔术。 我只能猜测的是,这是我还没有接触过的一些晦涩的npm或Node技巧,或者也许是我没有得到其他一些黑暗的配置技巧。任何信息都值得赞赏,即使这只是对require的工作方式的解释。 其他想法:

  • 问题内容: 我有一个XML文件,我想将其用作管道脚本的输入。问题是XMLParser不可序列化,因此我将其放在NonCPS函数中,但是因此丢失了Node对象。 这是管道脚本: 这是一个输入样本: 结果如下: 我正在使用Jenkins 2.7和管道2.1,这是最新的。 问题答案: 您可以使用XmlSlurper,它对我有用。

  • 问题内容: 我在Jenkins中有一个管道作业,我想知道它在其上运行的节点的名称。有没有办法从作业的Groovy脚本中获取节点名称? 我尝试了以下代码: 错误是: 我也尝试过这个: 但结果是“”。 问题答案: 有一个环境变量“ NODE_NAME”具有此功能。 您可以像这样访问它: 在编辑管道作业时,可以转到“管道语法”帮助链接(页面左侧),然后找到“全局变量”部分,然后单击“全局变量参考”,以找