Skip to content

Commit b493ca3

Browse files
authored
fix(webhook): do not add environment variables when they are empty (#1593)
Signed-off-by: Igor Beliakov <[email protected]>
1 parent dbf2906 commit b493ca3

File tree

2 files changed

+25
-2
lines changed

2 files changed

+25
-2
lines changed

pkg/webhook/webhook.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -394,9 +394,9 @@ func addEnvironmentVariables(container corev1.Container, clientID, tenantID, azu
394394
{Name: AzureAuthorityHostEnvVar, Value: azureAuthorityHost},
395395
}
396396

397-
// append only the ones not already present
397+
// append the ones that are not already present (only if desired env contains a non-empty value)
398398
for _, env := range desiredEnvs {
399-
if _, ok := m[env.Name]; !ok {
399+
if _, ok := m[env.Name]; !ok && env.Value != "" {
400400
container.Env = append(container.Env, env)
401401
}
402402
}

pkg/webhook/webhook_test.go

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -627,6 +627,29 @@ func TestAddEnvironmentVariables(t *testing.T) {
627627
}
628628
})
629629
}
630+
631+
t.Run("environment variables are not added when empty", func(t *testing.T) {
632+
container := corev1.Container{
633+
Name: "cont1",
634+
Image: "image",
635+
}
636+
637+
expectedContainer := corev1.Container{
638+
Name: "cont1",
639+
Image: "image",
640+
Env: []corev1.EnvVar{
641+
{
642+
Name: AzureFederatedTokenFileEnvVar,
643+
Value: filepath.Join(TokenFileMountPath, TokenFilePathName),
644+
},
645+
},
646+
}
647+
648+
actualContainer := addEnvironmentVariables(container, "", "", "")
649+
if !reflect.DeepEqual(actualContainer, expectedContainer) {
650+
t.Fatalf("expected: %v, got: %v", expectedContainer, actualContainer)
651+
}
652+
})
630653
}
631654

632655
func TestAddProjectServiceAccountTokenVolumeMount(t *testing.T) {

0 commit comments

Comments
 (0)