From: Kiran Kashalkar Date: Tue, 7 Feb 2017 06:23:22 +0000 (+0000) Subject: RIFT-15222: Several relative leafref paths need to be fixed to include reference... X-Git-Tag: v1.1.0~9 X-Git-Url: https://osm.etsi.org/gitweb/?a=commitdiff_plain;h=7749bcbc2837e49b50e6ecfb8cdfa48e02b45bcf;p=osm%2FSO.git RIFT-15222: Several relative leafref paths need to be fixed to include reference to current node Signed-off-by: Kiran Kashalkar --- diff --git a/models/plugins/yang/nsd.yang b/models/plugins/yang/nsd.yang index 3d08627c..0cadca31 100644 --- a/models/plugins/yang/nsd.yang +++ b/models/plugins/yang/nsd.yang @@ -272,7 +272,11 @@ module nsd to leafref, whose target is in a different module. Once that is resovled this will switched to use leafref"; - type string; + type leafref { + path "../../../constituent-vnfd" + + "[member-vnf-index = current()/../member-vnf-index-ref]" + + "/vnfd-id-ref"; + } } leaf vnfd-connection-point-ref { @@ -531,7 +535,9 @@ module nsd description "Identifier for the VNFD."; type leafref { - path "/vnfd:vnfd-catalog/vnfd:vnfd/vnfd:id"; + path "../../../constituent-vnfd" + + "[member-vnf-index = current()/../member-vnf-index-ref]" + + "/vnfd-id-ref"; } } } @@ -545,14 +551,14 @@ module nsd key vnf-source-ref; leaf vnf-source-ref { type leafref { - path "/vnfd:vnfd-catalog/vnfd:vnfd/vnfd:id"; + path "../../constituent-vnfd/vnfd-id-ref"; } } leaf vnf-depends-on-ref { description "Reference to VNF that sorce VNF depends."; type leafref { - path "/vnfd:vnfd-catalog/vnfd:vnfd/vnfd:id"; + path "../../constituent-vnfd/vnfd-id-ref"; } } } @@ -644,7 +650,11 @@ module nsd to leafref, whose target is in a different module. Once that is resovled this will switched to use leafref"; - type string; + type leafref { + path "../../../../constituent-vnfd" + + "[member-vnf-index = current()/../member-vnf-index-ref]" + + "/vnfd-id-ref"; + } } leaf vnfd-connection-point-ref { @@ -659,7 +669,11 @@ module nsd to leafref, whose target is in a different module. Once that is resovled this will switched to use leafref"; - type string; + type leafref { + path "/vnfd:vnfd-catalog/vnfd:vnfd" + + "[vnfd:id = current()/../vnfd-id-ref]/" + + "vnfd:connection-point/vnfd:name"; + } } } } //rsp @@ -709,7 +723,11 @@ module nsd to leafref, whose target is in a different module. Once that is resovled this will switched to use leafref"; - type string; + type leafref { + path "../../../constituent-vnfd" + + "[member-vnf-index = current()/../member-vnf-index-ref]" + + "/vnfd-id-ref"; + } } leaf vnfd-connection-point-ref { @@ -724,7 +742,11 @@ module nsd to leafref, whose target is in a different module. Once that is resovled this will switched to use leafref"; - type string; + type leafref { + path "/vnfd:vnfd-catalog/vnfd:vnfd" + + "[vnfd:id = current()/../vnfd-id-ref]/" + + "vnfd:connection-point/vnfd:name"; + } } list match-attributes { @@ -793,7 +815,7 @@ module nsd list vnfd-monitoring-param { description "A list of VNFD monitoring params"; - key "vnfd-id-ref vnfd-monitoring-param-ref"; + key "member-vnf-index-ref vnfd-monitoring-param-ref"; leaf vnfd-id-ref { description @@ -808,7 +830,11 @@ module nsd Once that is resolved this will switched to use leafref"; - type yang:uuid; + type leafref { + path "../../../constituent-vnfd" + + "[member-vnf-index = current()/../member-vnf-index-ref]" + + "/vnfd-id-ref"; + } } leaf vnfd-monitoring-param-ref { @@ -820,10 +846,12 @@ module nsd } } - leaf-list member-vnf-index-ref { - description - "Optional reference to member-vnf within constituent-vnfds"; - type uint64; + leaf member-vnf-index-ref { + description + "Mandatory reference to member-vnf within constituent-vnfds"; + type leafref { + path "../../../constituent-vnfd/member-vnf-index"; + } } } } diff --git a/models/plugins/yang/vnfd.yang b/models/plugins/yang/vnfd.yang index 3fa141f1..a825be1c 100644 --- a/models/plugins/yang/vnfd.yang +++ b/models/plugins/yang/vnfd.yang @@ -180,7 +180,7 @@ module vnfd "Use the default management interface on this VDU."; leaf vdu-id { type leafref { - path "/vnfd:vnfd-catalog/vnfd:vnfd/vnfd:vdu/vnfd:id"; + path "../../vdu/id"; } } } @@ -190,7 +190,7 @@ module vnfd "Use the ip address associated with this connection point."; leaf cp { type leafref { - path "/vnfd:vnfd-catalog/vnfd:vnfd/vnfd:connection-point/vnfd:name"; + path "../../connection-point/name"; } } }