From b0458069170c4875b874b8e149d0454f41c6c216 Mon Sep 17 00:00:00 2001 From: Mikhail Mazurskiy Date: Sun, 3 Jun 2018 14:59:58 +1000 Subject: [PATCH] Add missing error handling in schema-related code Kubernetes-commit: bfe313d5f351dfae086a85a97e7103183173e5b5 --- plugin/pkg/client/auth/exec/exec.go | 7 ++++--- scale/util.go | 15 ++++++++------- tools/clientcmd/api/latest/latest.go | 11 +++-------- 3 files changed, 15 insertions(+), 18 deletions(-) diff --git a/plugin/pkg/client/auth/exec/exec.go b/plugin/pkg/client/auth/exec/exec.go index 2d05ac62..c7a86f18 100644 --- a/plugin/pkg/client/auth/exec/exec.go +++ b/plugin/pkg/client/auth/exec/exec.go @@ -36,6 +36,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/runtime/serializer" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/client-go/pkg/apis/clientauthentication" "k8s.io/client-go/pkg/apis/clientauthentication/v1alpha1" "k8s.io/client-go/pkg/apis/clientauthentication/v1beta1" @@ -51,9 +52,9 @@ var codecs = serializer.NewCodecFactory(scheme) func init() { v1.AddToGroupVersion(scheme, schema.GroupVersion{Version: "v1"}) - v1alpha1.AddToScheme(scheme) - v1beta1.AddToScheme(scheme) - clientauthentication.AddToScheme(scheme) + utilruntime.Must(v1alpha1.AddToScheme(scheme)) + utilruntime.Must(v1beta1.AddToScheme(scheme)) + utilruntime.Must(clientauthentication.AddToScheme(scheme)) } var ( diff --git a/scale/util.go b/scale/util.go index 1c04b455..2f43a7a7 100644 --- a/scale/util.go +++ b/scale/util.go @@ -25,6 +25,7 @@ import ( "k8s.io/apimachinery/pkg/runtime" "k8s.io/apimachinery/pkg/runtime/schema" serializer "k8s.io/apimachinery/pkg/runtime/serializer" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/client-go/discovery" scalescheme "k8s.io/client-go/scale/scheme" scaleappsint "k8s.io/client-go/scale/scheme/appsint" @@ -143,13 +144,13 @@ type ScaleConverter struct { // Scales in autoscaling/v1 and extensions/v1beta1. func NewScaleConverter() *ScaleConverter { scheme := runtime.NewScheme() - scaleautoscaling.AddToScheme(scheme) - scalescheme.AddToScheme(scheme) - scaleext.AddToScheme(scheme) - scaleextint.AddToScheme(scheme) - scaleappsint.AddToScheme(scheme) - scaleappsv1beta1.AddToScheme(scheme) - scaleappsv1beta2.AddToScheme(scheme) + utilruntime.Must(scaleautoscaling.AddToScheme(scheme)) + utilruntime.Must(scalescheme.AddToScheme(scheme)) + utilruntime.Must(scaleext.AddToScheme(scheme)) + utilruntime.Must(scaleextint.AddToScheme(scheme)) + utilruntime.Must(scaleappsint.AddToScheme(scheme)) + utilruntime.Must(scaleappsv1beta1.AddToScheme(scheme)) + utilruntime.Must(scaleappsv1beta2.AddToScheme(scheme)) return &ScaleConverter{ scheme: scheme, diff --git a/tools/clientcmd/api/latest/latest.go b/tools/clientcmd/api/latest/latest.go index 5fbbe3f1..35bb5dde 100644 --- a/tools/clientcmd/api/latest/latest.go +++ b/tools/clientcmd/api/latest/latest.go @@ -21,6 +21,7 @@ import ( "k8s.io/apimachinery/pkg/runtime/schema" "k8s.io/apimachinery/pkg/runtime/serializer/json" "k8s.io/apimachinery/pkg/runtime/serializer/versioning" + utilruntime "k8s.io/apimachinery/pkg/util/runtime" "k8s.io/client-go/tools/clientcmd/api" "k8s.io/client-go/tools/clientcmd/api/v1" ) @@ -47,14 +48,8 @@ var ( func init() { Scheme = runtime.NewScheme() - if err := api.AddToScheme(Scheme); err != nil { - // Programmer error, detect immediately - panic(err) - } - if err := v1.AddToScheme(Scheme); err != nil { - // Programmer error, detect immediately - panic(err) - } + utilruntime.Must(api.AddToScheme(Scheme)) + utilruntime.Must(v1.AddToScheme(Scheme)) yamlSerializer := json.NewYAMLSerializer(json.DefaultMetaFactory, Scheme, Scheme) Codec = versioning.NewDefaultingCodecForScheme( Scheme,