projects
/
invirt/packages/invirt-base.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Add an __iter__ method to invirt.common.struct.
[invirt/packages/invirt-base.git]
/
python
/
invirt
/
config.py
diff --git
a/python/invirt/config.py
b/python/invirt/config.py
index
e4aad28
..
bcd2423
100644
(file)
--- a/
python/invirt/config.py
+++ b/
python/invirt/config.py
@@
-20,6
+20,8
@@
lock_path = '/var/lib/invirt/cache.lock'
def augment(d1, d2):
"""Splice dict-tree d2 into d1. Return d1.
def augment(d1, d2):
"""Splice dict-tree d2 into d1. Return d1.
+ d2 may be None for an empty dict-tree, because yaml.load produces that.
+
Example:
>>> d = {'a': {'b': 1}, 'c': 2}
>>> augment(d, {'a': {'d': 3}})
Example:
>>> d = {'a': {'b': 1}, 'c': 2}
>>> augment(d, {'a': {'d': 3}})
@@
-27,6
+29,8
@@
def augment(d1, d2):
>>> d
{'a': {'b', 1, 'd': 3}, 'c': 2}
"""
>>> d
{'a': {'b', 1, 'd': 3}, 'c': 2}
"""
+ if d2 is None:
+ return d1
for k in d2:
if k in d1 and isinstance(d1[k], dict):
augment(d1[k], d2[k])
for k in d2:
if k in d1 and isinstance(d1[k], dict):
augment(d1[k], d2[k])
@@
-136,6
+140,6
@@
def load(force_refresh = False):
return ns.cfg
dicts = load()
return ns.cfg
dicts = load()
-structs = dicts2struct(dicts)
+structs = dicts2struct(dicts, '')
# vim:et:sw=4:ts=4
# vim:et:sw=4:ts=4