目录
一. CI/CD是什么
CI (Continuous Integration)
即持续集成,它是指频繁地(一天多次)将代码集成到主干,目的就为了让产品保证质量的同时快速迭代;通常它需要通过自动化测试,从而保证集成的代码的稳定性;
CD (Continuous Delivery/Deployment)
即持续交付/部署,可以看作持续集成的下一步,它指的是频繁地将软件的新版本,交付给质量团队or用户测试。如果测试通过,代码就可以部署到生产环境中。
下面这个图,可以很直观的看出来
编辑
二、CI/CD优点
编辑
三、比较流行的实现方式
1.通过三方软件以及配置
例如Coding、阿里云云效等等
2. Jenkins
Jenkins是一个开源的、提供友好操作界面的持续集成(CI)工具
3,GitLab CICD
Gitlab CI/CD内置于GitLab,是Gitlab一个简洁好用的的持续集成/持续交付/持续部署的框架
四、 GitLab CI/CD介绍
概念介绍:
GitLab-CI 是GitLab提供的CI工具。它可以通过指定通过如push/merge代码、打tag等行为触发CI流程;同时也可以指定不同场景要触发的不同的构建脚本
具体的使用方式:
1. 在项目根目录中配置一个 .gitlab-ci.yml 文件来启动其功能
2.安装GitLab-Runner。Runner为运行工具,是用来运行 YML 文件指定的脚本内容
yml是什么:
YML文件格式是YAML (YAML Aint Markup Language)编写的文件格式,YAML是一种直观的能够被电脑识别的的数据数据序列化格式,并且容易被人类阅读, 容易和脚本语言交互的,
YML文件的扩展名可以使用.yml或者.yaml
以下为yaml的数据格式:
编辑
五、.gitlab-ci.yml 关键字介绍
5.1 stages:
编辑
5.2 Job
编辑
5.3 script
编辑
5.4 cache
编辑
5.5 only/except
编辑
5.6 variables
编辑 5.7 when
编辑
5.8 tags
编辑
5.9 Pipeline
编辑
编辑
其余更多的信息,可以学习官方文档
六、GitLab-Runner
6.1 安装Runner
Runner 的安装方式有很多种,本次介绍的是使用docker安装
1.编写文件
2.执行docker-compose up
version: '3' services: gitlab: image: 'gitlab/gitlab-runner:latest' container_name: gitlab-runner restart: always privileged: true volumes: - /etc/localtime:/etc/localtime - /var/run/docker.sock:/var/run/docker.sock - /usr/local/bin/docker-compose:/usr/local/bin/docker-compose - /usr/bin/docker:/usr/bin/docker - ./config:/etc/gitlab-runner - ./harbor:/root/harbor
6.2 注册runner
步骤:
1,docker exec -it gitlab-runner gitlab-runner register
2,输入url
3,输入token
4,输入description
5,输入tags
6,选择执行器
编辑
当有了以上的准备:
1,配置好 .gitlab-ci.yml 文件
2,写好对应的脚本
3,同时配置好 GitLab-runner 后
就可以开启并体验 CI 流水线了。
当提交代码后,就可以触发GitLab CI的Pipeline,并执行对应的stages及其jobs啦