Skip to content

Commit 2767500

Browse files
authored
refactor namespace/name logic (nginx#6871)
1 parent ce95536 commit 2767500

File tree

2 files changed

+36
-3
lines changed

2 files changed

+36
-3
lines changed

internal/k8s/controller.go

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1747,7 +1747,7 @@ func (lbc *LoadBalancerController) handleRegularSecretDeletion(resources []Resou
17471747
}
17481748

17491749
func (lbc *LoadBalancerController) handleSecretUpdate(secret *api_v1.Secret, resources []Resource) {
1750-
secretNsName := secret.Namespace + "/" + secret.Name
1750+
secretNsName := generateSecretNSName(secret)
17511751

17521752
var warnings configs.Warnings
17531753
var addOrUpdateErr error
@@ -1764,7 +1764,7 @@ func (lbc *LoadBalancerController) handleSecretUpdate(secret *api_v1.Secret, res
17641764
}
17651765

17661766
func (lbc *LoadBalancerController) validationTLSSpecialSecret(secret *api_v1.Secret, secretName string, secretList *[]string) {
1767-
secretNsName := secret.Namespace + "/" + secret.Name
1767+
secretNsName := generateSecretNSName(secret)
17681768

17691769
err := secrets.ValidateTLSSecret(secret)
17701770
if err != nil {
@@ -1777,7 +1777,7 @@ func (lbc *LoadBalancerController) validationTLSSpecialSecret(secret *api_v1.Sec
17771777

17781778
func (lbc *LoadBalancerController) handleSpecialSecretUpdate(secret *api_v1.Secret) {
17791779
var specialTLSSecretsToUpdate []string
1780-
secretNsName := secret.Namespace + "/" + secret.Name
1780+
secretNsName := generateSecretNSName(secret)
17811781

17821782
if secretNsName == lbc.specialSecrets.defaultServerSecret {
17831783
lbc.validationTLSSpecialSecret(secret, configs.DefaultServerSecretFileName, &specialTLSSecretsToUpdate)
@@ -1795,6 +1795,10 @@ func (lbc *LoadBalancerController) handleSpecialSecretUpdate(secret *api_v1.Secr
17951795
lbc.recorder.Eventf(secret, api_v1.EventTypeNormal, "Updated", "the special Secret %v was updated", secretNsName)
17961796
}
17971797

1798+
func generateSecretNSName(secret *api_v1.Secret) string {
1799+
return secret.Namespace + "/" + secret.Name
1800+
}
1801+
17981802
func getStatusFromEventTitle(eventTitle string) string {
17991803
switch eventTitle {
18001804
case "AddedOrUpdatedWithError", "Rejected", "NoVirtualServersFound", "Missing Secret", "UpdatedWithError":

internal/k8s/controller_test.go

Lines changed: 29 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3505,3 +3505,32 @@ func TestNewTelemetryCollector(t *testing.T) {
35053505
}
35063506
}
35073507
}
3508+
3509+
func TestGenerateSecretNSName(t *testing.T) {
3510+
t.Parallel()
3511+
testCases := []struct {
3512+
name string
3513+
secret *api_v1.Secret
3514+
expected string
3515+
}{
3516+
{
3517+
name: "Valid secret",
3518+
secret: &api_v1.Secret{
3519+
ObjectMeta: meta_v1.ObjectMeta{
3520+
Namespace: "testns",
3521+
Name: "test-secret",
3522+
},
3523+
},
3524+
expected: "testns/test-secret",
3525+
},
3526+
}
3527+
3528+
for _, tc := range testCases {
3529+
t.Run(tc.name, func(t *testing.T) {
3530+
result := generateSecretNSName(tc.secret)
3531+
if result != tc.expected {
3532+
t.Fatalf("Expected %v, but got %v", tc.expected, result)
3533+
}
3534+
})
3535+
}
3536+
}

0 commit comments

Comments
 (0)