неверный формат переменных при заполнении yaml Jenkinsfile - PullRequest
0 голосов
/ 22 мая 2018

У меня есть файл yml, который мне нужно заполнить Jenkins.

global:         
  name: 'my_name'
  code: 'my_code'

Итак, я определяю параметры Jenkins:

string(name: 'NAME', defaultValue: 'Nightly Valid', description: 'Nightly Valid Name')
string(name: 'CODE', defaultValue: 'NIGHTLY', description: '')

И далее в моем Jenkinsfile у меня есть:

           script {
               def filename = "configuration.yml"
               def yaml = readYaml file: filename

               // General data
               yaml.global.name = "${params.NAME}"
               yaml.global.code = "${params.CODE}"
               // ...

               sh "rm $filename"
               writeYaml file: filename, data: yaml

Когда я это делаю, я получаю:

global:         
      name: '''my_name'''
      code: '''my_code'''

Как мне сделать, чтобы просто иметь:

global:         
      name: 'my_name'
      code: 'my_code'

1 Ответ

0 голосов
/ 22 мая 2018

"$ {params.NAME}" is GStringImpl , попробуйте преобразовать его в строку напрямую: "${params.NAME}".toString()

...