Gitlab + Jenkins 的 CI 实践
0x00 事件
为了开发人员更高效的更新应用而采取的 CI 方式实践。
0x01 过程记录
1、Jenkins 设置
安装插件
Gitlab Hook Plugin
Build Authorization Token Root Plugin
配置 Jenkins 工程

勾上 Build when a change is pushed to GitLab. GitLab webhook URL:,后面这个 ULR 等下在 Gitlab 会用到;接着点击右下角的 Advanced… 展开其他选项

往下拉,选择 Filter branches by name,并在 Include 中填入需要持续集成的分支,比如这里是 test 分支;
接着点击 Generate,生成 token,这个 token 等下在 Gitlab 也会用到。

保存设置。
2、Gitlab 设置
在项目的设置中设置 Webhooks

将刚刚在 Jenkins 任务配置中的 GitLab webhook URL 和生成的 Secret token,复制进来

Add Webhook

添加的 Webhook 会在底部显示,可以点击下test 测试下状态,如果是 200,说明可用。

0x02 持续集成测试
做这件事情,主要是能让开发人员能一提交代码,就完成一系列构建、更新部署的步骤。
让开发人员合并测试代码来校验可用性,在任务构建历史中,能看到来自开发人员的代码推送触发的构建,构建完成后服务更新。

Gitlab + Jenkins 的 CI 实践的更多相关文章
- gitlab+jenkins+tomcat CI/CD 部署
整个项目的框架为: gitlab的安装与使用(Centos7) gitlab的安装 新建yum源 vim /etc/yum.repos.d/gitlab-ce.repo [gitlab-ce] nam ...
- docker + gitlab + jenkins 搭建 CI/CD 系统
gitlab+jenkins+docker 计算机网络大全
- 使用gitlab, jenkins搭建CI(持续集成)系统(1) -- 准备环境
1. 环境设计 搭建一个从开发到测试知道发布上线可以自动换完成的CI系统.这个系统中包含4个环境. 开发(dev)环境: 码农使用. 测试(test)环境: 测试人员使用. 预发布(prepublis ...
- 使用gitlab, jenkins搭建CI(持续集成)系统(3) -- 根据不同触发条件执行不同的构建任务
前面在jenkins中安装的gitlab hook支持不同的参数,具体可以参考gitlab hook文档https://github.com/jenkinsci/gitlab-hook-plugin# ...
- 使用gitlab, jenkins搭建CI(持续集成)系统(2) -- 配置webhook触发构建
1. 在gitlab上配置192.168.1.30的ssh秘钥,使jenkins可以操作gitlab上的project 进入gitlab,点击右上角 点击 Settings -> SSH key ...
- 使用gitlab, jenkins搭建CI(持续集成)系统(4) 灰度发布publish
publish环境是正式环境,和dev, test, prepublish环境不同的是,正式环境一般要更加谨慎一些,发布的时候需要有一个灰度过程,即:分多次部署,每次部署几个服务器节点,验证没有问题以 ...
- 基于GitLab+Jenkins的DevOps赋能实践
随着微服务.中台架构的兴起,DevOps也变得非常关键,毕竟是一些基础设施层面的建设,如果搞好了对后面的研发工作会有很大的效率提升.关于DevOps本身的概念,网上已经非常多了,在园子里随便搜索一些都 ...
- 持续集成实践---基于ant+jmeter+jenkins接口CI
背景: 大纲: jmeter入门教程 jenkins入门教程 ant介绍 jmeter+ant脚本自动执行实践 接口测试CI实践
- Kubernetes笔记(三):Gitlab+Jenkins Pipeline+Docker+k8s+Helm自动化部署实践(干货分享!)
通过前面两篇文章,我们已经有了一个"嗷嗷待哺"的K8s集群环境,也对相关的概念与组件有了一个基本了解(前期对概念有个印象即可,因为只有实践了才能对其有深入理解,所谓"纸上 ...
随机推荐
- MySQL分层和查询数据的流程
MySQL分层 MySQL分层 主要分为:连接层,服务层,引擎层,存储层 客户端执行一条select命令的流程如下 连接器 功能: 负责跟客户端建立连接.获取权限.维持和管理连接 细节: 1.当用户登 ...
- python内存-fromkeys
fromkeys 这个方法涉及到可变不可变类型,记录下测试代码 不可变类型 #可变类型-list x=["zx","zx2","zx3"] ...
- 2019-2020-1 20199304《Linux内核原理与分析》第一周作业
通过对Linux基础课程的学习,我对Linux的背景以及和Windows的区别有了了解, Linux 平台:大都为开源自由软件,用户可以修改定制和再发布,由于基本免费没有资金支持,部分软件质量和体验欠 ...
- 企业DevOps研发模式下CI/CD实践详解指南
阅读全文大概需要 10分钟. 1. 前言 借着公司今年新组建的中台研发部东风,我作为其中的主要负责人,在研发中心主导推行DevOps研发管理模式转变及质量管理创新建设,本篇文章摘取自今年9月底,笔者在 ...
- Kafka分区分配策略分析——重点:StickyAssignor
“ 为什么Kafka在RangeAssigor.RoundRobinAssignor的基础上,又新增了PartitionAssignor,它解决了什么问题?” 背景 用过Kafka的同学应该都知道Ka ...
- YUM平台的搭建
网络安全学习内容 三.挂载yum仓库 3.1连接映像文件 步骤如下: 1.右击映像文件,单击设置,选择CentOS映像文件 2.右击映像文件,单击连接 3.2挂载本地yum 打开终端,输入vim /e ...
- Python的Requests库基本方法函数
一.Requests 库的七个常用函数: 1. requests.request(method,url,**kwargs) :method:请求方式,对应get/put/post等七种 :拟获取页面的 ...
- luogu P1044 栈
题目背景 栈是计算机中经典的数据结构,简单的说,栈就是限制在一端进行插入删除操作的线性表. 栈有两种最重要的操作,即poppop(从栈顶弹出一个元素)和pushpush(将一个元素进栈). 栈的重要性 ...
- CSS_实现京东购物车静态页面
主页面分配: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /> < ...
- 为什么每一个爬虫工程师都应该学习 Kafka
这篇文章不会涉及到Kafka 的具体操作,而是告诉你 Kafka 是什么,以及它能在爬虫开发中扮演什么重要角色. 一个简单的需求 假设我们需要写一个微博爬虫,老板给的需求如下: 开发爬虫对你来说非常简 ...