GitLab-CI是GitLab官方提供的持续集成服务,我们可以在根目录下新建.gitlab-ci.yml文件,自定义持续集成流程。代码提交到gitlab,满足指定条件后,即可触发自动化构建,发布。流程如下
1.编写.gitlab-ci.yml
.gitlab-ci.yml是一个声明式文件(类似于Jenkins里的声明式pipeline?),定义ci/cd的每个阶段做什么
变量 variables--自定义变量或者读取Gitlab系统自带的变量
阶段 stages--简单的理解为“步骤”,会顺序执行,如果上一步错了,那不会继续执行下一步
任务 Job--定义脚本
示例如下
stages:
- setup #先执行
- test #后执行
prepare:
stage: setup
script:
- bundle install --deployment
#仅在master分支执行
only:
- master
rspec:
stage: test
script:
- bundle exec rspec
2.gitlab-runner部署(demo是部署在linux上)
sudo curl -L --output /usr/local/bin/gitlab-runner https://gitlab-runner-downloads.s3.amazonaws.com/latest/binaries/gitlab-runner-linux-amd64
sudo chmod +x /usr/local/bin/gitlab-runner
sudo gitlab-runner install --user=test --working-directory=/home/test (这里test是用户名称)
sudo gitlab-runner start
gitlab-runner register (这里向gitlab注册,需要输入gitlab url,token,tag等信息,可在设置--cicd--runner找到,出现Runners activated for this project即成功)
3.配置完成后,在指定分支上提交代码即可触发定义的步骤