Merge "Path for nesting: external CP in VNFD and NSD can refer to internal VLDs and...
[osm/IM.git] / models / yang / vnfd-base.yang
index 607a76c..acb5b28 100644 (file)
@@ -64,6 +64,7 @@ module vnfd-base
     leaf port-security-enabled {
       description "Enables the port security for the port";
       type boolean;
+      default true;
     }
   }
 
@@ -303,6 +304,10 @@ module vnfd-base
               path "../../../vdu/internal-connection-point/id";
             }
           }
+          leaf ip-address {
+            description "IP address of the internal connection point";
+            type inet:ip-address;
+          }
         }
 
         uses manotypes:provider-network;
@@ -342,6 +347,19 @@ module vnfd-base
           at the network service level to construct network services.";
 
         uses common-connection-point;
+
+        leaf internal-vld-ref {
+          description
+            "Reference to an internal VLD of the VNF. This field is
+            optional. It allows exposing an internal VLD through a
+            connection point. When building a NS, this VNF CP might be
+            connected to a NS VLD, then both VLDs (the i-VLD of the VNF and the
+            VLD of the NS) will become the same network and the IP profile will
+            be the one configured at NS level.";
+          type leafref {
+            path "../../internal-vld/id";
+          }
+        }
       }
 
       list vdu {
@@ -391,6 +409,25 @@ module vnfd-base
 
         uses manotypes:image-properties;
 
+        list alternative-images {
+          key "vim-type";
+          description
+            "List of alternative images per VIM type.
+            Different images can be used for specific types of VIMs instead
+            of the default image. This allows deployments in sites where the
+            image identifier in the VIM is given by the VIM provider and
+            cannot be modified.
+            If an alternative image is specified for a VIM type, it will prevail
+            over the default image";
+
+          leaf vim-type {
+            description "VIM type: openvim, openstack, vmware, aws, etc.";
+            type string;
+          }
+
+          uses manotypes:image-properties;
+        }
+
         container vdu-configuration {
           uses manotypes:vca-configuration;
         }
@@ -464,6 +501,17 @@ module vnfd-base
             default "EXTERNAL";
           }
 
+          leaf mac-address {
+            description
+                "MAC address of the interface.
+                Some VNFs require a specific MAC address to be configured
+                in the interface. While this is not recommended at all in
+                NFV environments, this parameter exists to allow those
+                scenarios.
+                This parameter will be likely deprecated in the future.";
+            type string;
+          }
+
           choice connection-point-type {
             case internal {
               leaf internal-connection-point-ref {