Jenkins动态选择分支/tag(上)

2021-06-03 18:04:29 浏览数 (1)

一.简介

一般选择分支构建,Git Parameter插件即可。这里是应用pipline的同时,可以选择分支进行构建。

Dynamic Parameter 可以动态的生成我们想要的一些参数,使用的语言是groovy。获取参数后,将变量传递到pipline中,用于脚本使用。

二.配置

1.在插件中找到 Dynamic Parameter Plug-in 进行安装

2.创建一个流水线项目

3.在参数化构建过程选择 Dynamic choice Parameter

git后面那段地址,就是项目的地址,不过只能获取一个项目的

  1. def gettags = ("git ls-remote -h git@1.1.1.1:dd/xx.git").execute()
  2. gettags.text.readLines().collect { it.split()[1].replaceAll('refs/heads/', '') }.unique()

4.编写pipline脚本,这里只写变化的一段

  1. stage 'checkout'
  2. dir('business_pay'){
  3. git branch: release_branch, credentialsId: 'jenkins', url: 'http://1.1.1.1/dd/xx.git'
  4. }

5.构建的时候,就会有选择提示了

三.配置tag

1.tag和上述配置一样,不过在Dynamic choice Parameter那里修改一下

  1. def gettags = ("git ls-remote -t --refs git@1.1.1.1:dd/xx.git").execute()
  2. gettags.text.readLines().collect { it.split()[1].replaceAll('refs/tags/', '') }.unique()

2.然后pipeline里进行下修改,用git命令切换分支

  1. stage 'checkout'
  2. dir('business_pay'){
  3. git branch: 'master', credentialsId: 'jenkins', url: 'http://1.1.1.1/dd/xx.git'
  4. sh "git checkout $release_tag"
  5. }

0 人点赞