Making model-deps optional for synchronizers
Change-Id: I3cf98e4c9b1e014c005ccebe8fc2ad14e1c86968
diff --git a/lib/xos-config/xosconfig/default.py b/lib/xos-config/xosconfig/default.py
index f6469aa..36767e3 100644
--- a/lib/xos-config/xosconfig/default.py
+++ b/lib/xos-config/xosconfig/default.py
@@ -50,7 +50,7 @@
},
'keep_temp_files': False,
'enable_watchers': False,
- 'dependency_graph': '/opt/xos/model-deps',
+ 'dependency_graph': None,
'error_map_path': '/opt/xos/error_map.txt',
'feefie': {
'client_user': 'pl'
diff --git a/xos/synchronizers/new_base/dependency_walker_new.py b/xos/synchronizers/new_base/dependency_walker_new.py
index e278484..c68f15e 100644
--- a/xos/synchronizers/new_base/dependency_walker_new.py
+++ b/xos/synchronizers/new_base/dependency_walker_new.py
@@ -37,7 +37,10 @@
missing_links = {}
-dep_data = open(Config.get("dependency_graph")).read()
+if Config.get("dependency_graph"):
+ dep_data = open(Config.get("dependency_graph")).read()
+else:
+ dep_data = '{}'
dependencies = json.loads(dep_data)
dependencies = {k:[item[0] for item in items] for k,items in dependencies.items()}
diff --git a/xos/synchronizers/new_base/event_loop.py b/xos/synchronizers/new_base/event_loop.py
index efcd2be..3273c84 100644
--- a/xos/synchronizers/new_base/event_loop.py
+++ b/xos/synchronizers/new_base/event_loop.py
@@ -98,11 +98,14 @@
self.event_cond.release()
def load_dependency_graph(self):
- dep_path = Config.get("dependency_graph")
- self.log.info('Loading model dependency graph', path=dep_path)
try:
- dep_graph_str = open(dep_path).read()
+ if Config.get("dependency_graph"):
+ self.log.info('Loading model dependency graph', path=Config.get("dependency_graph"))
+ dep_graph_str = open(Config.get("dependency_graph")).read()
+ else:
+ self.log.debug('Using defualt model dependency graph', graph={})
+ dep_graph_str = '{}'
# joint_dependencies is of the form { Model1 -> [(Model2, src_port, dst_port), ...] }
# src_port is the field that accesses Model2 from Model1