Шаблонные переменные окружения учетных данных в файл в Jenkinsfile / Groovy - PullRequest
0 голосов
/ 16 ноября 2018

У меня есть 5 переменных, которые стандартным способом связаны в Jenkinsfile из сохраненных учетных данных.

например.

withCredentials([
    file(credentialsId: 'var1', variable: 'VAR1')
    string(credentialsId: 'var2', variable: 'VAR2')
])

Мне нужно, чтобы эти переменные были преобразованы в файл как:

VAR1 = (значение var1)

VAR2 = (значение var2)

Используется docker-compose в качестве файла env.

Я пытался использовать простые шаблоны

так файл шаблона (vars.tmpl.groovy)

VAR1=${VAR1}
VAR2=${VAR2}

со следующим в Jenkinsfile

template = readFile('vars.tmpl.groovy')

binding = [VAR1: VAR1, VAR2: VAR2]

engine = new groovy.text.SimpleTemplateEngine()

output = engine.createTemplate(template).make(binding)

Тогда я бы хотел записать содержимое переменной в файл.

Я нахожу проблему:

java.lang.ClassCastException: java.util.LinkedHashMap cannot be cast to groovy.lang.Binding

Итак, мои вопросы:

  1. Как я мог обойти эту проблему?
  2. Есть ли лучший способ, которым я мог бы сделать это?
...