From 959c56d325f01ea7430afe73978e8fd0d609fd8a Mon Sep 17 00:00:00 2001 From: Jordan Liggitt Date: Fri, 5 Apr 2019 01:04:41 -0400 Subject: [PATCH] Install meta.k8s.io/v1beta1 types into kubectl scheme --- pkg/kubectl/scheme/BUILD | 1 + pkg/kubectl/scheme/install.go | 2 ++ .../apimachinery/pkg/apis/meta/v1beta1/register.go | 12 ++++++++---- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/pkg/kubectl/scheme/BUILD b/pkg/kubectl/scheme/BUILD index 0f84a7bd7bd..876910abcaf 100644 --- a/pkg/kubectl/scheme/BUILD +++ b/pkg/kubectl/scheme/BUILD @@ -38,6 +38,7 @@ go_library( "//staging/src/k8s.io/api/storage/v1beta1:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1/unstructured:go_default_library", + "//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1beta1:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/runtime:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/runtime/schema:go_default_library", "//staging/src/k8s.io/apimachinery/pkg/runtime/serializer:go_default_library", diff --git a/pkg/kubectl/scheme/install.go b/pkg/kubectl/scheme/install.go index cb6e5ca0419..fd25c730e67 100644 --- a/pkg/kubectl/scheme/install.go +++ b/pkg/kubectl/scheme/install.go @@ -45,6 +45,7 @@ import ( storagev1 "k8s.io/api/storage/v1" storagev1beta1 "k8s.io/api/storage/v1beta1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" + metav1beta1 "k8s.io/apimachinery/pkg/apis/meta/v1beta1" "k8s.io/apimachinery/pkg/runtime/schema" utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/client-go/kubernetes/scheme" @@ -56,6 +57,7 @@ import ( func init() { // Register external types for Scheme metav1.AddToGroupVersion(Scheme, schema.GroupVersion{Version: "v1"}) + utilruntime.Must(metav1beta1.AddToScheme(Scheme)) utilruntime.Must(scheme.AddToScheme(Scheme)) utilruntime.Must(Scheme.SetVersionPriority(corev1.SchemeGroupVersion)) diff --git a/staging/src/k8s.io/apimachinery/pkg/apis/meta/v1beta1/register.go b/staging/src/k8s.io/apimachinery/pkg/apis/meta/v1beta1/register.go index d13254b41dd..6d348fe14f4 100644 --- a/staging/src/k8s.io/apimachinery/pkg/apis/meta/v1beta1/register.go +++ b/staging/src/k8s.io/apimachinery/pkg/apis/meta/v1beta1/register.go @@ -39,6 +39,12 @@ var scheme = runtime.NewScheme() var ParameterCodec = runtime.NewParameterCodec(scheme) func init() { + if err := AddToScheme(scheme); err != nil { + panic(err) + } +} + +func AddToScheme(scheme *runtime.Scheme) error { scheme.AddKnownTypes(SchemeGroupVersion, &Table{}, &TableOptions{}, @@ -46,11 +52,9 @@ func init() { &PartialObjectMetadataList{}, ) - if err := scheme.AddConversionFuncs( + return scheme.AddConversionFuncs( Convert_Slice_string_To_v1beta1_IncludeObjectPolicy, - ); err != nil { - panic(err) - } + ) // register manually. This usually goes through the SchemeBuilder, which we cannot use here. //scheme.AddGeneratedDeepCopyFuncs(GetGeneratedDeepCopyFuncs()...)