Kubernetes 清单上游校验器
将以下提示词粘贴到你的 AI 对话框中:
请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/validate-kubernetes-manifests-against-upstream-schemas-before-cluster-apply。
技能介绍
解决什么问题
kubectl apply 失败的常见原因之一,是清单本身不符合 Kubernetes 的预期结构:字段写错、版本与 apiVersion 不匹配、误删了必填字段。这类错误往往要到 apply 那一刻才暴露,此时变更已经进入集群,回滚和排障都要额外成本。理想的做法是在把清单提交到集群之前,先做一次静态校验。但传统的 kubectl --dry-run=client 对客户端验证支持有限,--dry-run=server 则需要真实的集群凭据和连接。
它如何工作
这个技能把校验环节前移到 apply 之前,基于 kubeconform 按上游版本化 schema 验证清单,不依赖任何实时集群:
- 多形态输入:既支持原始清单文件,也能审查渲染后的 Helm 输出或 PR diff,覆盖从本地编写到 CI 校验的不同阶段。
- 结构化反馈:校验结果返回无效资源、缺失 schema 以及严格模式(strict mode)下的失败项,定位到具体资源而非笼统报错。
- 零凭据依赖:整个校验过程不需要连接集群,适合在 CI 流水线或本地 pre-commit 场景中运行。
典型流程是:拿到清单输入 → 由 kubeconform 按对应 Kubernetes 版本的上游 schema 逐资源校验 → 汇总输出失败明细,供 Agent 或开发者直接修正。
适用边界
- 前置条件:需要 Kubernetes 清单文件,以及环境中已安装
kubeconform二进制;技能本身不负责安装该工具。 - 不覆盖的验证:schema 校验只保证结构合规,不会检查资源之间的业务约束(如命名冲突、配额逻辑、控制器行为),这类问题仍需集群侧验证。
- 安装说明缺失:SKILL.md 中没有自动提取到经过验证的安装与使用步骤。在敏感或生产工作流中引入前,建议先审阅上游仓库(
https://github.com/1991513ccie-png/skills)的实际实现。
使用场景
- 在 CI 流水线中,apply 到集群之前需要校验 Helm 渲染后的清单结构是否合规
- 本地编写完原始 Kubernetes YAML 后,想先确认字段和 apiVersion 是否匹配上游 schema
- PR 合入前需要检查清单 diff 中是否存在缺失 schema 的资源或严格模式失败项
- 没有集群凭据的隔离环境里,需要对一批清单做结构级校验再决定是否提交
适合人员
- 平台工程师,需要在 CI 中拦截不合规的 Kubernetes 清单,避免错误变更进入集群
- 后端开发者,本地编写 Helm chart 后希望在 apply 前确认渲染结果是否符合上游模式
- DevOps 工程师,维护多集群变更流程,需要在无凭据环境下先做清单结构验证
- CI/CD 维护者,想在 PR 阶段通过 diff 检查发现缺失 schema 或严格模式失败的问题