SuperAPI AI 工具集

upgrading-chart

设计与创作

查看项目

更新于 10-15 17:33

技能介绍

用途:自动化升级 Chainloop 项目的 Helm chart 依赖,支持 PostgreSQL 与 Vault(均为 Bitnami chart),同时更新 vendorized chart、容器镜像及相关 CI/CD 工作流。

主要能力:支持两种升级类型。类型一为指定镜像版本升级(chart 不变);类型二为升级到最新次版本 chart(可能连带镜像更新)。容器镜像仅在 chart 升级时更新,不单独更新(类型一除外)。

使用方式:先确定升级类型与目标 chart(postgresql 或 vault);做升级前校验,用 cat deployment/chainloop/charts/<chart-name>/Chart.yaml | grep "^version:" 与 grep "^appVersion:" 查看当前版本;再做版本兼容检查,提取主版本号比对,若主版本变化必须立即停止并交由人工审查。类型一需在 Bitnami Containers 定位镜像、提取 APP_VERSION,更新 Chart.yaml 的 appVersion 及 .github/workflows/build_external_container_images.yaml 的 commit hash;类型二需在 Bitnami Charts CHANGELOG.md 定位目标版本、下载解压、比对镜像变化、更新 vendorized chart,并按顺序(先 vendorized 后主 chart)更新依赖。

验证:helm lint deployment/charts/<chart-name> 与 helm lint deployment/chainloop;helm template 做模板校验;cd devel && docker compose up 本地测试;grep -r "appVersion|image.*tag" deployment/charts/<chart-name>/ 核对镜像一致性。

限制:禁止主版本升级(1.x.x → 2.x.x),检测到须立即停止。Dex 为自管理,走单独流程,本技能不覆盖。应始终使用 commit hash 保证可复现。回滚可执行 git checkout HEAD -- deployment/、删除 Chart.lock、helm dependency build 后重启 docker compose。具体文件清单与详细步骤见 image-upgrade-process.md、chart-upgrade-process.md、files-modified.md。