这是之前通过gitlab+jenkins+k8s实现的一个简单的自动化测试项目

第一步:安装GitLab 第二步:安装jenkins 第三步:配置钩子程序 第四步:实现自动化

项目背景:

在之前的配置中,主要是使用Jenkins流水线的方式将项目通过k8s的方式进行自动化发布测试,但随着项目版本的增多,这种方式不适合项目的回滚操作和分支测试,也是为了解决回滚和分支测试的问题,因此在这里写了几种最常用到的参数化构建的方式,

1、字符模式
2、文本模式
3、选择框模式

通过web界面编辑job时写入构建的参数
通过文本文档的方式,让Jenkins在服务器中读取选项,相比之下,我比较喜欢这种方式

4、git的参数化构建

将分支和版本号通过git参数来控制,无论是项目的更新还是版本的回滚,都能够做到游刃有余。但唯一的缺点就是客户端无法通过钩子程序自动化测试项目,需要通过登录Jenkins手动点击构建,才能完成项目的测试,不知道观看这个博客的大佬有什么好的解决办法,欢迎留言!!!

一、通过字符的方式实现

1、字符模式和文本模式(可任选其一)

jenkins List Git Branches git 匹配 jenkins git parameter_pipline

2、查看构建参数(变量可以更改)

jenkins List Git Branches git 匹配 jenkins git parameter_git_02

二、通过选择的方式实现(安装插件Extended Choice Parameter)

1.1、配置选择的方式实现构建(使用value)

jenkins List Git Branches git 匹配 jenkins git parameter_git_03

1.2、查看构建时的参数

jenkins List Git Branches git 匹配 jenkins git parameter_pipline_04

2.1、配置选择的方式实现构建(使用)

[root@jenkins ~]# vim /root/.jenkins/java_property
		branch=master,benet,accp

jenkins List Git Branches git 匹配 jenkins git parameter_git_05

2.2、查看参数构建

jenkins List Git Branches git 匹配 jenkins git parameter_git_06

三、git的参数化构建(安装插件Git Parameter)

1、编辑参数化构建的脚本

pipeline {
	    agent any
	    parameters {
	        gitParameter name: 'BRANCH_TAG', 
	                     type: 'PT_BRANCH_TAG',
	                     branchFilter: 'origin/(.*)',
	                     defaultValue: 'master',
	                     selectedValue: 'DEFAULT',
	                     sortMode: 'DESCENDING_SMART',
						 description: 'Select your branch or tag.'
	    }
	    stages {
	        stage('pull origin') {
	            steps {
	                checkout([$class: 'GitSCM', 
	                          branches: [[name: "${BRANCH_TAG}"]], 
	                          gitTool: 'Default', 
	                          userRemoteConfigs: [[url: 'http://192.168.200.80/root/web.git',credentialsId: 'for_gitlab',]]
	                        ])
	            }
	        }    
	    }
	}

2、图形配置

注:在自由风格的git参数化构建时,直接将./master改为$(branch)就可以执行成功

jenkins List Git Branches git 匹配 jenkins git parameter_参数化_07

3、查看参数化构建效果

jenkins List Git Branches git 匹配 jenkins git parameter_参数化_08