GitLab CI/CD持续设置
官方文档地址(https://docs.gitlab.com/ee/ci/README.html)html
GitLab CI、CD功能很是完善,只须要简单几步,就能够完成项目的持续集成和部署。python
你须要准备的是:linux
一、 准备一个能够执行测试的服务器git
二、 注册gitlab-ci-runner到项目web
三、 配置CI执行策略,tag触发,仍是每一个commit都执行shell
四、 编写.gitlab-ci.yml文件,编写须要自动执行不命令便可服务器
而后提交一个commit尝试下,若是没有问题,会看到pipeline中有任务在执行gitlab
Jobs中有每一个阶段的任务执行,点击能够看到执行的详细信息,有对应的信息打印。测试
1. 编写.gitlab-ci.yml文件
对于项目的持续集成,要作哪些动做,该如何定义这动做,yml文件的编写语法,参见官方文档(https://docs.gitlab.com/ee/ci/yaml/README.html)。url
.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服务器,
一、 执行./gitlab-runner regsiter,根据提示输入http地址,token注册runner,没有异常则会提示注册成功。
二、 使用./gitlab-runner status查看状态,若是没有running,则使用./gitlab-runner start来启动runner
三、 在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。