zl程序教程

您现在的位置是:首页 >  后端

当前栏目

GitLab-CI持续集成(CI)的介绍与运行机制

集成 介绍 持续 gitlab CI 运行机制
2023-09-27 14:26:37 时间
GitLab-CI就是一套配合GitLab使用的持续集成系统(当然,还有其它的持续集成系统,同样可以配合GitLab使用,比如Jenkins)。

GitLab-CI就是一套配合GitLab使用的持续集成系统(当然,还有其它的持续集成系统,同样可以配合GitLab使用,比如Jenkins)。而且GitLab8.0以后的版本是默认集成了GitLab-CI并且默认启用的。

首先要明白它的组成. 它有两个东西来支撑:


在GitLab 8.0+提供了持续集成的功能,在GitLab中有个Runners的概念。runner可以想象成一个守护进程,来守护你注册好的service和gitlab-ci绑定. 一个宿主机里的runner可以维护多个不同的service. 而gitlab-ci在收到需要build的请求时,会通知service执行你在.gitlab-ci.yml里面指定好的脚本,然后根据命令行的返回结果来决定这次build的成功还是失败.

在了解完了这些概念以后我们就可以很轻松的搭建一个runner了.

 

Runner一共有三种类型

1) 本地Runner

2) 普通的服务器上的Runner

3) 基于Docker的Runner

Runner可以分布在不同的主机上,同一个主机上也可以有多个Runner。

Runner类型

GitLab-Runner可以分类两种类型:Shared Runner(共享型)和Specific Runner(指定型)。

Shared Runner:这种Runner(工人)是所有工程都能够用的。只有系统管理员能够创建Shared Runner。

Specific Runner:这种Runner(工人)只能为指定的工程服务。拥有该工程访问权限的人都能够为该工程创建Shared Runner。  

GitLab-CI与GitLab-Runner的关系示意图  

那GitLab-Runner又是什么东东呢?与GitLab-CI有什么关系呢?

GitLab-Runner是配合GitLab-CI进行使用的。一般地,GitLab里面的每一个工程都会定义一个属于这个工程的软件集成脚本,用来自动化地完成一些软件集成工作。当这个工程的仓库代码发生变动时,比如有人push了代码,GitLab就会将这个变动通知GitLab-CI。这时GitLab-CI会找出与这个工程相关联的Runner,并通知这些Runner把代码更新到本地并执行预定义好的执行脚本。

所以,GitLab-Runner就是一个用来执行软件集成脚本的东西。你可以想象一下:Runner就像一个个的工人,而GitLab-CI就是这些工人的一个管理中心,所有工人都要在GitLab-CI里面登记注册,并且表明自己是为哪个工程服务的。当相应的工程发生变化时,GitLab-CI就会通知相应的工人执行软件集成脚本。如下图所示:

 

 

GitLab CI-CD流程图

 

 

 

 

 

 

 


Gitlab CI 小试牛刀 前端工程化中 CI 是必不可少的一环,大家的团队中或多或少都有不同的 CI 能力,有的可能由运维同学使用 JIRA 配置(前司),更多的相信已经迁移到 Gitlab 到 CI/CD 中。那么今天就来聊聊什么是 CI 以及如何在 Gitlab 中配置 CI 能力。
Travis CI简介 什么是持续集成? Travis CI 提供的是持续集成服务(Continuous Integration,简称 CI)。它绑定 Github 上面的项目,只要有新的代码,就会自动抓取。然后,提供一个运行环境,执行测试,完成构建,还能部署到服务器。
CI/CD持续集成概念(一) 持续集成 1.集成的概念 1.1.什么是集成 在实际的软件开发中,常常会有如下两种场景: 1.现在有一个电商平台开发,由于平台需要开发的某块较多,此时需要不同的开发人员开发不同的模块,最后将所有人开发好的代码集成到一个系统中,集成完毕后需要对其进行部署上线 2.随着时间的推移,该系统无论是bug修复、还是新功能开发,后续都需要对系统进行不断的更新迭代
打造K8S与Jenkins的持续集成系统-CI部分 持续集成系统包括CI和CD。在这篇文章里,我们只讨论CI的实现。关于K8S,Jenkins,私有仓库的安装这里不进行说明,只讲解如何将这些工具组合在一起。
Travis CI实现持续部署 安装Ruby 2.0以上版本并安装travis的命令行工具 可以看出我的已经是安装好的(Ubuntu 16.04.3 LTS 系统) ruby -v ruby 2.3.1p112 (2016-04-26) [x86_64-linux-gnu] 安装:travis gem install travis  安装完成后,切换到你开发环境的项目目录下,运行: 根据提示,输入你刚刚用于travis-ci网站登录的Github账户名及密码。