X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FIM.git;a=blobdiff_plain;f=models%2Faugments%2Fkdu.yang;h=3f7d2e77c5d6368a4bea517839a35e62503970b4;hp=0cad70154b894f93230d441ba95b0ea03821047e;hb=ffa9992171a12534cc69fb6102421a4869172169;hpb=76f6a62b4cc15bc77cf1270d2b1630524fb2879f diff --git a/models/augments/kdu.yang b/models/augments/kdu.yang index 0cad701..3f7d2e7 100644 --- a/models/augments/kdu.yang +++ b/models/augments/kdu.yang @@ -41,13 +41,7 @@ module kdu { } grouping extended-kdu-configuration { - list kdu-configuration { - key "id"; - leaf id { - description - "Internal identifier for the KDU configuration"; - type string; - } + container kdu-configuration { uses common:vnfc-configuration; uses common:vdu-config-access; @@ -64,36 +58,6 @@ module kdu { } } - grouping extended-kdu-model { - list kdu-model { - key "id"; - - leaf id { - description - "Internal identifier for the KDU model"; - type string; - } - - leaf kdu-model-type { - description - "Indicates the KDU model, either as a helm-chart or as a juju-bundle."; - - type enumeration { - enum helm-chart; - enum juju-bundle; - } - } - - leaf kdu-model-locator { - description - "Indicates the KDU model location, either as a path to a folder in the - package or as a URL where to fetch the model."; - - type string; - } - } - } - grouping extended-kdu { list kdu { description @@ -111,6 +75,50 @@ module kdu { "Description of the KDU."; type string; } + + choice kdu-model { + description + "Indicates the KDU model, either as a helm-chart or as a juju-bundle."; + + case helm-chart { + leaf helm-chart { + description + "Helm chart that models the KDU, in any of the following ways: + - / + - + - + - + "; + type string; + } + + leaf helm-version { + description + "Helm version to use for this helm-chart, v3 by default"; + type enumeration { + enum v2; + enum v3; + } + default v3; + } + } + + case juju-bundle { + leaf juju-bundle { + description + "Juju bundle that models the KDU, in any of the following ways: + - / + - + - + - + "; + type string; + } + } + } + + uses extended-kdu-configuration; + } container k8s-cluster { @@ -151,15 +159,46 @@ module kdu { } } } + + list service { + description + "List of Kubernetes services exposed by the KDU. + If empty, all services are assumed to be exposed in the CP associated to the first network + in k8s-cluster.nets."; + key name; + + leaf name { + description "Name of the Kubernetes service exposed by he KDU model"; + type string; + } + + leaf mgmt-service { + description + "Flag to indicate that this Kubernetes service is a mgmt service + to be used for KDU configuration. Defaults to false (if no present). + All services with mgmt-service set to true will be passed to the execution + environment in charge of the KDU configuration."; + type boolean; + default false; + } + + leaf external-connection-point-ref { + description + "String representing a leaf reference to the particular external connection point. + This field should match /etsi-nfv-vnfd:vnfd/etsi-nfv-vnfd:ext-cpd/etsi-nfv-vnfd:id + "; + type string; + } + + } + } augment "/vnfd:vnfd" { uses extended-kdu; - uses extended-kdu-configuration; - uses extended-kdu-model; } augment "/vnfd:vnfd/vnfd:ext-cpd/vnfd:cp-connection" { uses extended-ext-cpd; } -} \ No newline at end of file +}