diff --git a/pkg/api/v1alpha1/register.go b/pkg/api/v1alpha1/register.go index 2fe2ddc9e..2714391d1 100644 --- a/pkg/api/v1alpha1/register.go +++ b/pkg/api/v1alpha1/register.go @@ -17,6 +17,7 @@ limitations under the License. package v1alpha1 import ( + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime/schema" ) @@ -34,6 +35,16 @@ const GroupVersion = "v1alpha1" // SchemeGroupVersion is group version used to register these objects var SchemeGroupVersion = schema.GroupVersion{Group: GroupName, Version: GroupVersion} +// Kind takes an unqualified kind and returns a Group qualified GroupKind +func Kind(kind string) schema.GroupKind { + return SchemeGroupVersion.WithKind(kind).GroupKind() +} + +// Resource takes an unqualified resource and returns a Group qualified GroupResource +func Resource(resource string) schema.GroupResource { + return SchemeGroupVersion.WithResource(resource).GroupResource() +} + func init() { // We only register manually written functions here. The registration of the // generated functions takes place in the generated files. The separation @@ -46,5 +57,9 @@ func addKnownTypes(scheme *runtime.Scheme) error { scheme.AddKnownTypes(SchemeGroupVersion, &ReschedulerPolicy{}, ) + + metav1.AddToGroupVersion(scheme, SchemeGroupVersion) + scheme.AddKnownTypes(schema.GroupVersion{Version: "v1"}, &metav1.Status{}) + return nil }