Blame 0001-Update-call-to-deprecated-K8s-function.patch

4795165
From b80376ff8b71c456c85b0daac2f5e339a0426da5 Mon Sep 17 00:00:00 2001
4795165
From: Olivier Lemasle <o.lemasle@gmail.com>
4795165
Date: Sun, 8 Nov 2020 16:04:33 +0100
4795165
Subject: [PATCH] Update call to deprecated K8s function
4795165
4795165
AddConversionFuncs in k8s.io/apimachinery/pkg/runtime.Scheme
4795165
is deprecated and removed in k8s 1.18 (cf https://github.com/kubernetes/kubernetes/pull/85891)
4795165
4795165
This change replaces the deprecated registration code to this
4795165
(more verbose) registration code, which will continue to be
4795165
supported in K8s 1.18+.
4795165
4795165
Signed-off-by: Olivier Lemasle <o.lemasle@gmail.com>
4795165
---
4795165
 internal/conversions/v1alpha3.go      | 45 ++++++++++++++++++++++-----
4795165
 internal/conversions/v1alpha3_test.go | 33 ++++++++++++++++++++
4795165
 internal/conversions/v1beta1.go       | 44 +++++++++++++++++++++-----
4795165
 internal/conversions/v1beta2.go       | 45 ++++++++++++++++++++++-----
4795165
 4 files changed, 143 insertions(+), 24 deletions(-)
4795165
4795165
diff --git a/internal/conversions/v1alpha3.go b/internal/conversions/v1alpha3.go
4795165
index a5fe6749..0f0de2bd 100644
4795165
--- a/internal/conversions/v1alpha3.go
4795165
+++ b/internal/conversions/v1alpha3.go
4795165
@@ -16,14 +16,43 @@ import (
4795165
 // RegisterV1alpha3Conversions adds conversion functions to the given scheme.
4795165
 // Public to allow building arbitrary schemes.
4795165
 func RegisterV1alpha3Conversions(scheme *runtime.Scheme) error {
4795165
-	return scheme.AddConversionFuncs(
4795165
-		ownerToInternalV1alpha3,
4795165
-		ownerFromInternalV1alpha3,
4795165
-		stackToInternalV1alpha3,
4795165
-		stackFromInternalV1alpha3,
4795165
-		stackListToInternalV1alpha3,
4795165
-		stackListFromInternalV1alpha3,
4795165
-	)
4795165
+	if err := scheme.AddConversionFunc((*v1alpha3.Owner)(nil), (*internalversion.Owner)(nil), func(a, b interface{}, scope conversion.Scope) error {
4795165
+		return ownerToInternalV1alpha3(a.(*v1alpha3.Owner), b.(*internalversion.Owner), scope)
4795165
+	}); err != nil {
4795165
+		return err
4795165
+	}
4795165
+
4795165
+	if err := scheme.AddConversionFunc((*internalversion.Owner)(nil), (*v1alpha3.Owner)(nil), func(a, b interface{}, scope conversion.Scope) error {
4795165
+		return ownerFromInternalV1alpha3(a.(*internalversion.Owner), b.(*v1alpha3.Owner), scope)
4795165
+	}); err != nil {
4795165
+		return err
4795165
+	}
4795165
+
4795165
+	if err := scheme.AddConversionFunc((*v1alpha3.Stack)(nil), (*internalversion.Stack)(nil), func(a, b interface{}, scope conversion.Scope) error {
4795165
+		return stackToInternalV1alpha3(a.(*v1alpha3.Stack), b.(*internalversion.Stack), scope)
4795165
+	}); err != nil {
4795165
+		return err
4795165
+	}
4795165
+
4795165
+	if err := scheme.AddConversionFunc((*internalversion.Stack)(nil), (*v1alpha3.Stack)(nil), func(a, b interface{}, scope conversion.Scope) error {
4795165
+		return stackFromInternalV1alpha3(a.(*internalversion.Stack), b.(*v1alpha3.Stack), scope)
4795165
+	}); err != nil {
4795165
+		return err
4795165
+	}
4795165
+
4795165
+	if err := scheme.AddConversionFunc((*v1alpha3.StackList)(nil), (*internalversion.StackList)(nil), func(a, b interface{}, scope conversion.Scope) error {
4795165
+		return stackListToInternalV1alpha3(a.(*v1alpha3.StackList), b.(*internalversion.StackList), scope)
4795165
+	}); err != nil {
4795165
+		return err
4795165
+	}
4795165
+
4795165
+	if err := scheme.AddConversionFunc((*internalversion.StackList)(nil), (*v1alpha3.StackList)(nil), func(a, b interface{}, scope conversion.Scope) error {
4795165
+		return stackListFromInternalV1alpha3(a.(*internalversion.StackList), b.(*v1alpha3.StackList), scope)
4795165
+	}); err != nil {
4795165
+		return err
4795165
+	}
4795165
+
4795165
+	return nil
4795165
 }
4795165
 
4795165
 func ownerToInternalV1alpha3(in *v1alpha3.Owner, out *internalversion.Owner, _ conversion.Scope) error {
4795165
diff --git a/internal/conversions/v1alpha3_test.go b/internal/conversions/v1alpha3_test.go
4795165
index 8bf7dc2b..e8d5b189 100644
4795165
--- a/internal/conversions/v1alpha3_test.go
4795165
+++ b/internal/conversions/v1alpha3_test.go
4795165
@@ -1 +1,34 @@
4795165
 package conversions
4795165
+
4795165
+import (
4795165
+	"testing"
4795165
+
4795165
+	"github.com/docker/compose-on-kubernetes/api/compose/impersonation"
4795165
+	"github.com/docker/compose-on-kubernetes/api/compose/v1alpha3"
4795165
+	"github.com/docker/compose-on-kubernetes/internal/internalversion"
4795165
+	"github.com/stretchr/testify/assert"
4795165
+	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
4795165
+	"k8s.io/apimachinery/pkg/runtime"
4795165
+)
4795165
+
4795165
+func TestRegisterV1alpha3Conversions(t *testing.T) {
4795165
+	scheme := runtime.NewScheme()
4795165
+	RegisterV1alpha3Conversions(scheme)
4795165
+
4795165
+	v1alpha3Owner := &v1alpha3.Owner{
4795165
+		ObjectMeta: metav1.ObjectMeta{
4795165
+			Name: "owner",
4795165
+		},
4795165
+		Owner: impersonation.Config{
4795165
+			UserName: "foo",
4795165
+		},
4795165
+	}
4795165
+	internalversionOwner := &internalversion.Owner{}
4795165
+	scheme.Convert(v1alpha3Owner, internalversionOwner, nil)
4795165
+	assert.Equal(t, "owner", internalversionOwner.ObjectMeta.Name)
4795165
+	assert.Equal(t, "foo", internalversionOwner.Owner.UserName)
4795165
+
4795165
+	internalversionOwner.Owner.UserName = "bar"
4795165
+	scheme.Convert(internalversionOwner, v1alpha3Owner, nil)
4795165
+	assert.Equal(t, "bar", v1alpha3Owner.Owner.UserName)
4795165
+}
4795165
diff --git a/internal/conversions/v1beta1.go b/internal/conversions/v1beta1.go
4795165
index 0990555d..e0886143 100644
4795165
--- a/internal/conversions/v1beta1.go
4795165
+++ b/internal/conversions/v1beta1.go
4795165
@@ -10,15 +10,43 @@ import (
4795165
 // RegisterV1beta1Conversions adds conversion functions to the given scheme.
4795165
 // Public to allow building arbitrary schemes.
4795165
 func RegisterV1beta1Conversions(scheme *runtime.Scheme) error {
4795165
+	if err := scheme.AddConversionFunc((*v1beta1.Owner)(nil), (*internalversion.Owner)(nil), func(a, b interface{}, scope conversion.Scope) error {
4795165
+		return ownerToInternalV1beta1(a.(*v1beta1.Owner), b.(*internalversion.Owner), scope)
4795165
+	}); err != nil {
4795165
+		return err
4795165
+	}
4795165
+
4795165
+	if err := scheme.AddConversionFunc((*internalversion.Owner)(nil), (*v1beta1.Owner)(nil), func(a, b interface{}, scope conversion.Scope) error {
4795165
+		return ownerFromInternalV1beta1(a.(*internalversion.Owner), b.(*v1beta1.Owner), scope)
4795165
+	}); err != nil {
4795165
+		return err
4795165
+	}
4795165
+
4795165
+	if err := scheme.AddConversionFunc((*v1beta1.Stack)(nil), (*internalversion.Stack)(nil), func(a, b interface{}, scope conversion.Scope) error {
4795165
+		return stackToInternalV1beta1(a.(*v1beta1.Stack), b.(*internalversion.Stack), scope)
4795165
+	}); err != nil {
4795165
+		return err
4795165
+	}
4795165
+
4795165
+	if err := scheme.AddConversionFunc((*internalversion.Stack)(nil), (*v1beta1.Stack)(nil), func(a, b interface{}, scope conversion.Scope) error {
4795165
+		return stackFromInternalV1beta1(a.(*internalversion.Stack), b.(*v1beta1.Stack), scope)
4795165
+	}); err != nil {
4795165
+		return err
4795165
+	}
4795165
+
4795165
+	if err := scheme.AddConversionFunc((*v1beta1.StackList)(nil), (*internalversion.StackList)(nil), func(a, b interface{}, scope conversion.Scope) error {
4795165
+		return stackListToInternalV1beta1(a.(*v1beta1.StackList), b.(*internalversion.StackList), scope)
4795165
+	}); err != nil {
4795165
+		return err
4795165
+	}
4795165
 
4795165
-	return scheme.AddConversionFuncs(
4795165
-		ownerToInternalV1beta1,
4795165
-		ownerFromInternalV1beta1,
4795165
-		stackToInternalV1beta1,
4795165
-		stackFromInternalV1beta1,
4795165
-		stackListToInternalV1beta1,
4795165
-		stackListFromInternalV1beta1,
4795165
-	)
4795165
+	if err := scheme.AddConversionFunc((*internalversion.StackList)(nil), (*v1beta1.StackList)(nil), func(a, b interface{}, scope conversion.Scope) error {
4795165
+		return stackListFromInternalV1beta1(a.(*internalversion.StackList), b.(*v1beta1.StackList), scope)
4795165
+	}); err != nil {
4795165
+		return err
4795165
+	}
4795165
+
4795165
+	return nil
4795165
 }
4795165
 
4795165
 func ownerToInternalV1beta1(in *v1beta1.Owner, out *internalversion.Owner, _ conversion.Scope) error {
4795165
diff --git a/internal/conversions/v1beta2.go b/internal/conversions/v1beta2.go
4795165
index adcb34ca..e675ee30 100644
4795165
--- a/internal/conversions/v1beta2.go
4795165
+++ b/internal/conversions/v1beta2.go
4795165
@@ -11,14 +11,43 @@ import (
4795165
 // RegisterV1beta2Conversions adds conversion functions to the given scheme.
4795165
 // Public to allow building arbitrary schemes.
4795165
 func RegisterV1beta2Conversions(scheme *runtime.Scheme) error {
4795165
-	return scheme.AddConversionFuncs(
4795165
-		ownerToInternalV1beta2,
4795165
-		ownerFromInternalV1beta2,
4795165
-		stackToInternalV1beta2,
4795165
-		stackFromInternalV1beta2,
4795165
-		stackListToInternalV1beta2,
4795165
-		stackListFromInternalV1beta2,
4795165
-	)
4795165
+	if err := scheme.AddConversionFunc((*v1beta2.Owner)(nil), (*internalversion.Owner)(nil), func(a, b interface{}, scope conversion.Scope) error {
4795165
+		return ownerToInternalV1beta2(a.(*v1beta2.Owner), b.(*internalversion.Owner), scope)
4795165
+	}); err != nil {
4795165
+		return err
4795165
+	}
4795165
+
4795165
+	if err := scheme.AddConversionFunc((*internalversion.Owner)(nil), (*v1beta2.Owner)(nil), func(a, b interface{}, scope conversion.Scope) error {
4795165
+		return ownerFromInternalV1beta2(a.(*internalversion.Owner), b.(*v1beta2.Owner), scope)
4795165
+	}); err != nil {
4795165
+		return err
4795165
+	}
4795165
+
4795165
+	if err := scheme.AddConversionFunc((*v1beta2.Stack)(nil), (*internalversion.Stack)(nil), func(a, b interface{}, scope conversion.Scope) error {
4795165
+		return stackToInternalV1beta2(a.(*v1beta2.Stack), b.(*internalversion.Stack), scope)
4795165
+	}); err != nil {
4795165
+		return err
4795165
+	}
4795165
+
4795165
+	if err := scheme.AddConversionFunc((*internalversion.Stack)(nil), (*v1beta2.Stack)(nil), func(a, b interface{}, scope conversion.Scope) error {
4795165
+		return stackFromInternalV1beta2(a.(*internalversion.Stack), b.(*v1beta2.Stack), scope)
4795165
+	}); err != nil {
4795165
+		return err
4795165
+	}
4795165
+
4795165
+	if err := scheme.AddConversionFunc((*v1beta2.StackList)(nil), (*internalversion.StackList)(nil), func(a, b interface{}, scope conversion.Scope) error {
4795165
+		return stackListToInternalV1beta2(a.(*v1beta2.StackList), b.(*internalversion.StackList), scope)
4795165
+	}); err != nil {
4795165
+		return err
4795165
+	}
4795165
+
4795165
+	if err := scheme.AddConversionFunc((*internalversion.StackList)(nil), (*v1beta2.StackList)(nil), func(a, b interface{}, scope conversion.Scope) error {
4795165
+		return stackListFromInternalV1beta2(a.(*internalversion.StackList), b.(*v1beta2.StackList), scope)
4795165
+	}); err != nil {
4795165
+		return err
4795165
+	}
4795165
+
4795165
+	return nil
4795165
 }
4795165
 
4795165
 func ownerToInternalV1beta2(in *v1beta2.Owner, out *internalversion.Owner, _ conversion.Scope) error {