Я хочу создать простое конвейерное задание в моей конфигурации Jenkins с помощью скрипта.Итак, мой файл jenkins.yaml выглядит следующим образом:
jobs:
- script: >
pipelineJob('Tag Repositories') {
definition {
cps {
def theScript = readFileFromWorkspace('git_tag_job.groovy')
script(theScript)
sandbox()
}
}
}
Поэтому я подумал, что файл git_tag_job.groovy
может находиться в домашнем каталоге Jenkins, но похоже, что readFileFromWorkspace просматривает рабочую область этой работы, которая не имеетеще не было создано.В результате я получаю сообщение об ошибке NPE, поскольку рабочая область равна нулю.
Теперь вопрос заключается в том, как я могу использовать плагин «Конфигурация как код», чтобы добавить это задание с содержимым git_tag_job.groovy
в качестве сценария?
Скрипт огромен, и я не могу поместить его в файл Yaml.
Меня удивляет то, что эта конфигурация и readFileFromWorkspace бесполезны, если мы не можем загрузить скрипт откуда-то, потому что он оченьредко, когда у вас есть конвейерное задание с однострочным скриптом, поэтому загрузка из файла - единственный практический вариант.
Я что-то здесь упустил или есть какой-то другой способ сделать это?