在Jenkins中是否有任何简单的方法可以从指定的GIT SHA ID构建?

时间:2016-01-11 20:47:10

标签: git jenkins jenkins-plugins

我正在尝试设置一个Jenkins作业,以便从指定的GIT SHA-ID进行构建。默认情况下,它是从最新的SHA-ID构建的。我检查了git-plugin和git参数插件,但我找不到指定SHA-ID的方法。

我尝试了一篇OLD帖子中提到的解决方案之一“我不确定Hudson,但Jenkins的Git插件在”Repository browser“字段正上方有一个”Advanced ...“按钮。单击那里会显示许多其他选项,其中一个是“Checkout / merge to local branch(optional)”。其帮助文本说“如果给出,请检查修订以在此分支上构建为HEAD。请注意,这还未经过子模块的测试“,所以这似乎就是你想到的。”

但它不起作用

谢谢

1 个答案:

答案 0 :(得分:0)

我可以想到两种解决方案。

  1. 使用参数

为您的工作设置一个字符串参数(或更好的git hash参数): jenkins git hash param config

然后将git checkout设置为使用相同的变量,例如这里$MY_GIT_HASHconfiguring git hash in scm step

然后可以通过提供修订来手动开始您的工作。

  1. 使用挂钩

如果将Jenkins作业配置为由SCM更改触发,则可以使用REST API触发作业(使用与git hooks相同的接口)。

例如,对于git remote ssh://git@mygitserver.foobar.com:/myrepo.git和sha1 2fd4e1c67a2d28fced849ee1bb76e7391b93eb12

使用您的浏览器(或脚本中的cURL)命中此URL

https://foo.bar.com/jenkins/git/notifyCommit?url=ssh://git@mygitserver.foobar.com:/myrepo.git&sha1=2fd4e1c67a2d28fced849ee1bb76e7391b93eb12

这将安排配置为使用此存储库的所有作业,以开始构建此特定的哈希。