fix(ci): registry cache-to加ignore-error,避免ACR tag不可变导致build失败 #660

Merged
auto-approve-bot merged 1 commits from fix/registry-cache-tag-immutable into develop 2026-07-20 22:25:37 +08:00
Owner

问题

ACR(阿里云容器镜像服务)默认tag不可变,docker buildx写registry缓存时使用固定tag(如api-cache:develop),第二次构建尝试覆盖tag时失败,导致整个build失败触发重试。

修复

给两处--cache-to type=registry加上ignore-error=true,写缓存失败时不影响主build,只是跳过缓存写入。

影响

  • 写缓存失败不再导致build失败(之前会触发2次重试,浪费10+分钟)
  • 本地local cache不受影响,仍然正常工作
  • registry cache仍可读(cache-from有ignore-error),只是写可能失败

后续优化方向

  1. 去阿里云控制台将缓存仓库设置为tag可变(Mutable)
  2. 或改用带日期/版本号的动态cache tag策略
## 问题 ACR(阿里云容器镜像服务)默认tag不可变,docker buildx写registry缓存时使用固定tag(如api-cache:develop),第二次构建尝试覆盖tag时失败,导致整个build失败触发重试。 ## 修复 给两处`--cache-to type=registry`加上`ignore-error=true`,写缓存失败时不影响主build,只是跳过缓存写入。 ## 影响 - 写缓存失败不再导致build失败(之前会触发2次重试,浪费10+分钟) - 本地local cache不受影响,仍然正常工作 - registry cache仍可读(cache-from有ignore-error),只是写可能失败 ## 后续优化方向 1. 去阿里云控制台将缓存仓库设置为tag可变(Mutable) 2. 或改用带日期/版本号的动态cache tag策略
xiaoxia added 1 commit 2026-07-20 22:19:42 +08:00
fix(ci): registry cache-to加ignore-error,避免ACR tag不可变导致build失败
CI/CD Pipeline / Build Staging API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Staging Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Deploy Staging (Watchtower auto-deploy) (pull_request) Has been skipped
CI/CD Pipeline / Build Production API Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Web Image (pull_request) Has been skipped
CI/CD Pipeline / Build Production Worker Image (pull_request) Has been skipped
CI/CD Pipeline / Staging E2E Tests (pull_request) Has been skipped
CI/CD Pipeline / Staging API Integration Tests (pull_request) Has been skipped
CI/CD Pipeline / ACR Image Cleanup (pull_request) Has been skipped
CI/CD Pipeline / Deploy Production (pull_request) Has been skipped
CI/CD Pipeline / Production Browser E2E (pull_request) Has been skipped
CI/CD Pipeline / Check if frontend-only change (pull_request) Successful in 22s
Preview Deploy / Deploy Preview Environment (pull_request) Successful in 1m43s
CI/CD Pipeline / Frontend Unit Tests (pull_request) Has been skipped
AI Code Review / AI Code Review (pull_request) Successful in 2m3s
CI/CD Pipeline / Frontend Lint (pull_request) Successful in 2m5s
CI/CD Pipeline / Validate Code Quality And Tests (pull_request) Successful in 4m21s
PR Automation / Auto Approve on CI Green (pull_request) Successful in 4m53s
CI/CD Pipeline / Unit Tests (pull_request) Successful in 5m25s
PR Automation / Auto Merge on CI Green + Approved (pull_request) Successful in 5m54s
Preview Cleanup / Cleanup Preview Environment (pull_request) Successful in 17s
CI/CD Pipeline / Integration Tests (pull_request) Successful in 2m25s
1e9b4e338a

🚀 预览环境已部署

项目 详情
PR号 #660
预览链接 https://pr-660.preview.xiaoxiajianji.com
API环境 staging

💡 预览环境使用 staging API 数据,请勿在预览环境中操作重要数据。

🔄 每次提交新代码后预览环境会自动更新。

🗑️ PR 关闭或合并后,预览环境会自动清理。

🚀 **预览环境已部署** | 项目 | 详情 | |------|------| | PR号 | #660 | | 预览链接 | [https://pr-660.preview.xiaoxiajianji.com](https://pr-660.preview.xiaoxiajianji.com) | | API环境 | staging | > 💡 预览环境使用 staging API 数据,请勿在预览环境中操作重要数据。 > > 🔄 每次提交新代码后预览环境会自动更新。 > > 🗑️ PR 关闭或合并后,预览环境会自动清理。
Collaborator

📊 审查概览

  • 整体评价:通过
  • 严重问题数量:0 个
  • 一般建议数量:0 个

需修改的问题(严重)

💡 改进建议(一般)

良好实践

  • 增强 CI 健壮性:在 --cache-to 参数中添加 ignore-error=true 是合理的容错策略。这确保了即使镜像缓存推送到 Registry 失败(例如由于网络波动或权限瞬时问题),也不会阻断主镜像的构建和推送流程,避免了因非核心步骤失败导致整个 CI 任务失败。
  • 配置一致性:代码修改使得 --cache-to 的错误处理策略与已有的 --cache-from 保持一致,逻辑统一。

🤖 由 AI 代码审查机器人自动生成 | 2026-07-20 22:21:46 | 模型:

### 📊 审查概览 - 整体评价:通过 - 严重问题数量:0 个 - 一般建议数量:0 个 ### ❌ 需修改的问题(严重) 无 ### 💡 改进建议(一般) 无 ### ✅ 良好实践 - **增强 CI 健壮性**:在 `--cache-to` 参数中添加 `ignore-error=true` 是合理的容错策略。这确保了即使镜像缓存推送到 Registry 失败(例如由于网络波动或权限瞬时问题),也不会阻断主镜像的构建和推送流程,避免了因非核心步骤失败导致整个 CI 任务失败。 - **配置一致性**:代码修改使得 `--cache-to` 的错误处理策略与已有的 `--cache-from` 保持一致,逻辑统一。 --- <sub>🤖 由 AI 代码审查机器人自动生成 | 2026-07-20 22:21:46 | 模型: </sub> <!-- AI_CODE_REVIEW_AUTO_COMMENT -->
auto-approve-bot approved these changes 2026-07-20 22:24:36 +08:00
auto-approve-bot left a comment
Collaborator

CI全绿,自动审批通过。

CI全绿,自动审批通过。
auto-approve-bot approved these changes 2026-07-20 22:24:36 +08:00
auto-approve-bot left a comment
Collaborator

CI全绿,自动审批通过。

CI全绿,自动审批通过。
auto-approve-bot merged commit efcc5eafdf into develop 2026-07-20 22:25:37 +08:00
auto-approve-bot deleted branch fix/registry-cache-tag-immutable 2026-07-20 22:25:37 +08:00

🗑️ 预览环境已清理

PR #660 已关闭或合并,对应的预览环境已被清理。

如有需要,可以重新打开 PR 来重新生成预览环境。

🗑️ **预览环境已清理** PR #660 已关闭或合并,对应的预览环境已被清理。 > 如有需要,可以重新打开 PR 来重新生成预览环境。
Sign in to join this conversation.