gitlab-ci.yml关键字(六)inherit、retry 、interruptible
创始人
2024-05-03 12:48:29
0

inherit

示例

inherit:default

选择当前作业继承的全局默认值

可能的取值

  • true(默认)或false启用或禁用所有默认关键字的继承
  • 要继承的特定默认关键字列表
default:retry: 2image: ruby:3.0interruptible: truejob1:script: echo "This job does not inherit any default keywords."inherit:default: falsejob2:script: echo "This job inherits only the two listed default keywords. It does not inherit 'interruptible'."inherit:default:- retry- image

上面例子中,全局default 中定义了三个全局变量分别为:retry、image、interruptible。
在job1中不适用全局变量,在job2中仅使用retry、image两个全局变量

inherit:variables

用于控制全局变量inherit:variables继承的关键字。
可能的取值:

  • true(默认)或false启用或禁用所有全局变量的继承
  • 要继承的特定变量列表
variables:VARIABLE1: "This is variable 1"VARIABLE2: "This is variable 2"VARIABLE3: "This is variable 3"job1:script: echo "This job does not inherit any global variables."inherit:variables: falsejob2:script: echo "This job inherits only the two listed global variables. It does not inherit 'VARIABLE3'."inherit:variables:- VARIABLE1- VARIABLE2

interruptible

interruptible: true启用后,在为同一分支上的新更改启动管道时,将取消正在运行的作业。比如说每次提交都会触发代码扫描任务,在很短的时间内连续提交了两次,第一次的任务还没跑完,第二次触发时会中断第一次的任务。

如果设置了interruptible: false 在开始作业后无法取消后续作业

示例

stages:- stage1- stage2- stage3step-1:stage: stage1script:- echo "Can be canceled."interruptible: truestep-2:stage: stage2script:- echo "Can not be canceled."step-3:stage: stage3script:- echo "Because step-2 can not be canceled, this step can never be canceled, even though it's set as interruptible."interruptible: true

在上面例子中,如果此时再次触发流水线,则可能有两种结果

  1. 已取消,如果只是step-1正在运行或挂起。
  2. 未取消,step-2开始后。

retry

使用retry用于配置作业失败时重试的次数。如果未定义,则默认为0并且作业不会重试。

当一个作业失败时,该作业最多再处理两次。
可能的取值

  • 0(默认) / 1 / 2

示例

test:script: rspecretry: 2

retry:when

使用retry:when with retry:max仅针对特定的失败案例重试作业。 retry:max是最大重试次数,例如retry,可以是 0、1或2。
可能的取值:

  • always:重试任何失败(默认)
  • unknown_failure:失败原因不明时重试
  • script_failure:脚本失败时重试
  • api_failure: 重试 API 失败
  • stuck_or_timeout_failure:作业卡住或超时时重试
  • runner_system_failure:如果运行器系统出现故障(例如,作业设置失败),请重试
  • runner_unsupported:如果Runner不受支持,请重试
  • stale_schedule:如果无法执行延迟的作业,请重试
  • job_execution_timeout:如果脚本超过为作业设置的最大执行时间,则重试
  • archived_failure:如果作业已存档且无法运行,请重试
  • unmet_prerequisites:如果作业未能完成先决条件任务,请重试
  • scheduler_failure:如果调度程序未能将作业分配给运行器,则重试
  • data_integrity_failure:如果检测到结构完整性问题,请重试

示例

test:script: rspecretry:max: 2when: runner_system_failure

如果存在系统故障以外的故障,则不会重试该作业。

test:script: rspecretry:max: 2when:- runner_system_failure- stuck_or_timeout_failure

也可以使用数组来登记多个条件

相关内容

热门资讯

三门峡市2025年度市直机关公... 转自:三门峡发布三门峡市2025年度市直机关公开遴选拟任职人员公示公告根据2025年度三门峡市市直机...
进一步加强环境资源审判裁判规则...   为进一步加强环境资源审判裁判规则指引,最高人民法院近日公开发布第46批共5件生态环境保护专题指导...
纪念爱因斯坦广义相对论公开首讲... 来源:新华社 新华社柏林6月15日电(记者黄燕)当地时间14日下午至15日凌晨,柏林天文馆基金会在位...
“微专业”“小而精” 探索人才... 转自:中国发展网中国发展改革报社记者 | 荆文娜过去,人们常会问刚考上大学的学生,“学的什么专业?”...
行业大咖共议电影未来:需要重新... 上证报中国证券网讯(记者杨翔菲王彭)在短视频冲击、观众口味升级、行业成本攀升的多重挑战下,中国电影产...
国家统计局分析5月份国内消费市... 转自:北京日报客户端6月16日上午,国新办举行新闻发布会,介绍2025年5月份国民经济运行情况。记者...
最高检去年核准追诉低龄未成年人... 界面新闻记者 | 翟瑞民2025年6月16日,最高人民检察院发布《未成年人检察工作白皮书(2024)...
武威:构建全方位水安全网   西北角·中国甘肃网记者 张振国  为全面提升水环境自动监测能力,确保国家地表水水质自动站稳定高效...
最新:伊朗对以色列发动第八轮导... 据伊朗塔斯尼姆通讯社16日报道,伊朗当天凌晨对以色列发动了新一轮导弹袭击。这是伊朗伊斯兰革命卫队“真...
东软集团等成立数智康养产业新公... 人民财讯6月16日电,企查查APP显示,近日,大连数智康养产业有限公司成立,法定代表人为王星辉,经营...
国家统计局付凌晖:推动城市更新... 观点网讯:6月16日,国家统计局新闻发言人付凌晖在国新办新闻发布会上表示,下阶段将推动城市更新和危旧...
【女装】行业市场规模:2024... 转自:前瞻产业研究院行业主要上市公司:江南布衣(3306.HK)、歌力思(603808)、太平鸟(6...
2025年廊坊经洽会丨展商、好... 转自:廊坊发布编辑:董昕
正明生物:广州化妆品代加工的领... 在广州化妆品代加工这片竞争激烈的商业蓝海中,佛山正明生物科技有限公司宛如一艘稳健前行的巨轮,凭借卓越...
国家统计局:我国外贸发展综合优... 人民财讯6月16日电,国家统计局新闻发言人、国民经济综合统计司司长付凌晖在国新办新闻发布会上表示,5...
创新药BD交易再迎新进展,科创... 截至2025年6月16日 11:13,上证科创板生物医药指数下跌0.83%。成分股方面涨跌互现,悦康...
热闻|雷军“官宣”!小米YU7... 转自:大众报业·齐鲁壹点6月16日信息,雷军在微博发文表示,小米YU7将于6月底发布。还有很多重磅新...
伊朗对以色列发动第八轮导弹袭击 新华社德黑兰6月16日电(记者陈霄 沙达提)据伊朗塔斯尼姆通讯社16日报道,伊朗当天凌晨对以色列发动...
邦泽创科IPO:员工专科及以下... Hehson财经上市公司研究院|财报鹰眼预警广东邦泽创科电器股份有限公司(以下简称“邦泽创科”)拟计...
华康洁净:董秘回应股价不涨及市... 投资者提问:作为该股的股东,想了解下公司股价近来一直不涨的原因,所属板块已经涨了近20%了,但该股一...