X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FIM.git;a=blobdiff_plain;f=models%2Fyang%2Fnsr.yang;h=520252bd289749667adc0c194240b538fcfe8d44;hp=7597a6f3980ab0c1147332ff98c856866731d6bf;hb=refs%2Fchanges%2F00%2F7100%2F6;hpb=e27e0b2fcd1d2278a5f82dc8b090aa8bcd0177b0 diff --git a/models/yang/nsr.yang b/models/yang/nsr.yang index 7597a6f..520252b 100644 --- a/models/yang/nsr.yang +++ b/models/yang/nsr.yang @@ -23,10 +23,6 @@ module nsr namespace "urn:ietf:params:xml:ns:yang:nfvo:nsr"; prefix "nsr"; - import rw-pb-ext { - prefix "rwpb"; - } - import vlr { prefix "vlr"; } @@ -76,6 +72,34 @@ module nsr "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; @@ -193,6 +217,12 @@ module nsr 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; @@ -378,15 +408,7 @@ module nsr 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 { @@ -464,7 +486,7 @@ module nsr } leaf member-vnf-index-ref { - type uint64; + type string; } leaf vnfd-id-ref { description @@ -485,7 +507,16 @@ module nsr 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 { @@ -507,13 +538,9 @@ module nsr 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 { @@ -598,13 +625,9 @@ module nsr } } 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 { @@ -856,21 +879,11 @@ module nsr 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 { @@ -912,7 +925,7 @@ module nsr leaf member-vnf-index-ref { description "Reference to member-vnf within constituent-vnfds"; - type uint64; + type string; } leaf vnfd-id-ref { @@ -960,7 +973,6 @@ module nsr } list initial-service-primitive { - rwpb:msg-new NsrInitialServicePrimitive; description "Initial set of service primitives for NSD."; key "seq"; @@ -969,7 +981,6 @@ module nsr } list terminate-service-primitive { - rwpb:msg-new NsrTerminateServicePrimitive; description "Set of service primitives to execute during termination of NSD."; @@ -1214,7 +1225,7 @@ module nsr leaf member-vnf-index-ref { description "Reference to member-vnf within constituent-vnfds"; - type uint64; + type string; } leaf vnfd-id-ref {