X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FIM.git;a=blobdiff_plain;f=models%2Fyang%2Fnsd.yang;h=e80654f86c1325c50cad5128cddfcae779b25d4b;hp=4a88eac47db4cd1ce5872b8a9b73832fe073226a;hb=refs%2Fchanges%2F33%2F9833%2F2;hpb=d6ccaf7e0a66331e9be1046642868f84e7184a31 diff --git a/models/yang/nsd.yang b/models/yang/nsd.yang index 4a88eac..e80654f 100644 --- a/models/yang/nsd.yang +++ b/models/yang/nsd.yang @@ -20,7 +20,7 @@ module nsd { - namespace "urn:ietf:params:xml:ns:yang:nfvo:nsd"; + namespace "urn:etsi:osm:yang:nsd"; prefix "nsd"; import vnfd { @@ -35,6 +35,10 @@ module nsd prefix "manotypes"; } + import ietf-inet-types { + prefix "inet"; + } + revision 2017-02-28 { description "Update model to support projects."; @@ -61,7 +65,7 @@ module nsd "Identifier/index for the VNFD. This separate id is required to ensure that multiple VNFs can be part of single NS"; - type uint64; + type string; } leaf vnfd-id-ref { @@ -100,6 +104,15 @@ module nsd } } + leaf vnfd-connection-point-ref { + description "A reference to a connection point name"; + type leafref { + path "/vnfd:vnfd-catalog/vnfd:vnfd" + + "[vnfd:id = current()/../vnfd-id-ref]/" + + "vnfd:connection-point/vnfd:name"; + } + } + leaf vnfd-id-ref { description "A reference to a VNFD"; @@ -110,14 +123,11 @@ module nsd } } - leaf vnfd-connection-point-ref { - description "A reference to a connection point name"; - type leafref { - path "/vnfd:vnfd-catalog/vnfd:vnfd" + - "[vnfd:id = current()/../vnfd-id-ref]/" + - "vnfd:connection-point/vnfd:name"; - } + leaf ip-address { + description "IP address of the connection point"; + type inet:ip-address; } + } } } @@ -217,86 +227,13 @@ module nsd } } - grouping nsd-service-primitive { - 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 - "List of service primitives grouped by VNF."; - - key "member-vnf-index-ref"; - leaf member-vnf-index-ref { - description - "Reference to member-vnf within constituent-vnfds"; - type leafref { - path "../../../constituent-vnfd/member-vnf-index"; - } - } - - leaf vnfd-id-ref { - description - "A reference to a VNFD. This is a leafref"; - - type leafref { - path "../../../constituent-vnfd" + - "[member-vnf-index = current()/../member-vnf-index-ref]" + "/vnfd-id-ref"; - } - } - - leaf vnfd-name { - description - "Name of the VNFD"; - type leafref { - path "/vnfd:vnfd-catalog/vnfd:vnfd" - + "[vnfd:id = current()/../vnfd-id-ref]" - + "/vnfd:name"; - } - } - - 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; - } - } - } + container nsd-catalog { - leaf user-defined-script { - description - "A user defined script."; - type string; - } + leaf schema-version { + description "Schema version for the NSD. If unspecified, it assumes v3.0"; + type string; + default "v3.0"; } - } - - container nsd-catalog { list nsd { key id; @@ -312,8 +249,6 @@ module nsd uses nsd-vnf-dependency; uses nsd-monitoring-param; - - uses nsd-service-primitive; } } }