将 Kubernetes YAML 文件反序列化为 Go 结构
尝试将 Kubernetes YAML 文件反序列化为 Go 结构时,您可能会遇到错误,指示“种类”未注册。要解决此问题,请导入适当的架构包。
在提供的示例中,错误消息“没有为版本‘apps/v1beta1’注册任何类型的‘部署’”表明“部署”类型的架构不被识别。要修复此问题,请导入“_ 'k8s.io/client-go/pkg/apis/extensions/install'。”
以下是包含此修复的示例代码的修改版本:
<code class="go">package main import ( "fmt" "k8s.io/client-go/pkg/api" _ "k8s.io/client-go/pkg/api/install" _ "k8s.io/client-go/pkg/apis/extensions/install" ) ...</code>
此外,如果反序列化其他资源类型时遇到错误,请务必导入相应的 schema 包。
例如,要反序列化“Service”对象,您需要导入“ _ 'k8s.io/client-go/pkg/apis/core/install'."
通过导入正确的架构包,您可以确保向 Kubernetes 客户端注册必要的类型和架构,从而能够成功YAML 文件的反序列化。
以上是将 Kubernetes YAML 反序列化为 Go Struct 时如何解决“No Kind Registered”错误?的详细内容。更多信息请关注PHP中文网其他相关文章!