持续集成与持续交付

目录

jenkins搭建

GitLab搭建

python3环境搭建

CI与Gitlab的整合

基于Gitlab的CICD

 自动触发构建

 自动触发实战

 持续流水线


首先我们需要搭建jenkins+gitlab环境

jenkins搭建

最好用tomcat(jdk+tomcat+jenkins)的方式,避坑!

搭建方式可参考:https://blog.csdn.net/qq_37257657/article/details/83114174

GitLab搭建

GitLab比较吃内存,服务器用2核4g以上用起来比较舒服

搭建方式我采用的是docker安装的,过程可参考https://blog.csdn.net/weixin_33709364/article/details/92731320

python3环境搭建

docker自带的是python2.7的环境,执行自动化测试脚本用python3的环境需要pip安装需要的包,所以需要单独安装一下python38的环境,(python2.7的环境不要删,yum命令用到这个环境)

可以用docker拉镜像的方式,也可以下载解压配置环境变量的方式

CI与Gitlab的整合

Ssh-key配置

首先我们需要本地安装git环境

然后在Git Bash里输入命令:ssh-keygen -t rsa -C "admin@example.com"

localhost:~ $ git config  --global user.name "wuya"
localhost:~ $ git config  --global user.email "2839168630@qq.com"
生成SSH 密钥

把 id_rsa.pub文件里的秘钥复制到如下的gitlab上,点击【添加秘钥】即可

 然后在gitlab上创建一个项目,把本地写好的代码提交上去

 git clone 项目的ssh地址

写好代码后

git add .  

git commit -m "提交的注释"

git push

修改完代码再次提交先

git pull origin master

如上。。。。
git push origin master

然后在gitlab看到我们提交的代码

到这里,本地与gitlab的交互已经打通了

然后配置gitlab与jenkins的交互

1,jenkins的配置

 至此,配置成功。接下来在jenkins创建任务,从gitlab获取代码来执行

jenkins任务配置

 保存后开始执行

本地到gitlab再到jenkins持续集成流程

基于Gitlab的CICD

安装gitlab-ci的插件:

curl -L https://packages.gitlab.com/install/repositories/runner/gitlab-ci-multi-runner/script.rpm.sh | bash

yum install gitlab-ci-multi-runner -y

查看gitlab-ci-multi-runner是否正常运行:

[root@iz2ze4dcz1c36xtn6io522z ~]# gitlab-ci-multi-runner restart 
[root@iz2ze4dcz1c36xtn6io522z ~]# gitlab-ci-multi-runner status
gitlab-runner: Service is running!

接下来进行gitlab-ci的注册

1,在gitlab打开项目

2,选择settings里的CICI

 

 

接下来进行CICD注册 

 注册成功后:

 接下来我们在项目里增加一个.gitlab-ci.yml文件

然后我们点击CICI里的流水线

 自动触发构建

实际项目中,我们期望push代码到master分支后,可以自动触发构建

1,先安装jenkins插件:Gitlab Hook Plugin,GitLab Plugin,Git plugin

 记住GitLab Web Hook的url和Secure token的信息,然后在gitlab的项目的Settings中的Itergrations填写Web Hook的URL和Secure token的信息

 

点击Add webhook ,最后点击test进行测试

 测试成功后会弹出

然后在该页面点击编辑就可以看到测试结果

 自动触发实战

我们本地修改提交代码push后就会自动触发jenkins执行

 持续流水线

交付测试后,测试会进行多个不同阶段的验证,每个阶段都有一个任务

unittest——>smoke——>api自动化——>ui自动化

 我们先执行unittest,就在unittest的配置里加上构建后的操作

然后在smoke等等的任务里做同样的操作 

再然后我们安装一个Pipeline的插件,新增一个视图

新增视图的初始化任务选择unittest

执行后我们在新的视图里可以看到他的结果信息

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

菜鸟学识

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值