First set of OSM model changes for multi-disk/config-files/etc.
[osm/SO.git] / models / plugins / yang / vnfr.yang
index 4a427d4..c0a6237 100644 (file)
@@ -191,7 +191,7 @@ module vnfr
       }
 
       leaf create-time {
-        description 
+        description
           "Creation timestamp of this Virtual Network 
           Function.  The timestamp is expressed as 
           seconds since unix epoch - 1970-01-01T00:00:00Z";
@@ -199,11 +199,17 @@ module vnfr
         type uint32;
       }
 
-      leaf vnfd-ref {
-        description "Reference to VNFD";
-        type leafref {
-          path "/vnfd:vnfd-catalog/vnfd:vnfd/vnfd:id";
-        }
+      leaf uptime {
+        description
+          "Active period of this Virtual Network Function.
+          Uptime is expressed in seconds";
+
+        type uint32;
+      }
+
+      container vnfd {
+        description "VNF descriptor used to instantiate this VNF";
+        uses vnfd:vnfd-descriptor;
       }
 
       // Use parameters provided here to configure this VNF
@@ -252,7 +258,7 @@ module vnfr
         uses vnfd:common-connection-point;
 
         leaf vlr-ref {
-          description 
+          description
               "Reference to the VLR associated with this connection point";
           type  leafref {
             path "/vlr:vlr-catalog/vlr:vlr/vlr:id";
@@ -260,10 +266,16 @@ module vnfr
         }
 
         leaf ip-address {
-          description 
+          description
               "IP address assigned to the external connection point";
           type inet:ip-address;
         }
+        leaf mac-address {
+          description
+              "MAC address assigned to the external connection point";
+          // type inet:mac-address;
+          type string;
+        }
         leaf connection-point-id {
           rwpb:field-inline "true";
           rwpb:field-string-max 64;
@@ -288,9 +300,7 @@ module vnfr
 
         leaf vdu-id-ref {
           type leafref {
-            path "/vnfd:vnfd-catalog/vnfd:vnfd" 
-               + "[vnfd:id = current()/../../vnfr:vnfd-ref]"
-               + "/vnfd:vdu/vnfd:id";
+            path "../../vnfd/vdu/id";
           }
         }
 
@@ -330,6 +340,24 @@ module vnfr
         uses manotypes:hypervisor-epa;
         uses manotypes:host-epa;
 
+        uses manotypes:supplemental-boot-data;
+
+        list volumes {
+          key "name";
+
+          leaf name {
+            description "Name of the disk-volumes, e.g. vda, vdb etc";
+            type string;
+          }
+
+          leaf volume-id {
+            description "VIM assigned volume id";
+            type string;
+          }
+
+          uses manotypes:volume-info;
+        }
+
         list alarms {
           description
               "A list of the alarms that have been created for this VDU";
@@ -351,10 +379,16 @@ module vnfr
           uses vnfd:common-connection-point;
 
           leaf ip-address {
-            description 
-                "IP address assigned to the external connection point";
+            description
+                "IP address assigned to the internal connection point";
             type inet:ip-address;
           }
+          leaf mac-address {
+            description
+                "MAC address assigned to the internal connection point";
+            // type inet:mac-address;
+            type string;
+          }
         }
 
         list internal-interface {