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

时间:2011-08-23 06:39:31

标签: git tags 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.

有什么想法吗?

3 个答案:

答案 0 :(得分:23)

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

答案 1 :(得分: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

长答案here

答案 2 :(得分:10)

Git Parameter Plugin,可以让你做到这一点:

  

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