[CORD-2355] Adding attributes to the Node model
Change-Id: I575977eb67989bf318ea3029164772a0eb9a8fca
diff --git a/xos/core/models/core.xproto b/xos/core/models/core.xproto
index 2483b5d..8d97520 100644
--- a/xos/core/models/core.xproto
+++ b/xos/core/models/core.xproto
@@ -384,6 +384,10 @@
message Node::node_policy (XOSBase) {
required string name = 1 [max_length = 200, content_type = "stripped", blank = False, help_text = "Name of the Node", null = False, db_index = False];
required manytoone site_deployment->SiteDeployment:nodes = 2 [db_index = True, null = False, blank = False];
+ required string bridgeId = 3 [max_length = 200, content_type = "stripped", blank = False, help_text = "Bridge Id", null = False, db_index = False];
+ required string dataPlaneIntf = 4 [max_length = 200, content_type = "stripped", blank = False, help_text = "Dataplane Interface", null = False, db_index = False];
+ required string dataPlaneIp = 5 [max_length = 200, content_type = "stripped", blank = True, help_text = "Dataplane Ip", null = True, db_index = False];
+ required string hostManagementIface = 6 [max_length = 200, content_type = "stripped", blank = True, help_text = "Host Management Interface", null = True, db_index = False];
}
message NodeLabel (XOSBase) {
required string name = 1 [max_length = 200, content_type = "stripped", blank = False, help_text = "label name", null = False, db_index = False];
diff --git a/xos/tosca/custom_types/xos.m4 b/xos/tosca/custom_types/xos.m4
index 6ae13da..3c8f581 100644
--- a/xos/tosca/custom_types/xos.m4
+++ b/xos/tosca/custom_types/xos.m4
@@ -1242,6 +1242,22 @@
and/or containers.
properties:
xos_base_props
+ bridgeId:
+ type: string
+ required: false
+ description: Bridge ID
+ dataPlaneIntf:
+ type: string
+ required: false
+ description: data plane interface
+ dataPlaneIp:
+ type: string
+ required: false
+ description: data plane ip
+ hostManagementIface:
+ type: string
+ required: false
+ description: host management interface
capabilities:
node:
type: tosca.capabilities.xos.Node
diff --git a/xos/tosca/custom_types/xos.yaml b/xos/tosca/custom_types/xos.yaml
index 10829a5..c7b3b82 100644
--- a/xos/tosca/custom_types/xos.yaml
+++ b/xos/tosca/custom_types/xos.yaml
@@ -2152,6 +2152,22 @@
type: string
required: false
descrption: Replaces/renames this object
+ bridgeId:
+ type: string
+ required: false
+ description: Bridge ID
+ dataPlaneIntf:
+ type: string
+ required: false
+ description: data plane interface
+ dataPlaneIp:
+ type: string
+ required: false
+ description: data plane ip
+ hostManagementIface:
+ type: string
+ required: false
+ description: host management interface
capabilities:
node:
type: tosca.capabilities.xos.Node
diff --git a/xos/tosca/resources/node.py b/xos/tosca/resources/node.py
index e508c1e..6cf930c 100644
--- a/xos/tosca/resources/node.py
+++ b/xos/tosca/resources/node.py
@@ -20,9 +20,11 @@
class XOSNode(XOSResource):
provides = "tosca.nodes.Node"
xos_model = Node
+ copyin_props = ["bridgeId", "dataPlaneIntf", "dataPlaneIp", "hostManagementIface"]
def get_xos_args(self):
- args = {"name": self.obj_name}
+ args = super(XOSNode, self).get_xos_args()
+ args["name"] = self.obj_name
site = None
siteName = self.get_requirement("tosca.relationships.MemberOfSite", throw_exception=False)