Могу ли я заставить Jenkins построить тег git из переданного параметра?

Jenkins поддерживает параметризованные сборки.

У меня есть сборка развертывания, которая требует, чтобы тег для развертывания указывался через параметр. (для развертывания определенного тега для производства)

Есть ли простой способ сделать это с помощью плагина git?

Я попытался добавить параметр TAG_NAME, а затем установить branch_specifier в разделе плагина git задания на $TAG_NAME. Не работайте. Я получаю:

ERROR: Couldn't find any revision to build. Verify the repository and branch configuration for this job.

Любые идеи?

Ответ 1

Сделайте параметризацию сборки и в поле URL git, введите имя переменной, которую вы определили. Например: ${GIT_URL}. Это должно сделать это.

Ответ 2

Воспроизводит oooold тему, так как этот находится в google top. Провел некоторое время по этому вопросу... Короткий ответ: Расширяемый плагин выбора + groovy script. Это позволяет сделать выпадающее меню уже заполненным существующими тегами.

def gettags = "git ls-remote -t [email protected]:mycompany/com.someproject.git".execute()
def tags = []
def t1 = []
gettags.text.eachLine {tags.add(it)}
for(i in tags)
    t1.add(i.split()[1].replaceAll('\\^\\{\\}', '').replaceAll('refs/tags/', ''))
t1 = t1.unique()
return t1

Длинный ответ здесь

Ответ 3

Там Git Параметр плагин, который позволяет сделать именно это:

Этот плагин позволяет вам назначить тег git или номер ревизии как параметр в параметризованных сборках. Нет необходимости ничего настраивать специальный, этот плагин будет читать вашу конфигурацию по умолчанию из GitPlugin.