X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FIM.git;a=blobdiff_plain;f=models%2Fyang%2Fnsd-base.yang;h=aded99587eda232ebf94e67e16f24944eb95f3d3;hp=6c852cb6decfc318e73ad5b5e2eb88cfec18d949;hb=a75e0bb18141e1c9b25b0e481a3ae36577e319a0;hpb=e27e0b2fcd1d2278a5f82dc8b090aa8bcd0177b0 diff --git a/models/yang/nsd-base.yang b/models/yang/nsd-base.yang index 6c852cb..aded995 100644 --- a/models/yang/nsd-base.yang +++ b/models/yang/nsd-base.yang @@ -23,10 +23,6 @@ module nsd-base namespace "http://riftio.com/ns/riftware-1.0/nsd-base"; prefix "nsd-base"; - import rw-pb-ext { - prefix "rwpb"; - } - import ietf-inet-types { prefix "inet"; } @@ -35,6 +31,10 @@ module nsd-base prefix "manotypes"; } + import vnfd { + prefix "vnfd"; + } + revision 2017-02-28 { description "Initial revision. This YANG file defines @@ -179,6 +179,71 @@ module nsd-base "Type of the connection point."; type manotypes:connection-point-type; } + + leaf floating-ip-required { + description + "Boolean parameter to indicate whether the CP must be exposed. + A public IP address will be allocated to this CP if exposed is true. + The default is false meaning a floating IP address is not required. + It must be explicitly asked for a floating IP address to be allocated."; + type boolean; + } + + choice connection { + description "Logical connection of the CP to a VLD or to a VNF CP"; + + case vld-ref { + + leaf vld-id-ref { + description + "ID reference to a VLD in the NS"; + type leafref { + path "../../vld/id"; + } + } + + } + + case vnfd-connection-point-ref { + + leaf member-vnf-index-ref { + description "Reference to member-vnf within constituent-vnfd"; + type leafref { + path "../../constituent-vnfd/member-vnf-index"; + } + } + + 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"; + type leafref { + path "../../constituent-vnfd" + + "[member-vnf-index = current()/../member-vnf-index-ref]" + + "/vnfd-id-ref"; + } + } + + leaf vnfd-connection-point-ref { + description + "A reference to a connection point name + in a vnfd. This is a leafref to path: + /vnfd:vnfd-catalog/vnfd:vnfd + + [vnfd:id = current()/../nsd:vnfd-id-ref] + + /vnfd:connection-point/vnfd:name"; + type leafref { + path "/vnfd:vnfd-catalog/vnfd:vnfd" + + "[vnfd:id = current()/../vnfd-id-ref]" + + "/vnfd:connection-point/vnfd:name"; + } + } + + } + + } + } list scaling-group-descriptor { @@ -578,7 +643,6 @@ module nsd-base uses manotypes:ip-profile-list; list initial-service-primitive { - rwpb:msg-new NsdInitialServicePrimitive; description "Initial set of service primitives for NSD."; key "seq"; @@ -587,7 +651,6 @@ module nsd-base } list terminate-service-primitive { - rwpb:msg-new NsdTerminateServicePrimitive; description "Set of service primitives during termination for NSD."; @@ -743,11 +806,6 @@ module nsd-base default false; } - leaf ipv4-nat-pool-name{ - type string; - description "IPV4 nat pool name"; - } - choice init-params { description "Extra parameters for VLD instantiation";