我想知道 Kubernetes 的 client-go 库是否包含一个验证 json/yaml 文件是否存在的函数。理想情况下,它会捕获错误,例如名称不符合 DNS-1123 或指定的无效字段。如果返回错误列表而不是在遇到第一个错误后返回函数,这也是理想的。
我尝试过的一个想法是执行 exec 来调用kubectl --validate --dry-run
,但这并不能完全验证清单(这意味着可以在此处传递,但在实际应用文件时会失败)。它也会在第一个错误处停止。另外,如果您有清单清单要查看,它会很快变得昂贵。
我查看的另一个选项是Kubernetes GitHub Issue 193,但这不是真正合适的功能,也不是我正在寻找的检查。