gitlab-ci/cd工作流简单说明
gitlab上的仓库有项目提交的时候,且项目中存在.gitlab-ci.yml文件,gitlab会解析该文件中的配置,如果符合配置的触发条件,则会掉起gitlab-runner来执行一条流水任务
所以想要处罚gitlab的流水任务(ci/cd),需要在根目录下建立.gitlab-ci.yml来进行配置
gitlab-ci.yml配置
详细的配置客参考gitlab官方文档
推荐参考博客
一个简单的.gitlab-ci.yml配置案例
#当前流水线所需要的镜像环境
image: node:alpine
#缓存,gitlab流水线会将安装的node包移除,需要设置缓存
cache:
key: node_modules
paths:
- node_modules
# 任务阶段,默认的有 .pre 、 build 、 test 、deploy 、.post(执行有先后顺序)
# 也可以自定义阶段,自己定义的阶段,执行顺序是从上往下依次执行
# 例如下面的例子job_2会比jon_1先执行
stages:
- stage2
- stage1
- stage3
# 具体的任务
job_1:
stage: stage1 #任务阶段,可不定义,从全局的stages里面取,如果没有定义则从默认的stages里面取
script: #执行的脚本
- npm i
- npm run build
retry: 2 #任务失败后重试的次数
job_2:
stage: stage2
script: echo 'hello world2'
job_2-2:
stage: stage2
script: echo 'hello world2-2'
only:
- release #当分支名是release的时候才执行
job_3:
stage: stage3
script: echo 'hello world3'