这应该很简单:
func convertToMyCustomResource(obj runtime.Object) *v1alpha1.MyCustomResource {
myobj := obj.(*v1alpha1.MyCustomResource)
return myobj
}
如果这会产生错误(例如不可能的类型断言),请确保
MyCustomResource
runtime.Object
界面即
-
DeepCopyObject
方法
go run vendor/sigs.k8s.io/controller-tools/cmd/controller-gen/main.go paths=./api/... object
-
添加
"k8s.io/apimachinery/pkg/apis/meta/v1".TypeMeta
现场
我的客户资源
struct,它实现
GetObjectKind
方法
import (
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
)
type MyCustomResource struct {
metav1.TypeMeta `json:",inline"`
// ... other stuff
}