Skip to content

Commit 2327bb1

Browse files
authored
Merge pull request #871 from helgi/sortenv
feat(scheduler): sort env vars and secrets by keys for easier hashing
2 parents 264c987 + 32be50a commit 2327bb1

1 file changed

Lines changed: 8 additions & 0 deletions

File tree

rootfs/scheduler/__init__.py

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,8 @@
1+
from collections import OrderedDict
12
from datetime import datetime, timedelta
23
import json
34
import logging
5+
import operator
46
import os
57
import string
68
import time
@@ -445,6 +447,9 @@ def _set_container(self, namespace, container_name, data, **kwargs): # noqa
445447
for key, value in env.items():
446448
secrets_env[key.lower().replace('_', '-')] = str(value)
447449

450+
# dictionary sorted by key
451+
secrets_env = OrderedDict(sorted(secrets_env.items(), key=lambda t: t[0]))
452+
448453
secret_name = "{}-{}-env".format(namespace, kwargs.get('version'))
449454
self.get_secret(namespace, secret_name)
450455
except KubeHTTPException:
@@ -478,6 +483,9 @@ def _set_container(self, namespace, container_name, data, **kwargs): # noqa
478483
"value": "1"
479484
})
480485

486+
# list sorted by dict key name
487+
data['env'].sort(key=operator.itemgetter('name'))
488+
481489
if mem or cpu:
482490
data["resources"] = {"limits": {}}
483491

0 commit comments

Comments
 (0)