Skip to content
This repository was archived by the owner on Oct 10, 2023. It is now read-only.

Commit 3be91aa

Browse files
committed
Address comments
Signed-off-by: Wenqi Qiu <[email protected]>
1 parent 72afc1e commit 3be91aa

File tree

17 files changed

+94
-42
lines changed

17 files changed

+94
-42
lines changed

.gitignore

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -52,5 +52,3 @@ coverage.txt
5252
/build
5353
/packages/package-values-sha256.yaml
5454
/packages/**/.imgpkg
55-
56-
/vendor

addons/controllers/antrea/antreaconfig_util.go

Lines changed: 22 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -303,32 +303,39 @@ func mapAntreaConfigSpec(cluster *clusterv1beta1.Cluster, config *cniv1alpha2.An
303303
configSpec.AntreaNsx.BootstrapFrom.Inline.NsxManagers = config.Spec.AntreaNsx.BootstrapFrom.Inline.NsxManagers
304304
configSpec.AntreaNsx.BootstrapFrom.Inline.ClusterName = config.Spec.AntreaNsx.BootstrapFrom.Inline.ClusterName
305305
// NSX cert
306-
secret := &corev1.Secret{}
307-
err = client.Get(context.TODO(), types.NamespacedName{
308-
Namespace: config.Namespace,
309-
Name: config.Name,
310-
}, secret)
306+
secret, err := getNSXCert(client, config.Name, config.Namespace)
311307
if err != nil {
312308
return configSpec, err
313309
}
314-
if secret.Data == nil {
315-
return configSpec, fmt.Errorf("missing secret data")
316-
}
317-
if _, ok := secret.Data["tls.crt"]; !ok {
318-
return configSpec, fmt.Errorf("missing tls.crt")
319-
}
320310
configSpec.AntreaNsx.BootstrapFrom.Inline.NsxCertRef.TLSCert = string(secret.Data["tls.crt"])
321-
if _, ok := secret.Data["tls.key"]; !ok {
322-
return configSpec, fmt.Errorf("missing tls.key")
323-
}
324311
configSpec.AntreaNsx.BootstrapFrom.Inline.NsxCertRef.TLSKey = string(secret.Data["tls.key"])
325312
} else if config.Spec.AntreaNsx.BootstrapFrom.ProviderRef != nil {
326313
configSpec.AntreaNsx.BootstrapFrom.ProviderRef.ApiVersion = config.Spec.AntreaNsx.BootstrapFrom.ProviderRef.ApiGroup
327314
configSpec.AntreaNsx.BootstrapFrom.ProviderRef.Kind = config.Spec.AntreaNsx.BootstrapFrom.ProviderRef.Kind
328315
configSpec.AntreaNsx.BootstrapFrom.ProviderRef.Name = config.Spec.AntreaNsx.BootstrapFrom.ProviderRef.Name
329316
}
330-
configSpec.AntreaNsx.AntreaNsxConfig.InfraType = config.Spec.AntreaNsx.AntreaNsxConfig.InfraType
317+
331318
}
332319

333320
return configSpec, nil
334321
}
322+
323+
func getNSXCert(client client.Client, secretName, secretNamespace string) (secret *corev1.Secret, err error) {
324+
secret = &corev1.Secret{}
325+
if err := client.Get(context.TODO(), types.NamespacedName{
326+
Namespace: secretNamespace,
327+
Name: secretName,
328+
}, secret); err != nil {
329+
return nil, err
330+
}
331+
if secret.Data == nil {
332+
return nil, fmt.Errorf("missing secret data")
333+
}
334+
if _, ok := secret.Data["tls.crt"]; !ok {
335+
return nil, fmt.Errorf("missing tls.crt")
336+
}
337+
if _, ok := secret.Data["tls.key"]; !ok {
338+
return nil, fmt.Errorf("missing tls.key")
339+
}
340+
return secret, nil
341+
}
Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
package controllers
2+
3+
import (
4+
"context"
5+
"testing"
6+
7+
"github.com/stretchr/testify/assert"
8+
"github.com/stretchr/testify/require"
9+
corev1 "k8s.io/api/core/v1"
10+
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
11+
"k8s.io/client-go/kubernetes/scheme"
12+
"sigs.k8s.io/controller-runtime/pkg/client/fake"
13+
)
14+
15+
func TestGetNSXCert(t *testing.T) {
16+
fakeClient := fake.NewFakeClientWithScheme(scheme.Scheme)
17+
18+
secretName := "test-secret"
19+
secretNamespace := "test-namespace"
20+
testSecret := &corev1.Secret{
21+
ObjectMeta: metav1.ObjectMeta{
22+
Name: secretName,
23+
Namespace: secretNamespace,
24+
},
25+
Data: map[string][]byte{
26+
"tls.crt": []byte("fake-certificate-data"),
27+
"tls.key": []byte("fake-key-data"),
28+
},
29+
}
30+
if err := fakeClient.Create(context.Background(), testSecret); err != nil {
31+
t.Fatalf("failed to create test secret: %v", err)
32+
}
33+
34+
returnedSecret, err := getNSXCert(fakeClient, secretName, secretNamespace)
35+
require.NoError(t, err, "getNSXCert returned an unexpected error")
36+
require.NotNil(t, returnedSecret, "getNSXCert returned a nil secret")
37+
38+
assert.Equal(t, secretName, returnedSecret.Name, "returned secret has unexpected name")
39+
assert.Equal(t, secretNamespace, returnedSecret.Namespace, "returned secret has unexpected namespace")
40+
assert.Equal(t, 2, len(returnedSecret.Data), "returned secret has unexpected number of data fields")
41+
42+
if _, ok := returnedSecret.Data["tls.crt"]; !ok {
43+
t.Error("returned secret missing tls.crt field")
44+
}
45+
if _, ok := returnedSecret.Data["tls.key"]; !ok {
46+
t.Error("returned secret missing tls.key field")
47+
}
48+
}

addons/go.mod

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -15,6 +15,7 @@ require (
1515
github.com/onsi/gomega v1.20.2
1616
github.com/oracle/cluster-api-provider-oci v0.6.0
1717
github.com/pkg/errors v0.9.1
18+
github.com/stretchr/testify v1.8.0
1819
github.com/vmware-tanzu/carvel-kapp-controller v0.35.0
1920
github.com/vmware-tanzu/carvel-secretgen-controller v0.5.0
2021
github.com/vmware-tanzu/carvel-vendir v0.26.0
@@ -91,6 +92,7 @@ require (
9192
github.com/nxadm/tail v1.4.8 // indirect
9293
github.com/opencontainers/go-digest v1.0.0 // indirect
9394
github.com/oracle/oci-go-sdk/v65 v65.18.0 // indirect
95+
github.com/pmezard/go-difflib v1.0.0 // indirect
9496
github.com/prometheus/client_golang v1.13.0 // indirect
9597
github.com/prometheus/client_model v0.2.0 // indirect
9698
github.com/prometheus/common v0.37.0 // indirect

addons/go.sum

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -856,6 +856,7 @@ github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+
856856
github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
857857
github.com/stretchr/objx v0.2.0/go.mod h1:qt09Ya8vawLte6SNmTgCsAVtYtaKzEcn8ATUoHMkEqE=
858858
github.com/stretchr/objx v0.4.0 h1:M2gUjqZET1qApGOWNSnZ49BAIMX4F/1plDv3+l31EJ4=
859+
github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
859860
github.com/stretchr/testify v0.0.0-20151208002404-e3a8ff8ce365/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
860861
github.com/stretchr/testify v1.2.2/go.mod h1:a8OnRcib4nhh0OaRAV+Yts87kKdq0PP7pXfy6kDkUVs=
861862
github.com/stretchr/testify v1.3.0/go.mod h1:M5WIy9Dh21IEIfnGCwXGc5bZfKNJtfHm1UVUgZn+9EI=
@@ -865,6 +866,7 @@ github.com/stretchr/testify v1.6.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/
865866
github.com/stretchr/testify v1.7.0/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
866867
github.com/stretchr/testify v1.7.1/go.mod h1:6Fq8oRcR53rry900zMqJjRRixrwX3KX962/h/Wwjteg=
867868
github.com/stretchr/testify v1.8.0 h1:pSgiaMZlXftHpm5L7V1+rVB+AZJydKsMxsQBIJw4PKk=
869+
github.com/stretchr/testify v1.8.0/go.mod h1:yNjHg4UonilssWZ8iaSj1OCr/vHnekPRkoO+kdMU+MU=
868870
github.com/subosito/gotenv v1.2.0/go.mod h1:N0PQaV/YGNqwC0u51sEeR/aUtSLEXKX9iv69rRypqCw=
869871
github.com/subosito/gotenv v1.3.0/go.mod h1:YzJjq/33h7nrwdY+iHMhEOEEbW0ovIz0tB6t6PwAXzs=
870872
github.com/tidwall/pretty v1.0.0/go.mod h1:XNkn88O1ChpSDQmQeStsy+sBenx6DDtFZJxhVysOjyk=
Lines changed: 0 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -47,26 +47,6 @@ data:
4747
ccp-adapter.conf: #@ yaml.encode(antrea_interworking_ccp_adapter_conf())
4848

4949

50-
#@overlay/match by=overlay.subset({"kind":"Deployment","metadata":{"name": "interworking"}})
51-
#@ if/end values.antrea_nsx.enable:
52-
---
53-
kind: Deployment
54-
metadata:
55-
#@overlay/match missing_ok=True
56-
annotations:
57-
kapp.k14s.io/disable-default-label-scoping-rules: ""
58-
59-
60-
#@overlay/match by=overlay.subset({"kind":"Job","metadata":{"name": "register"}})
61-
#@ if/end values.antrea_nsx.enable:
62-
---
63-
kind: Job
64-
metadata:
65-
#@overlay/match missing_ok=True
66-
annotations:
67-
kapp.k14s.io/disable-default-label-scoping-rules: ""
68-
69-
7050
#! Antrea-interworking-config
7151
#@overlay/match by=overlay.subset({"metadata":{"namespace": "vmware-system-antrea"}}), expects=10
7252
#@ if/end values.antrea_nsx.enable == False:

0 commit comments

Comments
 (0)