SuperAPI AI 工具集

promotion-pipeline

部署与运维

查看项目

更新于 10-15 22:38

技能介绍

用途:该技能描述 homelab 使用的 OCI 制品晋级流水线,实现不可变、可审计的部署。变更分三阶段流转:构建、在集成环境验证、晋级到正式环境,技能覆盖端到端追踪与调试。

主要能力:追踪变更从 PR 合并到正式部署的每个环节;排查制品卡在集成阶段或正式环境未更新的问题;查看 Canary 校验状态;执行紧急手动晋级与回滚。

流水线流程:PR 合并到 main(kubernetes/ 有变更)触发 build-platform-artifact.yaml,发现 GHCR 最新稳定标签并递增补丁号,推送带 X.Y.Z-rc.N 及 sha-<short>、integration-<short> 标签的 OCI 制品;集成集群的 OCIRepository 以 semver ">= 0.0.0-0" 轮询并检测新 RC,Flux 协调 platform Kustomization;Flux Alert(validation-success)监听协调完成并触发 repository_dispatch;tag-validated-artifact.yaml 去掉 RC 后缀,打上 validated-<sha> 与稳定 X.Y.Z 标签;正式集群以 semver ">= 0.0.0" 轮询并部署。

使用方式:用 --context <cluster> 指定集群。常用命令包括 gh run list --workflow=build-platform-artifact.yaml --limit=5、flux list artifact oci://ghcr.io/<owner>/homelab/platform --limit=10 | grep <short-sha>、kubectl get ocirepository -n flux-system -o wide、flux reconcile source oci flux-system -n flux-system、kubectl describe alert validation-success -n flux-system、gh workflow run tag-validated-artifact.yaml -f artifact_sha=<7char-sha>。

手动晋级:优先用 workflow_dispatch;工作流故障时可用 .claude/skills/promotion-pipeline/scripts/manual-promote.sh <7char-sha> <X.Y.Z>,需 GITHUB_TOKEN(packages:write + repo scope)、GITHUB_USER 与 flux CLI。

回滚:可固定 OCIRepository 标签(需后续还原)、回退 PR(最安全),或用 flux tag artifact 重新打更高的稳定标签。

限制:构建仅在 kubernetes/** 变更时触发;新标签必须高于当前版本;Canary 每 60 秒运行一次,失败会触发 CanaryCheckFailure 与 CanaryCheckHighFailureRate 告警。更多细节见 references/pipeline-reference.md 及相关 CLAUDE.md 文档。