From e2894a18ee1d28341aedd5fc786aff4cc7f2c092 Mon Sep 17 00:00:00 2001
From: Taylor Thomas <taylor.thomas@microsoft.com>
Date: Wed, 6 Nov 2019 15:19:03 -0700
Subject: [PATCH] fix(kube): Fixes missing API versions

In several of the job checks and other conversions we were using legacyscheme.
I don't know why it was working before, but I am guessing something changed
between k8s 1.15 and 1.16. To fix I changed the references to use the default
scheme in client-go

Signed-off-by: Taylor Thomas <taylor.thomas@microsoft.com>
---
 pkg/kube/client.go | 7 +++----
 1 file changed, 3 insertions(+), 4 deletions(-)

diff --git a/pkg/kube/client.go b/pkg/kube/client.go
index be2a9e789..ce49fec74 100644
--- a/pkg/kube/client.go
+++ b/pkg/kube/client.go
@@ -57,7 +57,6 @@ import (
 	watchtools "k8s.io/client-go/tools/watch"
 	cmdutil "k8s.io/kubectl/pkg/cmd/util"
 	"k8s.io/kubectl/pkg/validation"
-	"k8s.io/kubernetes/pkg/api/legacyscheme"
 	"k8s.io/kubernetes/pkg/apis/core"
 	"k8s.io/kubernetes/pkg/kubectl/cmd/get"
 )
@@ -269,7 +268,7 @@ func (c *Client) Get(namespace string, reader io.Reader) (string, error) {
 		for i := range podItems {
 			pod := &core.Pod{}
 
-			legacyscheme.Scheme.Convert(&podItems[i], pod, nil)
+			scheme.Scheme.Convert(&podItems[i], pod, nil)
 			if objs[key+"(related)"] == nil {
 				objs[key+"(related)"] = make(map[string]runtime.Object)
 			}
@@ -882,7 +881,7 @@ func (c *Client) watchUntilReady(timeout time.Duration, info *resource.Info) err
 // This operates on an event returned from a watcher.
 func (c *Client) waitForJob(e watch.Event, name string) (bool, error) {
 	job := &batch.Job{}
-	err := legacyscheme.Scheme.Convert(e.Object, job, nil)
+	err := scheme.Scheme.Convert(e.Object, job, nil)
 	if err != nil {
 		return true, err
 	}
@@ -1043,5 +1042,5 @@ func asVersioned(info *resource.Info) (runtime.Object, error) {
 
 func asInternal(info *resource.Info) (runtime.Object, error) {
 	groupVersioner := info.Mapping.GroupVersionKind.GroupKind().WithVersion(runtime.APIVersionInternal).GroupVersion()
-	return legacyscheme.Scheme.ConvertToVersion(info.Object, groupVersioner)
+	return scheme.Scheme.ConvertToVersion(info.Object, groupVersioner)
 }
-- 
GitLab