1.GitLab Runner
gitlab runner 详细介绍地址:https://docs.gitlab.com/runner/
1.1 安装GitLab Runner
目前我们是通过docker容器直接进行安装
1.docker pull gitlab/gitlab-runner-helper
2.docker run -d --name gitlab-runner --restart always-v /var/run/docker.sock:/var/run/docker.sock --volumes-from gitlab-runner-config gitlab/gitlab-runner:latest
进入该容器
docker exec -it gitlab-runner /bin/bash
1.2 注册Runner
1.运行一下命令:
gitlab-runner register
2.输入我们的GitLab实例URL:
3.输入GitLab项目仓库的令牌以注册Runner:
4.输入Runner描述
5.输入与该Runner关联的标签 (此步千万不要乱输入,它是和项目的.gitlab.ci.yml 相对应的)
phpcs
6.输入Runner执行程序 (我们选择使用docker来进行)
docker
7.如果选择了docker作为执行程序,则需要输入一个默认执行的镜像 (此镜像为已经提前做好的扫描代码规范的镜像)
dockerhub.lechange.com/openplatform/phpcs:latest
2.GItLab CI
当注册了GitLab Runner之后,如何在项目中具体应用呢?
.gitlab-ci.yml 详细介绍:https://shopgit.imoulife.com/help/ci/yaml/README.md
2.1 在项目根目录下创建 .gitlab-ci.yml文件
内容如下:
image:
name: dockerhub.lechange.com/openplatform/phpcs:latest
phpbc:
tags:
- phpbc
- phpcbf
- PHP_CodeSniffer
only:
- develop
script:
- source /etc/profile
- phpcs --standard=PSR2 --encoding=utf-8 -n -p /builds/41592/swoole_yii2/modules/v1/
具体过程描述:
GitLab Runner 以镜像 dockerhub.lechange.com/openplatform/phpcs:latest 创建一个内部容器,checkout项目的 develop分支出来 进行 script 配置的脚本运行在容器内运行,从而扫描我们项目的代码规范。
3.落实项目应用
在项目中我们已经配置了.gitlab-ci.yml ,此时在我们项目中只要develop分支有任何的修改,将会自动运行我们配置的GitLab Runner 进行代码规范扫描
4.总结
以上只是 我们应用了GitLab CI/CD 的冰山一角,可以通过以上的操作看到该工具可以做项目相关的包括自动化发布,自动化单元测试跑分 等等一系列运维上的事情,后续就看我们如何通过该工具来拟定适合我们项目的整体流水线流程来保证项目迭代的质量以及上线的稳定