module nsr
{
- namespace "urn:ietf:params:xml:ns:yang:nfvo:nsr";
+ namespace "urn:etsi:osm:yang:nsr";
prefix "nsr";
import vlr {
prefix "manotypes";
}
- import rw-project {
- prefix "rw-project";
+ import osm-project {
+ prefix "osm-project";
}
revision 2017-02-08 {
}
}
- augment "/rw-project:project" {
+ augment "/osm-project:project" {
list key-pair {
key "name";
description "Used to configure the list of public keys to be injected as part
}
}
- grouping event-service-primitive {
+ grouping event-config-primitive {
leaf seq {
description
- "Sequence number for the service primitive.";
+ "Sequence number for the config primitive.";
type uint64;
}
leaf name {
description
- "Name of the service primitive.";
+ "Name of the primitive.";
type string;
- mandatory "true";
+ mandatory true;
}
leaf user-defined-script {
}
}
- augment "/rw-project:project" {
+ augment "/osm-project:project" {
container ns-instance-config {
list nsr {
uses project-nsd:nsr-nsd-vnf-dependency;
uses project-nsd:nsr-nsd-monitoring-param;
-
- uses project-nsd:nsr-nsd-service-primitive;
}
uses ns-instance-config-params;
}
}
}
- augment "/rw-project:project" {
+ augment "/osm-project:project" {
container ns-instance-opdata {
config false;
type ns-operational-status;
}
+ container ns-configuration {
+ uses manotypes:vca-configuration;
+ }
+
leaf config-status {
description
"The configuration status of the NS instance
type config-states;
}
- list service-primitive {
- description
- "Network service level service primitives.";
-
- key "name";
-
- leaf name {
- description
- "Name of the service primitive.";
- type string;
- }
-
- list parameter {
- description
- "List of parameters for the service primitive.";
-
- key "name";
- uses manotypes:primitive-parameter;
- }
-
- uses manotypes:ui-primitive-group;
-
- list vnf-primitive-group {
- description
- "Reference to member-vnf within constituent-vnfds";
-
- key "member-vnf-index-ref";
- leaf member-vnf-index-ref {
- description
- "Reference to member-vnf within constituent-vnfds";
- type string;
- }
-
- leaf vnfd-id-ref {
- description
- "A reference to a vnfd. This is a
- leafref to path:
- ../../../../nsd:constituent-vnfd
- + [nsd:id = current()/../nsd:id-ref]
- + /nsd:vnfd-id-ref
- NOTE: An issue with confd is preventing the
- use of xpath. Seems to be an issue with leafref
- to leafref, whose target is in a different module.
- Once that is resovled this will switched to use
- leafref";
-
- type string;
- }
-
- leaf vnfd-name {
- description
- "Name of the VNFD";
- type string;
- }
-
- list primitive {
- key "index";
-
- leaf index {
- description "Index of this primitive";
- type uint32;
- }
-
- leaf name {
- description "Name of the primitive in the VNF primitive ";
- type string;
- }
- }
- }
-
- leaf user-defined-script {
- description
- "A user defined script.";
- type string;
- }
- }
-
- list initial-service-primitive {
- description
- "Initial set of service primitives for NSD.";
- key "seq";
-
- uses event-service-primitive;
- }
-
- list terminate-service-primitive {
- description
- "Set of service primitives to
- execute during termination of NSD.";
- key "seq";
-
- uses event-service-primitive;
- }
-
list monitoring-param {
description
"List of NS level params.";
leaf nsr_id_ref {
description "Reference to NSR ID ref";
type leafref {
- path "/rw-project:project[rw-project:name=current()/.." +
+ path "/osm-project:project[osm-project:name=current()/.." +
"/nsr:project-name]/nsr:ns-instance-config/nsr:nsr/nsr:id";
}
mandatory true;
}
}
- rpc get-ns-service-primitive-values {
- description "Get the service primitive parameter values";
+ rpc get-ns-config-primitive-values {
+ description "Get the config primitive parameter values";
input {
leaf name {
- description "Name of the NS service primitive group";
+ description "Name of the NS config primitive group";
mandatory true;
type string;
}
}
}
- rpc exec-ns-service-primitive {
- description "Executes a NS service primitive or script";
+ rpc exec-ns-config-primitive {
+ description "Executes a NS config primitive or script";
input {
leaf name {
leaf scaling-group-name-ref {
description "name of the scaling group";
type leafref {
- path "/rw-project:project[rw-project:name=current()/.." +
+ path "/osm-project:project[osm-project:name=current()/.." +
"/nsr:project-name]/nsr:ns-instance-config/nsr:nsr" +
"[nsr:id=current()/../nsr:nsr_id_ref]/nsr:nsd" +
"/nsr:scaling-group-descriptor/nsr:name";
leaf instance-id {
description "id of the scaling group";
type leafref {
- path "/rw-project:project[rw-project:name=current()/.." +
+ path "/osm-project:project[osm-project:name=current()/.." +
"/nsr:project-name]/nsr:ns-instance-config/nsr:nsr" +
"[nsr:id=current()/../nsr:nsr_id_ref]" +
"/nsr:scaling-group[nsr:scaling-group-name-ref=current()/.." +
leaf scaling-group-name-ref {
description "name of the scaling group";
type leafref {
- path "/rw-project:project[rw-project:name=current()/.." +
+ path "/osm-project:project[osm-project:name=current()/.." +
"/nsr:project-name]/nsr:ns-instance-config/nsr:nsr" +
"[nsr:id=current()/../nsr:nsr_id_ref]/nsr:nsd" +
"/nsr:scaling-group-descriptor/nsr:name";
leaf nsd_id_ref {
description "Reference to NSD ID ref";
type leafref {
- path "/rw-project:project[rw-project:name=current()/.." +
+ path "/osm-project:project[osm-project:name=current()/.." +
"/project-name]/project-nsd:nsd-catalog/project-nsd:nsd/project-nsd:id";
}
}
description
"A reference to VNFD placement group";
type leafref {
- path "/rw-project:project[rw-project:name=current()/" +
+ path "/osm-project:project[osm-project:name=current()/" +
"../../project-name]/project-vnfd:vnfd-catalog/project-vnfd:vnfd[project-vnfd:id = " +
"current()/../vnfd-id-ref]/project-vnfd:placement-groups/project-vnfd:name";
}
leaf key-pair-ref {
description "A reference to the key pair entry in the global key pair table";
type leafref {
- path "/rw-project:project[rw-project:name=current()/../../../" +
+ path "/osm-project:project[osm-project:name=current()/../../../" +
"project-name]/key-pair/name";
}
}
leaf key-pair-ref {
description "A reference to the key pair entry in the global key pair table";
type leafref {
- path "/rw-project:project[rw-project:name=current()/" +
+ path "/osm-project:project[osm-project:name=current()/" +
"../../../../project-name]/key-pair/name";
}
}