gitlab-ci配置
gitlab-ci配置配置文件详解gitlab-ci.yml参数列表值是否必须描述script必须定义由Runner执行的shell脚本或命令extends非必须定义此作业将继承的配置条目image非必须需要使用的docker镜像,请查阅该文档services非必须定义所需的docker服务,请查阅该文档stage非必须定义一个工作场景阶段,默认是testtype
·
gitlab-ci配置
配置文件详解
gitlab-ci.yml参数列表
值 | 是否必须 | 描述 |
---|---|---|
script | 必须 | 定义由Runner执行的shell脚本或命令 |
extends | 非必须 | 定义此作业将继承的配置条目 |
image | 非必须 | 需要使用的docker镜像,请查阅该文档 |
services | 非必须 | 定义所需的docker服务,请查阅该文档 |
stage | 非必须 | 定义一个工作场景阶段,默认是test |
type | 非必须 | stage的别名,不赞成使用 |
variables | 非必须 | 在job级别上定义的变量 |
only | 非必须 | 定义job所引用的git分支 |
except | 非必须 | 定义job所不适用的git分支 |
tags | 非必须 | 定义job所适用的runner,tags为runner标签 |
allow_failure | 非必须 | 允许任务失败,但是如果失败,将不会改变提交状态 |
when | 非必须 | 定义了job什么时候执行,可以是on_success、on_failure、always和manual |
dependencies | 非必须 | 定义了该job依赖哪一个job,如果设置该项,可以通过artifacts设置 |
artifacts | 非必须 | 工件,在依赖项之间传递的东西,类似cache,但原理与cache不同 |
cache | 非必须 | 定义需要被缓存的文件、文件夹列表 |
before_script | 非必须 | 覆盖在作业之前执行的脚本或命令 |
after_script | 非必须 | 覆盖在作业之后执行的脚本或命令 |
environment | 非必须 | 定义让job完成部署的环境名称 |
coverage | 非必须 | 定义job设置代码覆盖率 |
retry | 非必须 | 定义job失败后的自动重试次数 |
gitlab-ci配置示例
before_script:
- echo "每个job之前都会执行"
after_script:
- echo "每个job之后都会执行"
# 定义testing的任务
to-testing:
# 场景为构建
stage: deploy
# 在哪个分支上可用
only:
- testing
- /^testing_.*$/ #正则表达式,只有testing_开头的分支才会执行
# sh文件路劲是git-ruuner服务所在的服务器
script:
- /bin/bash /home/deploy.sh
# 在runner中设置,不然merge时不会推进队列
tags:
- deploy_develop
environment:
name: testing
# 定义production的任务
to-production:
# 场景为构建
stage: production
# 在哪个分支上可用
only:
- production
# sh文件路劲是git-ruuner服务所在的服务器
script:
- /bin/bash /home/deploy.sh
tags:
- deploy_production
environment:
name: production
更多推荐
已为社区贡献1条内容
所有评论(0)