prefix "manotypes";
}
- import rw-pb-ext {
- prefix "rwpb";
- }
-
import vnfd-base {
prefix "vnfd-base";
}
"Derived from earlier versions of base YANG files";
}
+ typedef vdu-operational-status {
+ type enumeration {
+ enum init;
+ enum vm-init-phase;
+ enum vm-alloc-pending;
+ enum running;
+ enum upgrading;
+ enum terminate;
+ enum vl-terminate-phase;
+ enum terminated;
+ enum failed;
+ }
+ }
+
+ typedef vnf-operational-status {
+ type enumeration {
+ enum pre-init;
+ enum init;
+ enum vl-init-phase;
+ enum vm-init-phase;
+ enum running;
+ enum upgrading; // Experimental
+ enum terminate;
+ enum vm-terminate-phase;
+ enum vl-terminate-phase;
+ enum terminated;
+ enum failed;
+ }
+ }
+
grouping placement-group-info {
list placement-groups-info {
description
}
}
-
grouping virtual-interface {
container virtual-interface {
description
augment "/rw-project:project" {
container vnfr-catalog {
+ leaf schema-version {
+ description "Schema version for the VNFR. If unspecified, it assumes v3.0";
+ type string;
+ default "v3.0";
+ }
+
config false;
list vnfr {
description
}
// Use parameters provided here to configure this VNF
- container vnf-configuration {
- uses manotypes:vca-configuration;
- }
+ container vnf-configuration {
+ uses manotypes:vca-configuration;
+ }
// Mainly used by Mon-params & dashboard url
container mgmt-interface {
"IP address assigned to the external connection point";
type inet:ip-address;
}
+
leaf mac-address {
description
"MAC address assigned to the external connection point";
description "Short Unique name of the VDU
This will be of the format NSR name-ShortnedString-VDUname
NSR name and VDU name shall be constrained to 10 characters";
- rwpb:field-inline "true";
- rwpb:field-string-max 64;
type string;
}
uses manotypes:supplemental-boot-data;
- container vdu-configuration {
- uses manotypes:vca-configuration;
- }
+ container vdu-configuration {
+ uses manotypes:vca-configuration;
+ }
list volumes {
key "name";
"IP address assigned to the internal connection point";
type inet:ip-address;
}
+
leaf mac-address {
description
"MAC address assigned to the internal connection point";
uses associated-virtual-cps;
}
- list interface {
- description
- "List of interfaces (internal and external) for the VNF";
- key name;
-
- leaf name {
+ list interface {
description
- "Name of the interface. Note that this
- name has only local significance to the VDU.";
- type string;
- }
+ "List of interfaces (internal and external) for the VNF";
+ key name;
- leaf position {
- description
- "Explicit Position of the interface within the list";
- type uint32;
- }
+ leaf name {
+ description
+ "Name of the interface. Note that this
+ name has only local significance to the VDU.";
+ type string;
+ }
- leaf type {
- description
- "Type of the Interface";
+ leaf position {
+ description
+ "Explicit Position of the interface within the list";
+ type uint32;
+ }
- type vnfd-base:interface-type;
+ leaf type {
+ description
+ "Type of the Interface";
- default "EXTERNAL";
- }
- choice connection-point-type {
- case internal {
- leaf internal-connection-point-ref {
- description
- "Leaf Ref to the particular internal connection point";
- type leafref {
- path "../../internal-connection-point/id";
+ type vnfd-base:interface-type;
+
+ default "EXTERNAL";
+ }
+ choice connection-point-type {
+ case internal {
+ leaf internal-connection-point-ref {
+ description
+ "Leaf Ref to the particular internal connection point";
+ type leafref {
+ path "../../internal-connection-point/id";
+ }
}
}
- }
- case external {
- leaf external-connection-point-ref {
- description
- "Leaf Ref to the particular external connection point";
- type leafref {
- path "../../../connection-point/name";
+ case external {
+ leaf external-connection-point-ref {
+ description
+ "Leaf Ref to the particular external connection point";
+ type leafref {
+ path "../../../connection-point/name";
+ }
}
}
}
+ uses virtual-interface;
}
- uses virtual-interface;
- }
-
- leaf operational-status {
- description
- "The operational status of the VDU
- init : The VDU has just started.
- vm-init-phase : The VDUs in the VNF is being created in VIM.
- vm-alloc-pending : The VM alloc is pending in VIM
- running : The VDU is active in VM
- terminate : The VDU is being terminated
- vm-terminate-phase : The VDU in the VNF is being terminated in VIM.
- terminated : The VDU is in the terminated state.
- failed : The VDU instantiation failed.
- ";
- type enumeration {
- rwpb:enum-type "VduOperationalStatus";
- enum init;
- enum vm-init-phase;
- enum vm-alloc-pending;
- enum running;
- enum terminate;
- enum vl-terminate-phase;
- enum terminated;
- enum failed;
- }
+ leaf operational-status {
+ description
+ "The operational status of the VDU
+ init : The VDU has just started.
+ vm-init-phase : The VDUs in the VNF is being created in VIM.
+ vm-alloc-pending : The VM alloc is pending in VIM
+ running : The VDU is active in VM
+ upgrading : The VDU is being upgraded (EXPERIMENTAL)
+ terminate : The VDU is being terminated
+ vm-terminate-phase : The VDU in the VNF is being terminated in VIM.
+ terminated : The VDU is in the terminated state.
+ failed : The VDU instantiation failed.
+ ";
+ type vdu-operational-status;
}
uses placement-group-info;
terminated : The VNF is in the terminated state.
failed : The VNF instantiation failed
";
-
- type enumeration {
- rwpb:enum-type "VnfrOperationalStatus";
- enum pre-init;
- enum init;
- enum vl-init-phase;
- enum vm-init-phase;
- enum running;
- enum terminate;
- enum vm-terminate-phase;
- enum vl-terminate-phase;
- enum terminated;
- enum failed;
- }
+ type vnf-operational-status;
}
leaf config-status {
uses placement-group-info;
container cloud-config {
- rwpb:msg-new VnfrCloudConfig;
uses manotypes:cloud-config;
}
}