From 94e8bb62611f8c4d357f84d7721a8c2673fdac05 Mon Sep 17 00:00:00 2001 From: Chao Xu Date: Thu, 8 Jun 2017 13:41:07 -0700 Subject: [PATCH] unify register.go formats: networking/v1/register.go staging/src/k8s.io/kube-apiextensions-server/pkg/apis/apiextensions/v1alpha1/register.go staging/src/k8s.io/metrics/pkg/apis/custom_metrics/v1alpha1/register.go staging/src/k8s.io/metrics/pkg/apis/metrics/v1alpha1 register.go --- pkg/apis/networking/v1/register.go | 14 ++++++++++++-- .../pkg/apis/apiextensions/v1beta1/register.go | 5 +++-- .../pkg/apis/custom_metrics/v1alpha1/register.go | 5 +++-- .../metrics/pkg/apis/metrics/v1alpha1/register.go | 5 +++-- 4 files changed, 21 insertions(+), 8 deletions(-) diff --git a/pkg/apis/networking/v1/register.go b/pkg/apis/networking/v1/register.go index c8d3c83bcc9..be378925ff2 100644 --- a/pkg/apis/networking/v1/register.go +++ b/pkg/apis/networking/v1/register.go @@ -34,10 +34,20 @@ func Resource(resource string) schema.GroupResource { } var ( - SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addDefaultingFuncs, addConversionFuncs) - AddToScheme = SchemeBuilder.AddToScheme + // TODO: move SchemeBuilder with zz_generated.deepcopy.go to k8s.io/api. + // localSchemeBuilder and AddToScheme will stay in k8s.io/kubernetes. + SchemeBuilder runtime.SchemeBuilder + localSchemeBuilder = &SchemeBuilder + AddToScheme = localSchemeBuilder.AddToScheme ) +func init() { + // We only register manually written functions here. The registration of the + // generated functions takes place in the generated files. The separation + // makes the code compile even when the generated files are missing. + localSchemeBuilder.Register(addKnownTypes, addDefaultingFuncs, addConversionFuncs) +} + // Adds the list of known types to api.Scheme. func addKnownTypes(scheme *runtime.Scheme) error { scheme.AddKnownTypes(SchemeGroupVersion, diff --git a/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/register.go b/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/register.go index 7eda9b53214..8d4c341f7c6 100644 --- a/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/register.go +++ b/staging/src/k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1beta1/register.go @@ -38,8 +38,9 @@ func Resource(resource string) schema.GroupResource { } var ( - SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addDefaultingFuncs) - AddToScheme = SchemeBuilder.AddToScheme + SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes, addDefaultingFuncs) + localSchemeBuilder = &SchemeBuilder + AddToScheme = localSchemeBuilder.AddToScheme ) // Adds the list of known types to api.Scheme. diff --git a/staging/src/k8s.io/metrics/pkg/apis/custom_metrics/v1alpha1/register.go b/staging/src/k8s.io/metrics/pkg/apis/custom_metrics/v1alpha1/register.go index 84669acb715..e14b0751448 100644 --- a/staging/src/k8s.io/metrics/pkg/apis/custom_metrics/v1alpha1/register.go +++ b/staging/src/k8s.io/metrics/pkg/apis/custom_metrics/v1alpha1/register.go @@ -34,8 +34,9 @@ func Resource(resource string) schema.GroupResource { } var ( - SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) - AddToScheme = SchemeBuilder.AddToScheme + SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) + localSchemeBuilder = &SchemeBuilder + AddToScheme = localSchemeBuilder.AddToScheme ) func addKnownTypes(scheme *runtime.Scheme) error { diff --git a/staging/src/k8s.io/metrics/pkg/apis/metrics/v1alpha1/register.go b/staging/src/k8s.io/metrics/pkg/apis/metrics/v1alpha1/register.go index b21b15d3c55..686d273dc47 100644 --- a/staging/src/k8s.io/metrics/pkg/apis/metrics/v1alpha1/register.go +++ b/staging/src/k8s.io/metrics/pkg/apis/metrics/v1alpha1/register.go @@ -34,8 +34,9 @@ func Resource(resource string) schema.GroupResource { } var ( - SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) - AddToScheme = SchemeBuilder.AddToScheme + SchemeBuilder = runtime.NewSchemeBuilder(addKnownTypes) + localSchemeBuilder = &SchemeBuilder + AddToScheme = SchemeBuilder.AddToScheme ) func addKnownTypes(scheme *runtime.Scheme) error {