summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--deploy/deploy-config.py43
1 files changed, 3 insertions, 40 deletions
diff --git a/deploy/deploy-config.py b/deploy/deploy-config.py
index 5351c1461..a0a44c1ed 100644
--- a/deploy/deploy-config.py
+++ b/deploy/deploy-config.py
@@ -90,51 +90,14 @@ def sha_uri(uri):
sha1.update(data)
return sha1.hexdigest()
-def merge_fuel_plugin_version_list(list1, list2):
- final_list = []
- # When the plugin version in not there in list1 it will
- # not be copied
- for e_l1 in list1:
- plugin_version = e_l1.get('metadata',
- {'plugin_version', None}).get('plugin_version')
- plugin_version_found = False
- for e_l2 in list2:
- if plugin_version == e_l2.get('metadata',
- {'plugin_version',
- None}).get('plugin_version'):
- final_list.append(dict(mergedicts(e_l1, e_l2)))
- plugin_version_found = True
- if not plugin_version_found:
- final_list.append(e_l1)
- return final_list
-
-def merge_lists(list1, list2):
- if list1 and list2:
- if isinstance(list1[0], dict):
- if 'plugin_version' in list1[0].get('metadata', {}):
- return merge_fuel_plugin_version_list(list1, list2)
- else:
- raise Exception("Lists with dics inside are not merge able! "
- "You have to code the merge them. "
- "List1: %s; List2: %s"
- % (list1, list2))
- else:
- return list2
- elif list1:
- return list1
- else:
- return list2
-
def mergedicts(dict1, dict2):
for k in set(dict1.keys()).union(dict2.keys()):
if k in dict1 and k in dict2:
if isinstance(dict1[k], dict) and isinstance(dict2[k], dict):
yield (k, dict(mergedicts(dict1[k], dict2[k])))
- elif isinstance(dict1[k], list) and isinstance(dict2[k], list):
- yield (k, merge_lists(dict1[k], dict2[k]))
else:
- # If one of the values is not a dict nor a list,
- # you can't continue merging it.
+ # If one of the values is not a dict, you can't continue
+ # merging it.
# Value from second dict overrides one in first and we move on.
yield (k, dict2[k])
elif k in dict1:
@@ -231,7 +194,7 @@ if deploy_scenario_conf["stack-extensions"]:
module_comments.append(str(module_conf['plugin-config-metadata']['comment']))
module_conf.pop('plugin-config-metadata')
final_dea_conf['settings']['editable'].update(module_conf)
- scenario_module_override_conf = module.get('module-config-override')
+ scenario_module_override_conf = module['module-config-override']
if scenario_module_override_conf:
dea_scenario_module_override_conf = {}
dea_scenario_module_override_conf['settings'] = {}