如何解析多个对象的引用
How to resolve reference for multiple objects
我正在使用 go-client 库。
我正在工作负载中搜索安装的秘密。
在我的示例中,我们有两个工作负载:daemonset
和 deployments
.
虽然两者是不同的对象,但结构相似:
type DaemonSet struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`
Spec DaemonSetSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"`
Status DaemonSetStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"`
}
type Deployment struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`
Spec DeploymentSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"`
Status DeploymentStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"`
}
我收到以下错误:
Unresolved reference
发生这种情况是因为编译不知道我指的是什么对象:v1beta2.DaemonSetList
或 v1beta2.DeploymentList
。
我该如何为他们俩解决这个问题?
没有。发生这种情况是因为您的变量 controllerList
未在正确的范围内声明。
它必须在 for
循环和 switch
语句共享的公共范围内声明,父范围,即 if controllerName != ...
.
** 请注意,对于 post,您不得在 SO 上包含代码的屏幕截图,但应提供代码的最小可重现示例,复制 && 粘贴 && 在您的 post 中检查。
我正在使用 go-client 库。
我正在工作负载中搜索安装的秘密。
在我的示例中,我们有两个工作负载:daemonset
和 deployments
.
虽然两者是不同的对象,但结构相似:
type DaemonSet struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`
Spec DaemonSetSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"`
Status DaemonSetStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"`
}
type Deployment struct {
metav1.TypeMeta `json:",inline"`
metav1.ObjectMeta `json:"metadata,omitempty" protobuf:"bytes,1,opt,name=metadata"`
Spec DeploymentSpec `json:"spec,omitempty" protobuf:"bytes,2,opt,name=spec"`
Status DeploymentStatus `json:"status,omitempty" protobuf:"bytes,3,opt,name=status"`
}
我收到以下错误:
Unresolved reference
发生这种情况是因为编译不知道我指的是什么对象:v1beta2.DaemonSetList
或 v1beta2.DeploymentList
。
我该如何为他们俩解决这个问题?
没有。发生这种情况是因为您的变量 controllerList
未在正确的范围内声明。
它必须在 for
循环和 switch
语句共享的公共范围内声明,父范围,即 if controllerName != ...
.
** 请注意,对于 post,您不得在 SO 上包含代码的屏幕截图,但应提供代码的最小可重现示例,复制 && 粘贴 && 在您的 post 中检查。