[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)