如何使用属性文件中的值将值分配给jenkins节点

时间:2019-07-19 04:51:36

标签: jenkins jenkins-pipeline jenkins-groovy jenkins-declarative-pipeline

我能够在Jenkins声明性管道中加载属性文件。在回显时,也会在控制台输出中打印这些值。我想使用属性文件中的值之一,例如slavenode,作为Jenkins标签。但是,我无法这样做。我尝试了以下操作,但失败了:

stage ('echo variables'){
            agent {label 'a_server_name'}
            steps{
              load "path_to_file\\abc.properties"

                echo "Hi"
                echo "slave : ${SlaveNode}"

                              //executes successfully

            }

stage ('Execute script'){
            agent {label "$SlaveNode"}
            steps{
                echo "This is executing script"

            }

  // fails with error : There are no nodes with the label ‘SlaveNode’

我希望它在$ SlaveNode上运行“执行脚本”阶段。

2 个答案:

答案 0 :(得分:0)

我相信您可以使用Groovy库和环境变量来做到这一点

答案 1 :(得分:0)

下面是对我有用的代码:

  steps{
      node( SlaveNode as String )
        { sh """ echo "It is running on SlaveNode" """ }
    }