GitLab CI/CD持续集成设置
GitLab CI/CD持续设置
官方文档地址(https://docs.gitlab.com/ee/ci/README.html)
GitLab CI、CD功能非常完善,只需要简单几步,就可以完成项目的持续集成和部署。
你需要准备的是:
1、 准备一个可以执行测试的服务器
2、 注册gitlab-ci-runner到项目
3、 配置CI执行策略,tag触发,还是每个commit都执行
4、 编写.gitlab-ci.yml文件,编写需要自动执行不命令即可
然后提交一个commit尝试下,如果没有问题,会看到pipeline中有任务在执行
Jobs中有每个阶段的任务执行,点击可以看到执行的详细信息,有对应的信息打印。
1. 编写.gitlab-ci.yml文件
对于项目的持续集成,要做哪些动作,该如何定义这动作,yml文件的编写语法,参见官方文档(https://docs.gitlab.com/ee/ci/yaml/README.html)。
.gitlab-ci.yml文件放在项目的根目录下,代码提交后,CI会自动根据文件定义的动作来执行。
并在在gitlab的项目的页面,开发.gitlab-ci.yml文件,会出现This GitLab CI configuration is valid. Learn more这样的提示,说明yml文件没有语法错误,如果有错误,则根据提示修改。
2. 准备执行服务器
Gitlab runner支持多种类型的服务器,这里我们使用Centos平台。
下载最新的gitlab-runner的软件,x86-64的版本下载地址为(https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64)。
为了操作方便,把文件名修改为gitlab-runner。
赋予文件的可执行权限:chmod a+x gitlab-runner
下载后,复制文件到runner运行服务器。
3. 注册执行服务器
打开gitlab的项目setting->CI/CD-Runners settings页面,会看到
gitlab runner配置需要的信息,包括url地址,以及token信息。
这里有两个关键信息:一个gitlab的服务器http地址,另外是注册runner的token。
注册runner服务器,
1、 执行./gitlab-runner regsiter,根据提示输入http地址,token注册runner,没有异常则会提示注册成功。
2、 使用./gitlab-runner status查看状态,如果没有running,则使用./gitlab-runner start来启动runner
3、 在web页面查看runner,正常可以看到刚才注册的runner。
这里的runner类型选择:Docker
4. 简单的demo
上面的设置完成后,提交一个commit触发CI。
这里我们的Demo的脚本如下:
image: your-project:latest test: script: - echo “test” - cd tests - python test.py
这个脚本非常简单,拉取项目的最新镜像,打印test,然后到tests文件下执行test.py文件
从这里可以看出,yaml的语法和shell非常类似。
5. 执行结果展示
在CI/CD->pipeline可以看到每次提交CI的执行情况,点击status可以看到pipeline的执行详细信息。
Pipeline执行成功,则会显示为绿色的pass。