詹金斯:[参数化 - 触发器]属性文件



我正在使用"参数化触发插件"来触发儿童作业。我使用的是"来自属性文件的参数"one_answers"使用文件中的属性",需要将文件的名称作为变量传递...我收到此错误。

[parameterized-trigger] Properties file $propeties_file did not exist.

在此处输入图像描述

如果单击?,您将看到属性文件的使用/语法:

逗号分开的绝对或相对途径的文件列表 包含新项目的参数。相对路径是 起源于工作区。该文件应具有键=值对, 每行(Java属性文件格式)。反斜线用于 逃脱,因此请使用" \"进行单个后挡。当前构建 可以用:$ {param}使用牧室和/或环境变量 或$ param。

因此,您的文件需要存在,您应该将文件路径放在将$properties_file放置的位置 - 我不相信它会接受变量,您应该将文件名放入其中。

示例管道使用属性文件

的参数触发参数化构建
pipeline {
      agent any
      stages {
        stage('S1') {
          steps {
            echo 'In S1'
            sh '''
        echo "param1=value1" > my.properties
        echo "param2=value2" >> my.properties
        '''
      }
    }
    stage('s2'){
      steps {
        script {
          def props = readProperties  file:"${WORKSPACE}/my.properties"
          build job: 'called_job', parameters: props.collect {string(name: it.key, value: it.value)}
        }
      }
    }
  }
}

最新更新