我需要一个能动态列出GitLab存储库分支的Jenkins Job Build Parameter。我尝试使用Git Parameter Plugin,但它列出了如下分支:
来源 /v2.1- 来源 /v2.2-来源 /v2.3 ...
我不想获得“ 来源/ ”部分,因为我将在 Git的Refspec 选项之类的地方使用此值,而我只需要“ vX.X ”部分。
因此,我尝试使用Groovy脚本而不是插件。我找到了一篇博客文章,这是脚本:
def gettags = ("git ls-remote -t -h https://USER:PASS@bitbucket.org/project_name.git").execute()
return gettags.text.readLines().collect {
it.split()[1].replaceAll('refs/heads/', '').replaceAll('refs/tags/', '').replaceAll("\\^\\{\\}", '')
}
但是有一个很大的问题,我不想在访问Git时使用Username-Password。如何使用保存的Jenkins凭据进行身份验证?
更新:
我找到了解决方案。我用Environment Injector Plugin
中的Groovy脚本覆盖了所选的Git参数