Jenkins 中使用 Git Parameter 插件动态获取 Git 的分支


  !版权声明:本博客内容均均为原创,每篇博文作为知识积累,写博不易,转载请注明出处。

目录[-]


系统环境:

  • Jenkins 版本:2.199

一、插件简介

  • Git 插件: 用于操作 Git 的插件,一般情况下都会默认安装,如果没有可以在插件管理中下载安装。
  • Git Parameter 插件:用于动态从 Github 或者 Gitlab 中检索项目分支信息,在 Jenkins Job 参数化构建中提供选择分支项,方便用户在执行构建时候执行选择的分支。

二、安装 Git Parameter 插件

一般情况下 Jenkins 会默认安装上 Git 插件,所以这里我们只需要安装 Git Parameter 插件即可,打开 系统管理->插件管理->可选插件 搜索 Git Parameter 插件进行安装,如下图所示:

安装完成后重启 Jnkins,然后随便创建个 Job,会发现参数化构建多处了 Git Parameter 选项,如下图所示:

三、使用 Git Parameter 插件

一般我们经常会创建 Maven 或者 Pipeline 项目,俩中场景下使用 Git Parameter 插件用法还是有点差别,所以下面分开介绍。

#Maven 项目使用

1、创建 Maven 项目

2、对 Job 进行配置

在 General 配置中,选择 参数化构建过程 中的 Git Parameter 选项,然后按下面进行配置。

配置完 Git Parameter 参数后,这里在源码管理选项中配置 Git 选项,输入 Git 项目 URL 地址,如果是私有 Git 项目的话还要配置凭据。最后配置分支选项,里面引用上面设置 Git Parameter 参数中设置的参数名,通过 ${参数名} 引用。

3、测试

进入之前的 Job 项目,点击 Build with Parameters 选项,然后可以看到自动从远程仓库获取了项目的分支。

#Pipeline 项目使用

1、创建 Pipeline 项目

2、对 Job 进行配置

和上面 Maven 项目一样,在 General 配置中,选择 参数化构建过程 中的 Git Parameter 选项,然后按下面进行配置。

  • Git Branch 变量名称: GIT_BRANCH
  • 必须配置的参数:
    • Parameter Type: 设置参数类型为分支模式
    • Default Value: 设置默认分支
    • Branch Filter: 设置以 origin/(.*) 进行过滤
    • Selected Value: 设置默认选中设置的默认值(Default Value 参数的值)

配置完 Git Parameter 参数后,还需要配置项目 URL 和 Creadential 凭据。

  • Git URL 变量: GIT_PROJECT_URL
  • Git Creadential 变量: GIT_CREADENTIAL

在流水线脚本中输入下面脚本:

// 流水线执行脚本
node {
     git changelog: true,   
         branch: "${params.GIT_BRANCH}",
         url: "${params.GIT_PROJECT_URL}",
         credentialsId: "${params.GIT_CREADENTIAL}" 
}

3、测试

进入之前的 Job 项目,点击 Build with Parameters 选项,然后可以看到自动从远程仓库获取了项目的分支。

注意:由于插件需要检测项目中的 Git 信息,如果项目一次都未执行,分支变量一栏可能会提示错误信息,这时候需要执行一次该 Pipeline 任务下次就不会出现该错误信息,即正常显示分支信息。(暂时插件官方无法解决该问题)

—END—