"Derived from earlier versions of base YANG files";
}
+ typedef meta-data-type {
+ type enumeration {
+ enum STRING;
+ enum JSON;
+ }
+ }
+ typedef package-type {
+ description "Type of descriptor being on-boarded";
+ type enumeration {
+ enum NSD;
+ enum VNFD;
+ }
+ }
+
typedef parameter-data-type {
type enumeration {
enum STRING;
type string;
}
}
+ grouping initial-config {
+ leaf seq {
+ description
+ "Sequence number for the configuration primitive.";
+ type uint64;
+ }
+
+ leaf name {
+ description
+ "Name of the configuration primitive.";
+ type string;
+ mandatory "true";
+ }
+
+ leaf user-defined-script {
+ description
+ "A user defined script.";
+ type string;
+ }
+
+ list parameter {
+ key "name";
+ leaf name {
+ type string;
+ }
+
+ leaf value {
+ type string;
+ }
+ }
+ }
grouping vnf-configuration {
container vnf-configuration {
list initial-config-primitive {
rwpb:msg-new InitialConfigPrimitive;
description
- "Initial set of configuration primitives.";
+ "Initial set of configuration primitives.";
key "seq";
- leaf seq {
- description
- "Sequence number for the configuration primitive.";
- type uint64;
- }
-
- leaf name {
- description
- "Name of the configuration primitive.";
- type string;
- }
-
- list parameter {
- key "name";
- leaf name {
- type string;
- }
-
- leaf value {
- type string;
- }
- }
+ uses initial-config;
}
leaf config-template {
}
}
+ grouping config-file {
+ description "Grouping for files needed to be mounted into an additional drive";
+ list config-file {
+ description
+ "List of configuration files to be written on an additional drive";
+ key "source";
+ leaf source {
+ description "Name of the configuration file";
+ type string;
+ }
+ leaf dest {
+ description "Full path of the destination in the guest";
+ type string;
+ }
+ }
+ }
+
+ grouping custom-meta-data {
+ description "Grouping for instance-specific meta data";
+ list custom-meta-data {
+ description
+ "List of meta-data to be associated with the instance";
+ key "name";
+ leaf name {
+ description "Name of the meta-data parameter";
+ type string;
+ }
+
+ leaf data-type {
+ description "Data-type the meta-data parameter";
+ type manotypes:meta-data-type;
+ default "STRING";
+ }
+
+ leaf value {
+ description "Value of the meta-data parameter";
+ type string;
+ }
+ }
+ }
+
+ grouping supplemental-boot-data {
+ description "Grouping for custom vim data";
+ container supplemental-boot-data {
+ uses manotypes:config-file;
+ uses manotypes:custom-meta-data;
+ leaf boot-data-drive {
+ description "Some VIMs implement additional drives to host config-files or meta-data";
+ type boolean;
+ default false;
+ }
+ }
+ }
+
grouping volume-info {
description "Grouping for Volume-info";
}
}
- container boot-params {
- leaf boot-volume {
- description "This flag indicates if this is boot volume or not";
- type boolean;
- }
- leaf boot-priority {
- description "Boot priority associated with volume";
- type int32;
- }
+ leaf boot-volume {
+ description "This flag indicates if this is boot volume or not";
+ type boolean;
}
- container guest-params {
- description "Guest virtualization parameter associated with volume";
+ leaf boot-priority {
+ description "Boot priority associated with volume";
+ type int32;
+ }
- leaf device_bus {
- description "Type of disk-bus on which this disk is exposed to guest";
- type enumeration {
- enum ide;
- enum usb;
- enum virtio;
- enum scsi;
- }
+
+ leaf device_bus {
+ description "Type of disk-bus on which this disk is exposed to guest";
+ type enumeration {
+ enum ide;
+ enum usb;
+ enum virtio;
+ enum scsi;
}
+ }
- leaf device_type {
- description "The type of device as exposed to guest";
- type enumeration {
+ leaf device_type {
+ description "The type of device as exposed to guest";
+ type enumeration {
enum disk;
enum cdrom;
enum floppy;
enum lun;
- }
}
}
+
+ uses custom-meta-data;
}
}