environmentVariableKeyDuplication checks that no duplicated environment variable keys.
(ps ks.PodSpecer)
| 303 | |
| 304 | // environmentVariableKeyDuplication checks that no duplicated environment variable keys. |
| 305 | func environmentVariableKeyDuplication(ps ks.PodSpecer) (score scorecard.TestScore, err error) { |
| 306 | pod := ps.GetPodTemplateSpec().Spec |
| 307 | |
| 308 | allContainers := pod.InitContainers |
| 309 | allContainers = append(allContainers, pod.Containers...) |
| 310 | |
| 311 | score.Grade = scorecard.GradeAllOK |
| 312 | |
| 313 | for _, container := range allContainers { |
| 314 | envs := make(map[string]struct{}) |
| 315 | for _, env := range container.Env { |
| 316 | if _, duplicated := envs[env.Name]; duplicated { |
| 317 | msg := fmt.Sprintf("Container environment variable key '%s' is duplicated", env.Name) |
| 318 | score.AddComment(container.Name, "Environment Variable Key Duplication", msg) |
| 319 | score.Grade = scorecard.GradeCritical |
| 320 | continue |
| 321 | } |
| 322 | envs[env.Name] = struct{}{} |
| 323 | } |
| 324 | } |
| 325 | return |
| 326 | } |
nothing calls this directly
no test coverage detected