tags
指定runner
用于从允许运行该项目的所有Runner列表中选择特定的Runner,在Runner注册期间,您可以指定RUnner的标签
before_script:
- echo "before script" # 每次job运行时候会输出,
variables:
DOMAIN: example.com
stages:
- build
- deploy
build-code: # 一个作业(job),该作业名称为build-code
before_script:
- echo "before script" # script运行之前会执行
stage: build
tags:
- deploy # 使用该runner执行构建
only:
- main # 只构建master分支
script:
- echo "mvn clean"
- echo "mvn install"
- echo "$DOMAIN"
after_script:
- echo "after script" # 作业执行完之后会执行
deploy-app: # 在该job中未定义before_script和afeter_script默认会走全局的
stage: deploy # 其中一个stage
tags:
- deploy
only:
- main
script:
- echo "hello deploy"
after_script:
- echo "after script" # 作业执行完之后会执行
allow_failure 允许失败
allow_failure允许作业失败,默认值为false。启用后,如果作业失败,该作业将在用户界面中显示橙色警告,但是,管道的逻辑流程将认为作业成功/通过,并且不会阻塞。假设所有其他作业均成功,则该作业的阶段及其管道将显示相同的橙色警告。但是,关联的提交将被标记为“通过“,而不会发出警告。
job1:
stage: test
script:
- execute_script_that_will_fail
allow_failure: true
when 控制作业的运行
- on_success 前面阶段中的所有作业都成功时才执行作业,默认值。
- on_failure 当前面阶段出现失败时执行
- always 总是执行作业
- manual 手动执行作业
- deployed 延迟执行作业
retry 重试
- 配置在失败的情况下重试作业的次数
- 当作业失败并配置了retry,将再次处理该作业,直到到达retry关键字指定的次数
- 如果retry设置为2,并且作业在第二次运行成功(第一次重试),则不会再次重试,retry值必须是一个正整数,等于或大于0,但小于或等于2(最多两次重试,总共运行3次)
unittest:
stage: test
tags:
- build
only:
- master
script:
- ech "run test" # 这里故意写错了
retry:
max: 2
when:
- script_failure