Jenkins 使用Git Parameter打包

Git Parameter

阅读本文大约需要5分钟

前言

在使用jenkins打包过程中,如果只需要根据分支打包,则直接使用“源码管理-Git-Branches to build”直接填写想要打包的分支即可。这是最常用,也是最容易、最简单的方式。

但打包分支总是切来切去,每次打包前到job“配置”中修改分支是一种方式。有没有一种方式可以不用每次都修改“配置”呢?

我们都知道,每次版本发布之后,就会给发布的分支打tag标记,记录每个发布版本对应的代码,便于代码回滚。那么Jenkins是否可以基于tag打包的呢?

有时候,开发正在某个分支修改出了一个大bug,导致该分支打包失败,是要将包回退到该分支某个commit之前的代码。将Jenkins中对应的打包记录工作区中下载需要的包,放到指定服务器,然后手动启动应用。还是有更简单的方式呢?Jenkins能否直接根据某个commit打包呢?

Jenkins实现根据Branch,Tag,commit等信息打包,其实很简单。只需要Git Parameter插件即可实现。

安装

下载git-parameter.hpi插件,然后安装自定义插件;若安装过程出现以下报错:

Git Parameter

根据报错日志,可知git-parameter插件需要依赖jquery插件,下载jquery.hpi安装之。

安装完jquery插件,再重新安装git-parameter插件,便可安装成功:

Git Parameter


使用

  • 源码管理——Git——Branches to build——填写变量,如${BRANCH}
  • 参数化构建过程——添加参数——Git Parameter——Name填写上步调用的变量名BRANCH
  • Git Parameter可以选择不同的Parameter Type来构建

    Git Parameter

  • 较为简单的用法,至此已经配置完成。构建job时,可以看到, “立即构建”已经变成了”Build with Parameters”,点击后进入参数(分支)选择页面。选择参数,点击“开始构建”。

    Git Parameter

  • Git Parameter除了Branch,也可以根据Tag,Revision来拉取代码。另外,还可以在高级配置中,配置过滤条件。具体使用可以结合参数说明配置。


参数说明

Parameter Type

  • Tag-为区分版本在代码中打上的标签
  • Branch-代码分支
  • Branch or Tag-以上两者的集合
  • Revision-每个代码提交对应的id
  • Pull Request- 我修改了你的代码,所以请求(request)你把我修改过的代码拉(pull)回去看看,比较少用到。

高级选项

  • Branch-指定分支
  • Branch Filter-分支过滤器,支持正则表达
  • Tag Filter-标签过滤器
  • Sort Mode-排序方式,顺序或倒序
  • Default Value-缺省值,无匹配值时的默认值
  • Selected Value-NONE,默认不选;TOP,默认选择第一个;DEFAULT,选择默认值
  • Use repository-指定代码仓库
  • Quick Filter-勾选之后,在构建时会在右侧显示过滤关键字输入框,输入关键字,可以过滤左侧的选项

    Git Parameter