Skip to content

Commit d48cdf0

Browse files
committed
fix linter issues
1 parent d3e5099 commit d48cdf0

8 files changed

+86
-32
lines changed

internal/controller/genericprovider_controller.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -240,16 +240,20 @@ func addConfigSecretToHash(ctx context.Context, k8sClient client.Client, hash ha
240240
if secret.Namespace == "" {
241241
secret.Namespace = provider.GetNamespace()
242242
}
243+
243244
err := k8sClient.Get(ctx, client.ObjectKeyFromObject(secret), secret)
244245
if err != nil {
245246
return err
246247
}
248+
247249
err = addObjectToHash(hash, secret.Data)
248250
if err != nil {
249251
return err
250252
}
253+
251254
return nil
252255
}
256+
253257
return nil
254258
}
255259

@@ -262,6 +266,7 @@ func addObjectToHash(hash hash.Hash, object interface{}) error {
262266
if _, err = hash.Write(jsonData); err != nil {
263267
return fmt.Errorf("cannot calculate object hash: %w", err)
264268
}
269+
265270
return nil
266271
}
267272

internal/controller/genericprovider_controller_test.go

Lines changed: 18 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ import (
2424
. "github.com/onsi/gomega"
2525
appsv1 "k8s.io/api/apps/v1"
2626
corev1 "k8s.io/api/core/v1"
27-
v1 "k8s.io/api/core/v1"
2827
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2928
"k8s.io/apimachinery/pkg/runtime"
3029
utilruntime "k8s.io/apimachinery/pkg/util/runtime"
@@ -93,10 +92,10 @@ func insertDummyConfig(provider genericprovider.GenericProvider) {
9392
provider.SetSpec(spec)
9493
}
9594

96-
func dummyConfigMap(ns, name string) *corev1.ConfigMap {
95+
func dummyConfigMap(ns string) *corev1.ConfigMap {
9796
return &corev1.ConfigMap{
9897
ObjectMeta: metav1.ObjectMeta{
99-
Name: name,
98+
Name: testCurrentVersion,
10099
Namespace: ns,
101100
Labels: map[string]string{
102101
"test": "dummy-config",
@@ -109,13 +108,15 @@ func dummyConfigMap(ns, name string) *corev1.ConfigMap {
109108
}
110109
}
111110

112-
func createDummyProviderWithConfigSecret(objs []client.Object, provider genericprovider.GenericProvider, configSecret *v1.Secret) ([]client.Object, error) {
113-
cm := dummyConfigMap(provider.GetNamespace(), testCurrentVersion)
111+
func createDummyProviderWithConfigSecret(objs []client.Object, provider genericprovider.GenericProvider, configSecret *corev1.Secret) ([]client.Object, error) {
112+
cm := dummyConfigMap(provider.GetNamespace())
114113

115114
if err := env.CreateAndWait(ctx, cm); err != nil {
116115
return objs, err
117116
}
117+
118118
objs = append(objs, cm)
119+
119120
provider.SetSpec(operatorv1.ProviderSpec{
120121
Version: testCurrentVersion,
121122
ConfigSecret: &operatorv1.SecretReference{
@@ -124,12 +125,16 @@ func createDummyProviderWithConfigSecret(objs []client.Object, provider genericp
124125
},
125126
ManifestPatches: []string{},
126127
})
128+
127129
insertDummyConfig(provider)
130+
128131
err := env.CreateAndWait(ctx, provider)
129132
if err != nil {
130133
return objs, err
131134
}
135+
132136
objs = append(objs, provider)
137+
133138
return objs, nil
134139
}
135140

@@ -153,6 +158,7 @@ func testDeploymentLabelValueGetter(deploymentNS, deploymentName string) func()
153158
func TestConfigSecretChangesAreAppliedTotheDeployment(t *testing.T) {
154159
g := NewWithT(t)
155160
objs := []client.Object{}
161+
156162
defer func() {
157163
g.Expect(env.CleanupAndWait(ctx, objs...)).To(Succeed())
158164
}()
@@ -277,7 +283,7 @@ func TestReconcilerPreflightConditions(t *testing.T) {
277283
t.Log("Ensure namespace exists", tc.namespace)
278284
g.Expect(env.EnsureNamespaceExists(ctx, tc.namespace)).To(Succeed())
279285

280-
g.Expect(env.CreateAndWait(ctx, dummyConfigMap(tc.namespace, testCurrentVersion))).To(Succeed())
286+
g.Expect(env.CreateAndWait(ctx, dummyConfigMap(tc.namespace))).To(Succeed())
281287

282288
for _, p := range tc.providers {
283289
insertDummyConfig(p)
@@ -566,6 +572,7 @@ func TestProviderConfigSecretChanges(t *testing.T) {
566572
t.Run(tc.name, func(t *testing.T) {
567573
g := NewWithT(t)
568574
objs := []client.Object{}
575+
569576
defer func() {
570577
g.Expect(env.CleanupAndWait(ctx, objs...)).To(Succeed())
571578
}()
@@ -601,7 +608,7 @@ func TestProviderConfigSecretChanges(t *testing.T) {
601608
t.Log("Ensure namespace exists", configNamespace.Name)
602609
g.Expect(err).ToNot(HaveOccurred())
603610

604-
cm := dummyConfigMap(providerNamespace.Name, testCurrentVersion)
611+
cm := dummyConfigMap(providerNamespace.Name)
605612
g.Expect(env.CreateAndWait(ctx, cm)).To(Succeed())
606613
objs = append(objs, cm)
607614

@@ -640,16 +647,19 @@ func TestProviderConfigSecretChanges(t *testing.T) {
640647
}).Should(Succeed())
641648

642649
var updatedDataHash string
650+
643651
if tc.expectSameHash {
644652
g.Eventually(func() string {
645653
updatedDataHash, err = calculateHash(ctx, env.Client, provider)
646654
g.Expect(err).ToNot(HaveOccurred())
655+
647656
return updatedDataHash
648657
}, 15*time.Second).Should(Equal(initialHash))
649658
} else {
650659
g.Eventually(func() string {
651660
updatedDataHash, err = calculateHash(ctx, env.Client, provider)
652661
g.Expect(err).ToNot(HaveOccurred())
662+
653663
return updatedDataHash
654664
}, 15*time.Second).ShouldNot(Equal(initialHash))
655665
}
@@ -789,7 +799,7 @@ func TestProviderSpecChanges(t *testing.T) {
789799
t.Log("Ensure namespace exists", ns.Name)
790800
g.Expect(err).ToNot(HaveOccurred())
791801

792-
g.Expect(env.CreateAndWait(ctx, dummyConfigMap(ns.Name, testCurrentVersion))).To(Succeed())
802+
g.Expect(env.CreateAndWait(ctx, dummyConfigMap(ns.Name))).To(Succeed())
793803

794804
provider.SetNamespace(ns.Name)
795805
t.Log("creating test provider", provider.GetName())

internal/controller/manifests_downloader_test.go

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ func TestManifestsDownloader(t *testing.T) {
4141
provider: &operatorv1.CoreProvider{
4242
ObjectMeta: metav1.ObjectMeta{
4343
Name: "cluster-api",
44-
Namespace: "test-namespace",
44+
Namespace: testNamespaceName,
4545
},
4646
Spec: operatorv1.CoreProviderSpec{
4747
ProviderSpec: operatorv1.ProviderSpec{
@@ -75,8 +75,6 @@ func TestProviderDownloadWithOverrides(t *testing.T) {
7575

7676
fakeclient := fake.NewClientBuilder().WithObjects().Build()
7777

78-
namespace := "test-namespace"
79-
8078
reader := configclient.NewMemoryReader()
8179
_, err := reader.AddProvider("cluster-api", clusterctlv1.CoreProviderType, "https://github.com/kubernetes-sigs/cluster-api/releases/v1.4.3/core-components.yaml")
8280
g.Expect(err).ToNot(HaveOccurred())
@@ -94,7 +92,7 @@ all:
9492
provider: &operatorv1.CoreProvider{
9593
ObjectMeta: metav1.ObjectMeta{
9694
Name: "cluster-api",
97-
Namespace: namespace,
95+
Namespace: testNamespaceName,
9896
},
9997
Spec: operatorv1.CoreProviderSpec{},
10098
},

internal/controller/phases_test.go

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,14 +41,13 @@ func TestSecretReader(t *testing.T) {
4141

4242
secretName := "test-secret"
4343
secretNamespace := "test-secret-namespace"
44-
namespace := "test-namespace"
4544

4645
p := &phaseReconciler{
4746
ctrlClient: fakeclient,
4847
provider: &operatorv1.CoreProvider{
4948
ObjectMeta: metav1.ObjectMeta{
5049
Name: "cluster-api",
51-
Namespace: namespace,
50+
Namespace: testNamespaceName,
5251
},
5352
TypeMeta: metav1.TypeMeta{
5453
Kind: "CoreProvider",

internal/controller/secrets_to_providers.go

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,19 @@
1+
/*
2+
Copyright 2024 The Kubernetes Authors.
3+
4+
Licensed under the Apache License, Version 2.0 (the "License");
5+
you may not use this file except in compliance with the License.
6+
You may obtain a copy of the License at
7+
8+
http://www.apache.org/licenses/LICENSE-2.0
9+
10+
Unless required by applicable law or agreed to in writing, software
11+
distributed under the License is distributed on an "AS IS" BASIS,
12+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
See the License for the specific language governing permissions and
14+
limitations under the License.
15+
*/
16+
117
package controller
218

319
import (
@@ -16,8 +32,10 @@ import (
1632
// If the providers references a secret without a namespace, it will assume the secret is in the same namespace as the provider.
1733
func newSecretToProviderFuncMapForProviderList(k8sClient client.Client, providerList genericprovider.GenericProviderList) handler.MapFunc {
1834
providerListType := fmt.Sprintf("%t", providerList)
35+
1936
return func(ctx context.Context, secret client.Object) []reconcile.Request {
2037
log := ctrl.LoggerFrom(ctx).WithValues("secret", map[string]string{"name": secret.GetName(), "namespace": secret.GetNamespace()}, "providerListType", providerListType)
38+
2139
var requests []reconcile.Request
2240

2341
if err := k8sClient.List(ctx, providerList); err != nil {
@@ -29,6 +47,7 @@ func newSecretToProviderFuncMapForProviderList(k8sClient client.Client, provider
2947
log = log.WithValues("provider", map[string]string{"name": provider.GetName(), "namespace": provider.GetNamespace()})
3048

3149
spec := provider.GetSpec()
50+
3251
if spec.ConfigSecret == nil {
3352
log.V(5).Info("Provider does not reference a config secret")
3453
continue
@@ -37,11 +56,13 @@ func newSecretToProviderFuncMapForProviderList(k8sClient client.Client, provider
3756
configNamespace := spec.ConfigSecret.Namespace
3857
if configNamespace == "" {
3958
log.V(5).Info("Provider configSecret namespace is empty, using provider namespace")
59+
4060
configNamespace = provider.GetNamespace()
4161
}
4262

4363
if configNamespace == secret.GetNamespace() && spec.ConfigSecret.Name == secret.GetName() {
4464
log.V(2).Info("Found provider using config secret")
65+
4566
requests = append(requests, reconcile.Request{NamespacedName: client.ObjectKeyFromObject(provider)})
4667
}
4768
}

internal/controller/secrets_to_providers_test.go

Lines changed: 21 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,19 @@
1+
/*
2+
Copyright 2024 The Kubernetes Authors.
3+
4+
Licensed under the Apache License, Version 2.0 (the "License");
5+
you may not use this file except in compliance with the License.
6+
You may obtain a copy of the License at
7+
8+
http://www.apache.org/licenses/LICENSE-2.0
9+
10+
Unless required by applicable law or agreed to in writing, software
11+
distributed under the License is distributed on an "AS IS" BASIS,
12+
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
See the License for the specific language governing permissions and
14+
limitations under the License.
15+
*/
16+
117
package controller
218

319
import (
@@ -15,7 +31,6 @@ import (
1531
func TestProviderSecretMapper(t *testing.T) {
1632
g := NewWithT(t)
1733

18-
configSecretNamespace := "test-namespace"
1934
otherInfraProviderNamespace := "other-namespace"
2035
configSecretName := "infra-provider-config"
2136

@@ -25,7 +40,7 @@ func TestProviderSecretMapper(t *testing.T) {
2540
&operatorv1.InfrastructureProvider{
2641
ObjectMeta: metav1.ObjectMeta{
2742
Name: "infra-provider-using-secret",
28-
Namespace: configSecretNamespace,
43+
Namespace: testNamespaceName,
2944
},
3045
Spec: operatorv1.InfrastructureProviderSpec{
3146
ProviderSpec: operatorv1.ProviderSpec{
@@ -44,7 +59,7 @@ func TestProviderSecretMapper(t *testing.T) {
4459
ProviderSpec: operatorv1.ProviderSpec{
4560
ConfigSecret: &operatorv1.SecretReference{
4661
Name: configSecretName,
47-
Namespace: configSecretNamespace,
62+
Namespace: testNamespaceName,
4863
},
4964
},
5065
},
@@ -58,7 +73,7 @@ func TestProviderSecretMapper(t *testing.T) {
5873
ProviderSpec: operatorv1.ProviderSpec{
5974
ConfigSecret: &operatorv1.SecretReference{
6075
Name: configSecretName,
61-
Namespace: configSecretNamespace,
76+
Namespace: testNamespaceName,
6277
},
6378
},
6479
},
@@ -93,15 +108,14 @@ func TestProviderSecretMapper(t *testing.T) {
93108
requests := newSecretToProviderFuncMapForProviderList(k8sClient, &operatorv1.InfrastructureProviderList{})(ctx, &corev1.Secret{
94109
ObjectMeta: metav1.ObjectMeta{
95110
Name: configSecretName,
96-
Namespace: configSecretNamespace,
111+
Namespace: testNamespaceName,
97112
},
98113
})
99114

100115
g.Expect(requests).To(HaveLen(3))
101116
g.Expect(requests).To(ContainElements(
102-
ctrl.Request{NamespacedName: types.NamespacedName{Namespace: configSecretNamespace, Name: "infra-provider-using-secret"}},
117+
ctrl.Request{NamespacedName: types.NamespacedName{Namespace: testNamespaceName, Name: "infra-provider-using-secret"}},
103118
ctrl.Request{NamespacedName: types.NamespacedName{Namespace: otherInfraProviderNamespace, Name: "infra-provider-using-secret-from-other-namespace"}},
104119
ctrl.Request{NamespacedName: types.NamespacedName{Namespace: otherInfraProviderNamespace, Name: "other-infra-provider-using-secret-from-other-namespace"}},
105120
))
106-
107121
}

internal/controller/suite_test.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,8 @@ import (
3030
)
3131

3232
const (
33-
timeout = time.Second * 30
33+
timeout = time.Second * 30
34+
testNamespaceName = "test-namespace"
3435
)
3536

3637
var (

0 commit comments

Comments
 (0)