Передать переменные Дженкинсу из рабочей области - PullRequest
0 голосов
/ 23 мая 2018

Я пытаюсь настроить сборку на Jenkins.Когда сборка прошла успешно, я нажимаю на тег сборки, используя Post build Action Git Publisher.

До сих пор это делалось вручную, тегу присваивался номер версии, ABCD (взятый из текстового файла).Теперь мы используем Jenkins, D происходит из переменной $ BUILD_NUMBER Jenkins, но ABC хранятся в текстовом файле в рабочей области.Есть ли способ передать ABC издателю git?или придется выполнять все команды git в скрипте?

Использование Jenkins v1.624.Обновление в настоящее время невозможно (прежде чем люди предложат это)

1 Ответ

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

Не совсем уверен, будет ли это работать после сборки Git Publisher Action (поскольку я не использую его), и я могу проверить это только на:

Jenkins ver. 2.32.3
EnvInject + Plugin 1.93.1
Groovy + плагин 1,30

По предложению 'Joerg S' в этом посте:

Создание переменной среды Jenkins с помощью Groovy

Добавить шаг сборки «Выполнить скрипт Groovy» для чтения в файле рабочей области (tmpFile), содержащемABC и преобразуйте его в файл свойств на основе Java - name:value):

def custom_tag = new File('tmpfile').text.trim()
File propFile = new File('properties.text')
propFile.write "CUSTOM_TAG:"+custom_tag

Затем добавьте шаг сборки «Inject Environment Variables» для чтения в новом файле, поэтому Properties File Path будет properties.text

После этого вы сможете использовать ${CUSTOM_TAG} в своей публикации git для публикации постов как TAG , так как теперь это переменная окружения.

Если это не такПроверьте работоспособность кода в приведенной выше ссылке, он может предложить что-то еще.

...