Skip to content

Commit fc12869

Browse files
authored
fix(eventgateway/dataplane): use NamespacedRef for KonnectEventDataPlaneCertificate.GatewayRef (#4181)
Signed-off-by: alacuku <[email protected]>
1 parent ea08e7a commit fc12869

3 files changed

Lines changed: 15 additions & 43 deletions

File tree

controller/eventgateway/dataplane/controller_test.go

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -173,14 +173,13 @@ func drainEvents(recorder *events.FakeRecorder) []string {
173173
// newProgrammedKonnectCert builds a KonnectEventDataPlaneCertificate with Programmed=True,
174174
// modelling the state after the Konnect controller has registered it.
175175
func newProgrammedKonnectCert() *konnectv1alpha1.KonnectEventDataPlaneCertificate {
176-
gatewayID := "keg-id-123"
177176
secretRefType := konnectv1alpha1.SensitiveDataSourceTypeSecretRef
178177
return &konnectv1alpha1.KonnectEventDataPlaneCertificate{
179178
ObjectMeta: metav1.ObjectMeta{Namespace: reconcileTestNS, Name: reconcileTestDPName},
180179
Spec: konnectv1alpha1.KonnectEventDataPlaneCertificateSpec{
181180
GatewayRef: commonv1alpha1.ObjectRef{
182-
Type: commonv1alpha1.ObjectRefTypeKonnectID,
183-
KonnectID: &gatewayID,
181+
Type: commonv1alpha1.ObjectRefTypeNamespacedRef,
182+
NamespacedRef: &commonv1alpha1.NamespacedRef{Name: reconcileTestKEGName},
184183
},
185184
Type: &secretRefType,
186185
SecretRef: &commonv1alpha1.NamespacedRef{Name: reconcileTestDPName},

controller/eventgateway/dataplane/owned_konnect_cert.go

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ import (
3737

3838
// ensureKonnectCertificate ensures a KonnectEventDataPlaneCertificate resource
3939
// exists for the given DataPlane, referencing the provisioned mTLS Secret and the
40-
// resolved KonnectEventGateway's Konnect ID.
40+
// resolved KonnectEventGateway.
4141
func (r *Reconciler) ensureKonnectCertificate(
4242
ctx context.Context,
4343
logger logr.Logger,
@@ -57,8 +57,10 @@ func (r *Reconciler) ensureKonnectCertificate(
5757
},
5858
Spec: konnectv1alpha1.KonnectEventDataPlaneCertificateSpec{
5959
GatewayRef: commonv1alpha1.ObjectRef{
60-
Type: commonv1alpha1.ObjectRefTypeKonnectID,
61-
KonnectID: &keg.Status.ID,
60+
Type: commonv1alpha1.ObjectRefTypeNamespacedRef,
61+
NamespacedRef: &commonv1alpha1.NamespacedRef{
62+
Name: keg.Name,
63+
},
6264
},
6365
Type: &secretRefType,
6466
SecretRef: &commonv1alpha1.NamespacedRef{

controller/eventgateway/dataplane/owned_konnect_cert_test.go

Lines changed: 8 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -98,8 +98,6 @@ func newTestCertSecret() *corev1.Secret {
9898
}
9999

100100
func TestEnsureKonnectCertificate(t *testing.T) {
101-
oldID := "old-gateway-id"
102-
programmedGatewayID := testKonnectGatewayID
103101
secretRefType := konnectv1alpha1.SensitiveDataSourceTypeSecretRef
104102

105103
tests := []struct {
@@ -121,9 +119,10 @@ func TestEnsureKonnectCertificate(t *testing.T) {
121119
wantCondReason: string(eventgatewayv1alpha1.KonnectCertificateNotProgrammedReason),
122120
verifyCert: func(t *testing.T, cert konnectv1alpha1.KonnectEventDataPlaneCertificate) {
123121
t.Helper()
124-
assert.Equal(t, commonv1alpha1.ObjectRefTypeKonnectID, cert.Spec.GatewayRef.Type)
125-
require.NotNil(t, cert.Spec.GatewayRef.KonnectID)
126-
assert.Equal(t, testKonnectGatewayID, *cert.Spec.GatewayRef.KonnectID)
122+
assert.Equal(t, commonv1alpha1.ObjectRefTypeNamespacedRef, cert.Spec.GatewayRef.Type)
123+
require.NotNil(t, cert.Spec.GatewayRef.NamespacedRef)
124+
assert.Equal(t, "test-keg", cert.Spec.GatewayRef.NamespacedRef.Name)
125+
assert.Nil(t, cert.Spec.GatewayRef.KonnectID)
127126
require.NotNil(t, cert.Spec.Type)
128127
assert.Equal(t, konnectv1alpha1.SensitiveDataSourceTypeSecretRef, *cert.Spec.Type)
129128
require.NotNil(t, cert.Spec.SecretRef)
@@ -141,34 +140,6 @@ func TestEnsureKonnectCertificate(t *testing.T) {
141140
wantCondStatus: metav1.ConditionFalse,
142141
wantCondReason: string(eventgatewayv1alpha1.KonnectCertificateNotProgrammedReason),
143142
},
144-
{
145-
name: "updates cert when gateway ID changes",
146-
extraObjs: []client.Object{
147-
&konnectv1alpha1.KonnectEventDataPlaneCertificate{
148-
TypeMeta: metav1.TypeMeta{
149-
APIVersion: konnectv1alpha1.GroupVersion.String(),
150-
Kind: "KonnectEventDataPlaneCertificate",
151-
},
152-
ObjectMeta: metav1.ObjectMeta{Name: "test-dp", Namespace: "default"},
153-
Spec: konnectv1alpha1.KonnectEventDataPlaneCertificateSpec{
154-
GatewayRef: commonv1alpha1.ObjectRef{
155-
Type: commonv1alpha1.ObjectRefTypeKonnectID,
156-
KonnectID: &oldID,
157-
},
158-
Type: &secretRefType,
159-
SecretRef: &commonv1alpha1.NamespacedRef{Name: testCertSecretName},
160-
},
161-
},
162-
},
163-
wantProgrammed: false,
164-
wantCondStatus: metav1.ConditionFalse,
165-
wantCondReason: string(eventgatewayv1alpha1.KonnectCertificateNotProgrammedReason),
166-
verifyCert: func(t *testing.T, cert konnectv1alpha1.KonnectEventDataPlaneCertificate) {
167-
t.Helper()
168-
require.NotNil(t, cert.Spec.GatewayRef.KonnectID)
169-
assert.Equal(t, testKonnectGatewayID, *cert.Spec.GatewayRef.KonnectID)
170-
},
171-
},
172143
{
173144
name: "cert already programmed by Konnect sets KonnectCertificateRegistered=True", extraObjs: []client.Object{
174145
&konnectv1alpha1.KonnectEventDataPlaneCertificate{
@@ -179,8 +150,8 @@ func TestEnsureKonnectCertificate(t *testing.T) {
179150
ObjectMeta: metav1.ObjectMeta{Name: "test-dp", Namespace: "default"},
180151
Spec: konnectv1alpha1.KonnectEventDataPlaneCertificateSpec{
181152
GatewayRef: commonv1alpha1.ObjectRef{
182-
Type: commonv1alpha1.ObjectRefTypeKonnectID,
183-
KonnectID: &programmedGatewayID,
153+
Type: commonv1alpha1.ObjectRefTypeNamespacedRef,
154+
NamespacedRef: &commonv1alpha1.NamespacedRef{Name: "test-keg"},
184155
},
185156
Type: &secretRefType,
186157
SecretRef: &commonv1alpha1.NamespacedRef{Name: testCertSecretName},
@@ -224,8 +195,8 @@ func TestEnsureKonnectCertificate(t *testing.T) {
224195
ObjectMeta: metav1.ObjectMeta{Name: "test-dp", Namespace: "default"},
225196
Spec: konnectv1alpha1.KonnectEventDataPlaneCertificateSpec{
226197
GatewayRef: commonv1alpha1.ObjectRef{
227-
Type: commonv1alpha1.ObjectRefTypeKonnectID,
228-
KonnectID: &programmedGatewayID,
198+
Type: commonv1alpha1.ObjectRefTypeNamespacedRef,
199+
NamespacedRef: &commonv1alpha1.NamespacedRef{Name: "test-keg"},
229200
},
230201
Type: &secretRefType,
231202
SecretRef: &commonv1alpha1.NamespacedRef{Name: testCertSecretName},

0 commit comments

Comments
 (0)