From 54409a2918af8af47dad29fa3dff637fbf3836ef Mon Sep 17 00:00:00 2001 From: garciadeblas Date: Wed, 23 Oct 2019 16:50:16 +0200 Subject: [PATCH] Feature 5837: OSM Kubernetes Support The change includes the addition of the following containers to the vnfd: k8s-cluster, kdu (including kdu-configuration) Change-Id: Ia24b0e383a0d56e01d333094ae0cca970525f3e7 Signed-off-by: garciadeblas --- models/yang/vnfd-base.yang | 112 +++++++++++++++++++++++++++++++++++++ 1 file changed, 112 insertions(+) diff --git a/models/yang/vnfd-base.yang b/models/yang/vnfd-base.yang index d52c377..38bede6 100644 --- a/models/yang/vnfd-base.yang +++ b/models/yang/vnfd-base.yang @@ -614,6 +614,118 @@ module vnfd-base } } + list kdu { + description "List of K8s Deployment Units"; + key "name"; + + leaf name { + description "Unique name for the KDU"; + type string; + } + + leaf description { + description "Description of the KDU."; + type string; + } + + container kdu-configuration { + uses manotypes:vca-configuration; + uses manotypes:vca-config-access; + + leaf-list blacklist-config-primitive { + description + "List of blacklisted config primitives from the list of + default kdu config primitives"; + + type enumeration { + enum upgrade; + enum rollback; + } + + } + + } + + 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; + } + } + + case juju-bundle { + leaf juju-bundle { + description + "Juju bundle that models the KDU, in any of the following ways: + - / + - + - + - + "; + type string; + } + } + } + + } + + container k8s-cluster { + leaf-list version { + description + "List of supported K8s versions. + The cluster where the KDUs will be deployed will have to match + one of these versions."; + + type string; + } + + leaf-list cni { + description + "List of supported CNI plugins. + The cluster where the KDUs will be deployed will have to use + one of these CNI plugins."; + + type enumeration { + enum calico; + enum flannel; + enum multus; + } + } + + list nets { + description + "List of required networks in the K8s cluster. + The cluster where the KDUs will be deployed will have to use + one of these CNI plugins."; + + key "id"; + + leaf id { + description "Internal identifier for the K8s cluster network in this VNF"; + type string; + } + + leaf external-connection-point-ref { + description + "Leaf Ref to the particular external connection point"; + type leafref { + path "../../../connection-point/name"; + } + } + + } + } + list vdu-dependency { description "List of VDU dependencies."; -- 2.17.1