summaryrefslogtreecommitdiff
path: root/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-host/merge_yamls.py
diff options
context:
space:
mode:
Diffstat (limited to 'meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-host/merge_yamls.py')
-rwxr-xr-xmeta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-host/merge_yamls.py7
1 files changed, 7 insertions, 0 deletions
diff --git a/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-host/merge_yamls.py b/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-host/merge_yamls.py
index 5e6c4b5e6..877e3eb57 100755
--- a/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-host/merge_yamls.py
+++ b/meta-phosphor/recipes-phosphor/ipmi/phosphor-ipmi-host/merge_yamls.py
@@ -12,6 +12,11 @@ import sys
import yaml
import copy
+# Custom representer for None types. This is to handle empty dictionaries.
+# By default Pyyaml outputs these as "null", whereas we want an empty character.
+def represent_none(self, _):
+ return self.represent_scalar('tag:yaml.org,2002:null', '')
+
def dict_merge(target, source):
"""Deep merge for dicts.
@@ -43,6 +48,8 @@ if len(sys.argv) == 2:
# No overrides to handle
sys.exit(0)
+yaml.add_representer(type(None), represent_none)
+
target_filename = sys.argv[1]
with open(target_filename) as target_file:
data = yaml.safe_load(target_file)