diff --git a/pkg/controller/plan/tls_utils.go b/pkg/controller/plan/tls_utils.go index dc54213dc97..63f60dee1e2 100644 --- a/pkg/controller/plan/tls_utils.go +++ b/pkg/controller/plan/tls_utils.go @@ -109,12 +109,12 @@ func CheckTLSSecretRef(ctx context.Context, cli client.Reader, namespace string, if err := cli.Get(ctx, types.NamespacedName{Namespace: namespace, Name: secretRef.Name}, secret); err != nil { return err } - if secret.StringData == nil { + if secret.Data == nil { return errors.New("tls secret's data field shouldn't be nil") } keys := []string{secretRef.CA, secretRef.Cert, secretRef.Key} for _, key := range keys { - if _, ok := secret.StringData[key]; !ok { + if len(secret.Data[key]) == 0 { return errors.Errorf("tls secret's data[%s] field shouldn't be empty", key) } } diff --git a/pkg/controller/plan/tls_utils_test.go b/pkg/controller/plan/tls_utils_test.go index db9cc87b2a9..1ddea11b3a8 100644 --- a/pkg/controller/plan/tls_utils_test.go +++ b/pkg/controller/plan/tls_utils_test.go @@ -85,29 +85,17 @@ var _ = Describe("TLSUtilsTest", func() { err := CheckTLSSecretRef(ctx, k8sMock, namespace, secretRef) Expect(apierrors.IsNotFound(err)).Should(BeTrue()) - By("set stringData to nil") + By("set empty CA in map Data") k8sMock.EXPECT(). Get(gomock.Any(), gomock.Any(), &corev1.Secret{}, gomock.Any()). DoAndReturn(func(_ context.Context, objKey client.ObjectKey, obj *corev1.Secret, _ ...client.GetOption) error { Expect(obj).ShouldNot(BeNil()) obj.Namespace = objKey.Namespace obj.Name = objKey.Name - return nil - }).Times(1) - err = CheckTLSSecretRef(ctx, k8sMock, namespace, secretRef) - Expect(err).ShouldNot(BeNil()) - Expect(err.Error()).Should(ContainSubstring("tls secret's data field shouldn't be nil")) - - By("set no CA key in map stringData") - k8sMock.EXPECT(). - Get(gomock.Any(), gomock.Any(), &corev1.Secret{}, gomock.Any()). - DoAndReturn(func(_ context.Context, objKey client.ObjectKey, obj *corev1.Secret, _ ...client.GetOption) error { - Expect(obj).ShouldNot(BeNil()) - obj.Namespace = objKey.Namespace - obj.Name = objKey.Name - obj.StringData = map[string]string{ - secretRef.Cert: "foo", - secretRef.Key: "bar", + obj.Data = map[string][]byte{ + secretRef.Cert: []byte("foo"), + secretRef.Key: []byte("bar"), + secretRef.CA: []byte(""), } return nil }).Times(1) @@ -122,10 +110,10 @@ var _ = Describe("TLSUtilsTest", func() { Expect(obj).ShouldNot(BeNil()) obj.Namespace = objKey.Namespace obj.Name = objKey.Name - obj.StringData = map[string]string{ - secretRef.Cert: "foo", - secretRef.Key: "bar", - secretRef.CA: "ca", + obj.Data = map[string][]byte{ + secretRef.Cert: []byte("foo"), + secretRef.Key: []byte("bar"), + secretRef.CA: []byte("ca"), } return nil }).Times(1)