Skip to content

Commit 241565b

Browse files
authored
Ensure that user-specified env vars are ordered deterministically (#2411)
1 parent c95604f commit 241565b

File tree

1 file changed

+12
-3
lines changed

1 file changed

+12
-3
lines changed

pkg/workloads/k8s.go

+12-3
Original file line numberDiff line numberDiff line change
@@ -19,6 +19,7 @@ package workloads
1919
import (
2020
"fmt"
2121
"path"
22+
"sort"
2223
"strings"
2324

2425
"github.com/cortexlabs/cortex/pkg/config"
@@ -386,10 +387,18 @@ func userPodContainers(api spec.API) ([]kcore.Container, []kcore.Volume) {
386387
})
387388
}
388389

389-
for k, v := range container.Env {
390+
envVarNames := make([]string, 0, len(container.Env))
391+
for envVarName := range container.Env {
392+
envVarNames = append(envVarNames, envVarName)
393+
}
394+
395+
// k8s deployments will replace pods if env vars are re-ordered
396+
sort.Strings(envVarNames)
397+
398+
for _, envVarName := range envVarNames {
390399
containerEnvVars = append(containerEnvVars, kcore.EnvVar{
391-
Name: k,
392-
Value: v,
400+
Name: envVarName,
401+
Value: container.Env[envVarName],
393402
})
394403
}
395404

0 commit comments

Comments
 (0)