[CORD-2080] Adding 'tosca_key' support in xproto
Change-Id: Ib01c1cdcb81a51819c9e08703e6c76a4ffa09f17
diff --git a/src/tosca/parser.py b/src/tosca/parser.py
index acbd5f1..b30f716 100644
--- a/src/tosca/parser.py
+++ b/src/tosca/parser.py
@@ -147,6 +147,14 @@
setattr(model, "%s_id" % class_name, related_model.id)
return model
+ @staticmethod
+ def add_dependencies(data, requirements, saved_models):
+ for dep in requirements:
+ class_name = dep.keys()[0]
+ related_model = saved_models[dep[class_name]['node']]
+ data["%s_id" % class_name] = related_model.id
+ return data
+
def __init__(self, recipe, username, password, **kwargs):
self.delete = False
@@ -198,6 +206,10 @@
data = {}
# [] get model by class name
class_name = recipe.type.replace("tosca.nodes.", "")
+
+ # augemnt data with relations
+ data = self.add_dependencies(data, recipe.requirements, self.saved_model_by_name)
+
model = GRPCModelsAccessor.get_model_from_classname(class_name, data, self.username, self.password)
# [] populate model with data
model = self.populate_model(model, data)