namespace "urn:ietf:params:xml:ns:yang:nfvo:nsr";
prefix "nsr";
- import rw-pb-ext {
- prefix "rwpb";
- }
-
import vlr {
prefix "vlr";
}
"Derived from earlier versions of base YANG files";
}
+ typedef vnffgr-operational-status {
+ type enumeration {
+ enum init;
+ enum running;
+ enum terminate;
+ enum terminated;
+ enum failed;
+ }
+ }
+
+ typedef ns-operational-status {
+ type enumeration {
+ enum init;
+ enum vl-init-phase;
+ enum vnf-init-phase;
+ enum running;
+ enum terminate;
+ enum vnf-terminate-phase;
+ enum vl-terminate-phase;
+ enum terminated;
+ enum failed;
+ enum scaling-out;
+ enum scaling-in;
+ enum vl-instantiate;
+ enum vl-terminate;
+ }
+ }
+
typedef config-states {
type enumeration {
enum init;
key "id";
unique "name";
+ leaf schema-version {
+ description "Schema version for the NSR. If unspecified, it assumes v3.0";
+ type string;
+ default "v3.0";
+ }
+
leaf id {
description "Identifier for the NSR.";
type yang:uuid;
terminated : The VNFFGR is in the terminated state.
failed : The VNFFGR instantiation failed
";
-
- type enumeration {
- rwpb:enum-type "VnffgrOperationalStatus";
- enum init;
- enum running;
- enum terminate;
- enum terminated;
- enum failed;
- }
+ type vnffgr-operational-status;
}
list rsp {
}
leaf member-vnf-index-ref {
- type uint64;
+ type string;
}
leaf vnfd-id-ref {
description
path "../../../../../../vnfr:vnfr-catalog/vnfr:vnfr/vnfr:name";
}
}
- leaf vnfr-connection-point-ref {
+ leaf vnfr-ingress-connection-point-ref {
+ description
+ "A reference to a vnfr connection point.";
+ type leafref {
+ path "../../../../../../vnfr:vnfr-catalog/vnfr:vnfr"
+ + "[vnfr:id = current()/../vnfr-id-ref]"
+ + "/vnfr:connection-point/vnfr:name";
+ }
+ }
+ leaf vnfr-egress-connection-point-ref {
description
"A reference to a vnfr connection point.";
type leafref {
type string;
}
leaf port-id {
- rwpb:field-inline "true";
- rwpb:field-string-max 64;
type string;
}
leaf vm-id {
- rwpb:field-inline "true";
- rwpb:field-string-max 64;
type string;
}
leaf address {
}
}
leaf port-id {
- rwpb:field-inline "true";
- rwpb:field-string-max 64;
type string;
}
leaf vm-id {
- rwpb:field-inline "true";
- rwpb:field-string-max 64;
type string;
}
leaf ip-address {
vl-terminate : The NS is terminating a VL
";
- type enumeration {
- enum init;
- enum vl-init-phase;
- enum vnf-init-phase;
- enum running;
- enum terminate;
- enum vnf-terminate-phase;
- enum vl-terminate-phase;
- enum terminated;
- enum failed;
- enum scaling-out;
- enum scaling-in;
- enum vl-instantiate;
- enum vl-terminate;
- }
+ type ns-operational-status;
+ }
+
+ container ns-configuration {
+ uses manotypes:vca-configuration;
}
leaf config-status {
leaf member-vnf-index-ref {
description
"Reference to member-vnf within constituent-vnfds";
- type uint64;
+ type string;
}
leaf vnfd-id-ref {
}
list initial-service-primitive {
- rwpb:msg-new NsrInitialServicePrimitive;
description
"Initial set of service primitives for NSD.";
key "seq";
}
list terminate-service-primitive {
- rwpb:msg-new NsrTerminateServicePrimitive;
description
"Set of service primitives to
execute during termination of NSD.";
leaf member-vnf-index-ref {
description
"Reference to member-vnf within constituent-vnfds";
- type uint64;
+ type string;
}
leaf vnfd-id-ref {