我可以让Jenkins从传入的参数构建一个git标签吗?

dal*_*ons 27 tags git jenkins

Jenkins支持参数化构建.

我有一个部署版本,需要通过参数指定标记部署.(将特定标签部署到生产中)

使用git插件有一个简单的方法吗?

我尝试添加参数TAG_NAME,然后将作业的git插件部分中的branch_specifier设置为$ TAG_NAME.不要工作.我明白了:

ERROR: Couldn't find any revision to build. Verify the repository and branch configuration for this job.
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?

car*_*ing 23

使构建参数化,并在git URL框中,输入您定义的变量的名称.例如:$ {GIT_URL}.这应该做到这一点.

  • 出于好奇,如果将标记指定为参数,$ {GIT_URL}变量会是什么样的?我是Jenkins + Git的新手,抱歉这个愚蠢的问题. (2认同)

小智 10

将是oooold主题,因为这个是谷歌的顶部.花了一些时间在这个问题上...简答:可扩展选择插件+常规脚本.这允许使下拉菜单已经填充现有标签.

def gettags = "git ls-remote -t git@github.com: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
Run Code Online (Sandbox Code Playgroud)

这里答案很长


Mih*_*aru 10

Git参数插件,它允许你这样做:

此插件允许您在参数化构建中将git标记或修订号分配为参数.没有必要设置任何特殊的,这个插件将从Git插件读取您的默认配置.

  • 这应该是恕我直言的正确答案. (2认同)