GitLab CICD
GitLab CICD
目录
入门
资料准备
参考资料:
关键术语:
CI,Continuous Integration,持续集成
即在源代码变更后(git push)后自动检测(code lint)、构建和进行单元测试的过程,持续集成的目标是快速确保开发人员新提交的代码是好的(少bug)
CD,Continuous Delivery,持续交付
通常是指整个流程链(管道),它自动监测源代码变更并通过构建、测试、打包和相关操作运行它们以生成可部署的版本(可以是apk打包,也可以是网站部署),基本上没有任何人为干预。它包括持续集成,持续测试(保证代码质量),持续部署(自动发布版本,供用户使用)。
相似的工具
有Jenkins、Travis CI、GoCD等
GitLab的CI/CD
Gitlab的CI/CD算是比较简单的了,只需要依靠一份".gitlab-ci.yml",将该文件随代码上传,Gitlab就会自动执行相应的任务,从而实现CI/CD。
GitHub的CI/CD
.github/workflows/CI.yml
选用
环境准备
要使用Gitlab的CI/CD功能,一般有以下几种选择:
第一,自己搭一套Gitlab,再加上部署自己的Runner(即实际执行代码的机器),推荐docker部署
第二,使用公司/官方的Gitlab,且使用自带的Runner,即shared Runner, 见下图。
图:https://p1-jj.byteimg.com/tos-cn-i-t2oaga2asx/gold-user-assets/2020/1/11/16f93345728eccb0~tplv-t2oaga2asx-jj-mark:3024:0:0:0:q75.awebp
link: juejin.cn/post/684490…www.xuxusheng.com/post/使用Dock…docs.gitlab.com/runner/inst…
Gitlab-ci 编写
.gitlab-ci.yml
遵循YAML文件的语法,这份文件记录了你想要执行的各种指令,这些指令可以用来对你的代码进行规范检查(例如PEP8)、自动打包(例如Android自动打包)、自动部署等。
对于新手,如果不知道自己写的.gitlab-ci.yml
是否有错误,可以通过Gitlab自带的CI Lint
进行检查。
本文使用版本:GitLab Community Edition 12.5.6-ee