You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何识别GitLab中被重试的流水线任务?是否有对应CI变量?

GitLab CI/CD 识别任务是否被重试的方法

一、专用CI变量:CI_JOB_RETRY_ATTEMPTS

这是GitLab官方提供的核心变量,专门用于识别任务的重试状态:

  • 任务首次执行时,CI_JOB_RETRY_ATTEMPTS的值为0;
  • 每手动重试一次任务,该变量数值递增1(例如第一次重试后值为1,第二次重试后为2)。

你可以在Job的脚本逻辑中直接用这个变量判断任务是否被重试,示例代码:

if [ "$CI_JOB_RETRY_ATTEMPTS" -gt 0 ]; then
  echo "当前任务为重试执行,累计重试次数:$CI_JOB_RETRY_ATTEMPTS"
fi

二、辅助识别方式

如果需要进一步关联原始任务或从UI层面验证:

  • 每次重试会生成新的CI_JOB_ID,原始失败任务的ID可结合CI_PIPELINE_ID通过GitLab API查询,但脚本内判断优先使用CI_JOB_RETRY_ATTEMPTS更高效;
  • UI层面,GitLab任务详情页会为重试任务显示“重试”标签,日志顶部也会标注重试次数的提示。

内容的提问来源于stack exchange,提问作者Anjan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.11 14:40:29