summaryrefslogtreecommitdiffstats
path: root/docker/dockerplugin/utils.py
diff options
context:
space:
mode:
Diffstat (limited to 'docker/dockerplugin/utils.py')
-rw-r--r--docker/dockerplugin/utils.py15
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