diff options
Diffstat (limited to 'docker/dockerplugin/utils.py')
-rw-r--r-- | docker/dockerplugin/utils.py | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/docker/dockerplugin/utils.py b/docker/dockerplugin/utils.py index ed680c2..c45af68 100644 --- a/docker/dockerplugin/utils.py +++ b/docker/dockerplugin/utils.py @@ -20,9 +20,24 @@ import string import random +import collections def random_string(n): """Random generate an ascii string of "n" length""" corpus = string.ascii_lowercase + string.ascii_uppercase + string.digits return ''.join(random.choice(corpus) for x in range(n)) + + +def update_dict(d, u): + """Recursively updates dict + + Update dict d with dict u + """ + for k, v in u.iteritems(): + if isinstance(v, collections.Mapping): + r = update_dict(d.get(k, {}), v) + d[k] = r + else: + d[k] = u[k] + return d |