From: garciaale Date: Mon, 19 Oct 2020 18:47:00 +0000 (-0300) Subject: Updates sol006 branch with master X-Git-Url: https://osm.etsi.org/gitweb/?a=commitdiff_plain;h=cc20284c7b7b7a91b5c6277dc8e0e115458ad66b;hp=e438d2af0fbe1cceb0127db1b49edb6c01a176e6;p=osm%2FIM.git Updates sol006 branch with master Change-Id: I0fc5d6f0dcf1b0827430602847f0f9e627a599e2 Signed-off-by: garciaale --- diff --git a/.gitignore b/.gitignore index 893f025..f1e4221 100644 --- a/.gitignore +++ b/.gitignore @@ -35,6 +35,8 @@ osm_im/vnfd.py osm_im/nst.py osm_im/nsi.py osm_im/osm.yaml +osm_im/etsi-nfv-nsd.py +osm_im/etsi-nfv-vnfd.py #Pyang and other tools' folders pyangbind diff --git a/Makefile b/Makefile index 190a9b1..c158738 100644 --- a/Makefile +++ b/Makefile @@ -31,17 +31,24 @@ YANG_RECORD_TREES := $(addsuffix .rec.tree.txt, $(YANG_RECORD_MODELS)) YANG_RECORD_JSTREES := $(addsuffix .rec.html, $(YANG_RECORD_MODELS)) OPENAPI_SCHEMAS := osm.yaml +SOL006_YANG_DESC_MODELS := etsi-nfv-vnfd etsi-nfv-nsd +SOL006_PYTHON_MODELS := $(addsuffix .py, $(SOL006_YANG_DESC_MODELS)) +SOL006_YANG_DESC_TREES := $(addsuffix .tree.txt, $(SOL006_YANG_DESC_MODELS)) +SOL006_YANG_DESC_JSTREES := $(addsuffix .html, $(SOL006_YANG_DESC_MODELS)) + OUT_DIR := osm_im TREES_DIR := osm_im_trees MODEL_DIR := models/yang +SOL006_MODEL_DIR := sol006_model/src/yang + Q?=@ PYANG_OPTIONS := -Werror -all: $(PYTHON_MODELS) trees openapi_schemas +all: sol006_deps $(PYTHON_MODELS) $(SOL006_PYTHON_MODELS) trees openapi_schemas $(MAKE) package -trees: $(YANG_DESC_TREES) $(YANG_DESC_JSTREES) $(YANG_RECORD_TREES) $(YANG_RECORD_JSTREES) +trees: $(YANG_DESC_TREES) $(YANG_DESC_JSTREES) $(SOL006_YANG_DESC_TREES) $(SOL006_YANG_DESC_JSTREES) openapi_schemas: $(OPENAPI_SCHEMAS) @@ -50,15 +57,18 @@ $(TREES_DIR): %.py: yang-ietf $(Q)echo generating $@ from $*.yang - $(Q)pyang $(PYANG_OPTIONS) --path $(MODEL_DIR) --plugindir $(PYBINDPLUGIN) -f pybind -o $(OUT_DIR)/$@ $(MODEL_DIR)/$*.yang - + $(if $(findstring etsi,$@), $(eval DIR=$(SOL006_MODEL_DIR)),$(eval DIR = $(MODEL_DIR))) + $(Q)pyang $(PYANG_OPTIONS) --path $(DIR) --plugindir $(PYBINDPLUGIN) -f pybind -o $(OUT_DIR)/$@ $(DIR)/$*.yang + %.tree.txt: $(TREES_DIR) yang-ietf $(Q)echo generating $@ from $*.yang - $(Q)pyang $(PYANG_OPTIONS) --path $(MODEL_DIR) -f tree -o $(TREES_DIR)/$@ $(MODEL_DIR)/$*.yang + $(if $(findstring etsi,$@), $(eval DIR=$(SOL006_MODEL_DIR)),$(eval DIR = $(MODEL_DIR))) + $(Q)pyang $(PYANG_OPTIONS) --path $(DIR) -f tree -o $(TREES_DIR)/$@ $(DIR)/$*.yang %.html: $(TREES_DIR) yang-ietf $(Q)echo generating $@ from $*.yang - $(Q)pyang $(PYANG_OPTIONS) --path $(MODEL_DIR) -f jstree -o $(TREES_DIR)/$@ $(MODEL_DIR)/$*.yang + $(if $(findstring etsi,$@), $(eval DIR=$(SOL006_MODEL_DIR)),$(eval DIR = $(MODEL_DIR))) + $(Q)pyang $(PYANG_OPTIONS) --path $(DIR) -f jstree -o $(TREES_DIR)/$@ $(DIR)/$*.yang $(Q)sed -r -i 's|data\:image/gif\;base64,R0lGODlhS.*RCAA7|https://osm.etsi.org/images/OSM-logo.png\" width=\"175\" height=\"60|g' $(TREES_DIR)/$@ $(Q)sed -r -i 's|||g' $(TREES_DIR)/$@ @@ -79,8 +89,10 @@ osm.yaml: yang-ietf yang2swagger $(Q)$(JAVA) -jar ${HOME}/.m2/repository/com/mrv/yangtools/swagger-generator-cli/1.1.11/swagger-generator-cli-1.1.11-executable.jar -yang-dir $(MODEL_DIR) -output $(OUT_DIR)/$@ yang-ietf: - $(Q)wget -q https://raw.githubusercontent.com/YangModels/yang/master/standard/ietf/RFC/ietf-yang-types%402013-07-15.yang -O models/yang/ietf-yang-types.yang - $(Q)wget -q https://raw.githubusercontent.com/YangModels/yang/master/standard/ietf/RFC/ietf-inet-types%402013-07-15.yang -O models/yang/ietf-inet-types.yang + $(Q)wget -q https://raw.githubusercontent.com/YangModels/yang/master/standard/ietf/RFC/ietf-yang-types%402013-07-15.yang -O $(MODEL_DIR)/ietf-yang-types.yang + $(Q)wget -q https://raw.githubusercontent.com/YangModels/yang/master/standard/ietf/RFC/ietf-inet-types%402013-07-15.yang -O $(MODEL_DIR)/ietf-inet-types.yang + $(Q)cp $(MODEL_DIR)/ietf-yang-types.yang $(SOL006_MODEL_DIR)/ietf-yang-types.yang + $(Q)cp $(MODEL_DIR)/ietf-inet-types.yang $(SOL006_MODEL_DIR)/ietf-inet-types.yang yang2swagger: $(Q)mkdir -p ${HOME}/.m2 @@ -102,5 +114,10 @@ deps: $(Q)mkdir -p ~/.m2 $(Q)cp -n ~/.m2/settings.xml ~/.m2/settings.xml.orig ; wget -q -O - https://raw.githubusercontent.com/opendaylight/odlparent/master/settings.xml > ~/.m2/settings.xml +sol006_deps: + $(Q)git clone --single-branch --branch v2.6.1 https://forge.etsi.org/rep/nfv/SOL006.git sol006_model + $(Q)patch -p2 < patch/deref_warnings.patch + $(Q)patch -p2 < patch/nested_workaround.patch + clean: - $(Q)rm -rf dist osm_im.egg-info deb deb_dist *.gz osm-imdocs* yang2swagger $(TREES_DIR) + $(Q)rm -rf dist sol006_model osm_im.egg-info deb deb_dist *.gz osm-imdocs* yang2swagger $(TREES_DIR) diff --git a/augments/apply_augments.sh b/augments/apply_augments.sh new file mode 100644 index 0000000..939824e --- /dev/null +++ b/augments/apply_augments.sh @@ -0,0 +1,29 @@ +#!/bin/bash +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Instructions: +# 1. Clone the SOL006 repo: git clone --single-branch --branch v2.6.1 https://forge.etsi.org/rep/nfv/SOL006.git +# 2. Put the etsi-nfv-* files from SOL006 repo on folder named etsi/ +# 3. Set $PYBINDPLUGIN env var to pyangbind plugin folder +# 4. Run this :) + +#VNFD +pyang -Werror --plugindir $PYBINDPLUGIN --path vnfd:etsi -f pybind vnfd/* etsi/etsi-nfv-vnfd.yang > vnfd_extended.py +pyang -Werror -f jstree --path vnfd:etsi -o vnfd.html etsi/etsi-nfv-vnfd.yang vnfd/* + +#NSD +pyang -Werror --plugindir $PYBINDPLUGIN --path nsd:etsi -f pybind nsd/* etsi/etsi-nfv-nsd.yang > nsd_extended.py +pyang -Werror -f jstree --path nsd:etsi -o nsd.html etsi/etsi-nfv-nsd.yang nsd/* \ No newline at end of file diff --git a/augments/common-augments.yang b/augments/common-augments.yang new file mode 100644 index 0000000..7beec89 --- /dev/null +++ b/augments/common-augments.yang @@ -0,0 +1,554 @@ +/* + Copyright 2020 Whitestack LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +module common-augments { + yang-version 1.1; + namespace "urn:etsi:osm:yang:augments"; + prefix "common"; + + typedef parameter-data-type { + type enumeration { + enum STRING; + enum INTEGER; + enum BOOLEAN; + } + } + + grouping primitive-parameter-value { + list parameter { + description + "List of parameters to the configuration primitive."; + key "name"; + leaf name { + description + "Name of the parameter."; + type string; + } + + leaf data-type { + description + "Data type associated with the value."; + type common:parameter-data-type; + } + + leaf value { + description + "Value associated with the name."; + type string; + } + } + } + + grouping primitive-parameter { + leaf name { + description + "Name of the parameter."; + type string; + } + + leaf data-type { + description + "Data type associated with the name."; + type common:parameter-data-type; + } + + leaf mandatory { + description + "Is this field mandatory"; + type boolean; + default false; + } + + leaf default-value { + description + "The default value for this field"; + type string; + } + + leaf parameter-pool { + description + "NSD parameter pool name to use for this parameter"; + type string; + } + + leaf read-only { + description + "The value should be dimmed by the UI. + Only applies to parameters with default values."; + type boolean; + default false; + } + + leaf hidden { + description + "The value should be hidden by the UI. + Only applies to parameters with default values."; + type boolean; + default false; + } + } + + grouping vnfc-relations { + list relation { + description + "List of relations between elements in this descriptor."; + key "name"; + + leaf name { + description + "Name of the relation."; + + type string; + } + + list entities { + description + "List of two elements to be related. + Elements to be related are identified by a pair (id, endpoint). + The relation will relate (id1, endpoint1) to (id2, endpoint2)."; + key "id"; + + leaf id { + description + "A string, reference to the element id in the descriptor. + It could be a vnfd-id or a vdu-id in a VNFD, + or a nsd-id or member-vnf-index in a NSD."; + type string; + } + + leaf endpoint { + description + "Endpoint name defining the relation."; + type string; + } + } + } + } + + grouping vnfc-metrics { + description + "Information about the VNF or VDU metrics"; + list metrics { + description + "List of VNFC related metrics"; + key "name"; + leaf name { + description + "Name of the metric, as defined in the Juju charm."; + type string; + } + } + } + + grouping configuration-method { + choice config-method { + description + "Defines the configuration method for the VNF or VDU."; + case script { + description + "Use custom script for configuring the VNF or VDU. + This script is executed in the context of + Orchestrator (The same system and environment + as the Launchpad)."; + container script { + leaf script-type { + description + "Script type - currently supported - Scripts confirming to Rift CA plugin"; + type enumeration { + enum rift; + } + } + } + } + + case juju { + description + "Configure the VNF or VDU through Juju."; + container juju { + leaf charm { + description + "Juju charm to use with the VNF or VDU."; + type string; + } + leaf proxy { + description + "Is this a proxy charm?"; + type boolean; + default true; + } + } + } + } + } + + grouping vdu-config-access { + + container config-access { + + description + "Indicates the way to access to the xNF or xDU for VCA configuration. + For the moment there is a single way (ssh-access)."; + + container ssh-access { + + description + "If the xNF requires ssh and this parameter is set, SSH keys + will be injected so that VCA can configure the xNF or xDU via ssh."; + + leaf required { + description + "whether ssh access is needed or not"; + type boolean; + default false; + } + + leaf default-user { + description + "Default user for ssh"; + type string; + } + } + } + } + + grouping vnfc-configuration { + description + "Common information in the descriptors for NS, VNF or VDU configuration. + Note: If the NS contains multiple instances of the + same VNF or VDU, each instance could have a different + configuration."; + + uses common:configuration-method; + + list config-primitive { + description + "List of config primitives supported by the + configuration agent for this VNF or VDU."; + key "name"; + + leaf name { + description + "Name of the config primitive."; + type string; + } + + list parameter { + description + "List of parameters to the config primitive."; + key "name"; + uses primitive-parameter; + } + + leaf user-defined-script { + description + "A user defined script. If user defined script is defined, + the script will be executed using bash"; + type string; + } + } + + list initial-config-primitive { + description + "Initial set of configuration primitives."; + key "seq"; + leaf seq { + description + "Sequence number for the configuration primitive."; + type uint64; + } + + choice primitive-type { + case primitive-definition { + leaf name { + description + "Name of the configuration primitive."; + type string; + } + + uses primitive-parameter-value; + + leaf user-defined-script { + description + "A user defined script."; + type string; + } + } + } + } + + list terminate-config-primitive { + description + "Terminate set of configuration primitives."; + key "seq"; + leaf seq { + description + "Sequence number for the configuration primitive."; + type uint64; + } + leaf name { + description + "Name of the configuration primitive."; + type string; + } + + uses primitive-parameter-value; + + leaf user-defined-script { + description + "A user defined script."; + type string; + } + } + uses common:vnfc-metrics; + } + + typedef alarm-severity-type { + description + "An indication of the importance or urgency of the alarm"; + type enumeration { + enum LOW; + enum MODERATE; + enum CRITICAL; + } + } + + typedef alarm-statistic-type { + description + "Statistic type to use to determine threshold crossing + for an alarm."; + type enumeration { + enum AVERAGE; + enum MINIMUM; + enum MAXIMUM; + enum COUNT; + enum SUM; + } + } + + typedef relational-operation-type { + description + "The relational operator used to define whether an alarm, + scaling event, etc. should be triggered in certain scenarios, + such as if the metric statistic goes above or below a specified + value."; + type enumeration { + enum GE; // greater than or equal + enum LE; // less than or equal + enum GT; // greater than + enum LT; // less than + enum EQ; // equal + } + } + + grouping alarm-properties { + leaf name { + description + "A human readable string to identify the alarm"; + type string; + } + + leaf description { + description + "A description of this alarm"; + type string; + } + + leaf vdur-id { + description + "The identifier of the VDUR that the alarm is associated with"; + type string; + } + + container actions { + list ok { + key "url"; + leaf url { + type string; + } + } + + list insufficient-data { + key "url"; + leaf url { + type string; + } + } + + list alarm { + key "url"; + leaf url { + type string; + } + } + } + + leaf repeat { + description + "This flag indicates whether the alarm should be repeatedly emitted + while the associated threshold has been crossed."; + + type boolean; + default true; + } + + leaf enabled { + description + "This flag indicates whether the alarm has been enabled or + disabled."; + + type boolean; + default true; + } + + leaf severity { + description + "A measure of the importance or urgency of the alarm"; + type alarm-severity-type; + } + + leaf statistic { + description + "The type of metric statistic that is tracked by this alarm"; + type alarm-statistic-type; + } + + leaf operation { + description + "The relational operator used to define whether an alarm should be + triggered in certain scenarios, such as if the metric statistic + goes above or below a specified value."; + type relational-operation-type; + } + + leaf value { + description + "This value defines the threshold that, if crossed, will trigger + the alarm."; + type decimal64 { + fraction-digits 4; + } + } + + leaf period { + description + "The period defines the length of time (seconds) that the metric + data are collected over in oreder to evaluate the chosen + statistic."; + type uint32; + } + + leaf evaluations { + description + "Defines the length of time (seconds) in which metric data are + collected in order to evaluate the chosen statistic."; + type uint32; + } + } + + grouping virtual-interface { + container virtual-interface { + description + "Container for the virtual interface properties"; + + leaf type { + description + "Specifies the type of virtual interface + between VM and host. + PARAVIRT : Use the default paravirtualized interface for the VIM (virtio, vmxnet3, etc.). + VIRTIO : Deprecated! Use the traditional VIRTIO interface. + PCI-PASSTHROUGH : Use PCI-PASSTHROUGH interface. + SR-IOV : Use SR-IOV interface. + E1000 : Emulate E1000 interface. + RTL8139 : Emulate RTL8139 interface. + PCNET : Emulate PCNET interface. + OM-MGMT : Deprecated! Use PARAVIRT instead and set the VNF management interface at vnfd:mgmt-interface:cp"; + + type enumeration { + enum PARAVIRT; + enum OM-MGMT; + enum PCI-PASSTHROUGH; + enum SR-IOV; + enum VIRTIO; + enum E1000; + enum RTL8139; + enum PCNET; + } + default "PARAVIRT"; + } + + leaf vpci { + description + "Specifies the virtual PCI address. Expressed in + the following format dddd:dd:dd.d. For example + 0000:00:12.0. This information can be used to + pass as metadata during the VM creation."; + type string; + } + + leaf bandwidth { + description + "Aggregate bandwidth of the NIC."; + type uint64; + } + } + } + + grouping description { + leaf description { + type string; + } + } + + typedef scaling-trigger { + type enumeration { + enum pre-scale-in { + value 1; + } + enum post-scale-in { + value 2; + } + enum pre-scale-out { + value 3; + } + enum post-scale-out { + value 4; + } + } + } + + typedef scaling-policy-type { + type enumeration { + enum manual { + value 1; + } + enum automatic { + value 2; + } + } + } + + typedef scaling-criteria-operation { + type enumeration { + enum AND { + value 1; + } + enum OR { + value 2; + } + } + } +} \ No newline at end of file diff --git a/augments/examples/alternative_image_new.yaml b/augments/examples/alternative_image_new.yaml new file mode 100644 index 0000000..e3b6b01 --- /dev/null +++ b/augments/examples/alternative_image_new.yaml @@ -0,0 +1,76 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +vnfd: + - id: hackfest_basic-vnf + product-name: hackfest_basic-vnf + description: A basic VNF descriptor w/ one VDU + version: "1.0" + mgmt-cp: vnf-cp0 + + virtual-compute-desc: + - id: cirros-compute + virtual-cpu: + num-virtual-cpu: 1 + virtual-memory: + size: 1 # Memory size in GB + + virtual-storage-desc: + - id: cirros-storage + size-of-storage: 10 + + sw-image-desc: + - id: ubuntu1604 + name: ubuntu1604 + checksum: + hash: # Mandatory? + - id: ubuntu1604-aws + name: ubuntu1604-aws + image: ubuntu/images/hvm-ssd/ubuntu-artful-17.10-amd64-server-20180509 + vim-type: aws + checksum: + hash: # Mandatory? + + vdu: + - id: hackfest_basic-VM + name: hackfest_basic-VM + virtual-compute-desc: cirros-compute + virtual-storage-desc: cirros-storage + sw-image-desc: ubuntu1604 + alternative-images: ubuntu1604-aws + int-cpd: + - id: eth0-int + virtual-network-interface-requirement: + - name: vdu-eth0 + type: EXTERNAL # Remove (redundant) + virtual-interface: + type: PARAVIRT + + df: + - id: cirros_default + vdu-profile: + - id: hackfest_basic-VM + min-number-of-instance: 1 + instantiation-level: + - id: default + vdu-level: + - id: hackfest_basic-VM + number-of-instances: 1 + + exp-cpd: + - id: vnf-cp0 + int-cpd: # Connection to int-cpd + vdu-id: hackfest_basic-VM + cpd: eth0-int diff --git a/augments/examples/alternative_image_old.yaml b/augments/examples/alternative_image_old.yaml new file mode 100644 index 0000000..db06e75 --- /dev/null +++ b/augments/examples/alternative_image_old.yaml @@ -0,0 +1,46 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +vnfd:vnfd-catalog: + vnfd: + - id: hackfest_basic-vnf + name: hackfest_basic-vnf + short-name: hackfest_basic-vnf + version: "1.0" + description: A basic VNF descriptor w/ one VDU + logo: osm.png + connection-point: + - name: vnf-cp0 + + vdu: + - id: hackfest_basic-VM + name: hackfest_basic-VM + image: ubuntu1604 + alternative-images: + - vim-type: aws + image: ubuntu/images/hvm-ssd/ubuntu-artful-17.10-amd64-server-20180509 + count: "1" + vm-flavor: + vcpu-count: "1" + memory-mb: "1024" + storage-gb: "10" + interface: + - name: vdu-eth0 + type: EXTERNAL + virtual-interface: + type: PARAVIRT + external-connection-point-ref: vnf-cp0 + mgmt-interface: + cp: vnf-cp0 diff --git a/augments/examples/cirros_nsd_new.yaml b/augments/examples/cirros_nsd_new.yaml new file mode 100644 index 0000000..5c75b5e --- /dev/null +++ b/augments/examples/cirros_nsd_new.yaml @@ -0,0 +1,43 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +nsd:nsd: + - id: cirros_2vnf_nsd + name: cirros_2vnf_nsd + description: Generated by OSM package generator + designer: OSM + version: "1.0" + vnfd-id: + - cirros_vnfd + + virtual-link-desc: + - id: cirros_2vnf_nsd_vld1 + mgmt-network: "true" + + df: + - id: cirros_DF + vnf-profile: + - id: cirros_vnf1 # member-vnf-index-ref: 1 + vnfd-id: cirros_vnfd + virtual-link-connectivity: + - virtual-link-profile-id: cirros_2vnf_nsd_vld1 + constituent-cpd-id: + - constituent-base-element-id: cirros_vnf1 + constituent-cpd-id: eth0-ext + - constituent-base-element-id: cirros_vnf2 + constituent-cpd-id: eth0-ext + - id: cirros_vnf2 # member-vnf-index-ref: 2 + vnfd-id: cirros_vnfd + diff --git a/augments/examples/cirros_nsd_old.yaml b/augments/examples/cirros_nsd_old.yaml new file mode 100644 index 0000000..dcc832b --- /dev/null +++ b/augments/examples/cirros_nsd_old.yaml @@ -0,0 +1,59 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +nsd:nsd-catalog: + nsd: + - id: cirros_2vnf_nsd + name: cirros_2vnf_ns + short-name: cirros_2vnf_ns + description: Generated by OSM pacakage generator + vendor: OSM + version: "1.0" + + # Place the logo as png in icons directory and provide the name here + logo: osm_2x.png + + # Specify the VNFDs that are part of this NSD + constituent-vnfd: + # The member-vnf-index needs to be unique, starting from 1 + # vnfd-id-ref is the id of the VNFD + # Multiple constituent VNFDs can be specified + - member-vnf-index: 1 + vnfd-id-ref: cirros_vnfd + - member-vnf-index: 2 + vnfd-id-ref: cirros_vnfd + + vld: + # Networks for the VNFs + - id: cirros_2vnf_nsd_vld1 + name: cirros_2vnf_nsd_vld1 + short-name: cirros_2vnf_nsd_vld1 + type: ELAN + mgmt-network: "true" + # vim-network-name: + # provider-network: + # overlay-type: VLAN + # segmentation_id: + vnfd-connection-point-ref: + # Specify the constituent VNFs + # member-vnf-index-ref - entry from constituent vnf + # vnfd-id-ref - VNFD id + # vnfd-connection-point-ref - connection point name in the VNFD + - member-vnf-index-ref: 1 + vnfd-id-ref: cirros_vnfd + vnfd-connection-point-ref: eth0 + - member-vnf-index-ref: 2 + vnfd-id-ref: cirros_vnfd + vnfd-connection-point-ref: eth0 diff --git a/augments/examples/cirros_vnfd_new.yaml b/augments/examples/cirros_vnfd_new.yaml new file mode 100644 index 0000000..21a6149 --- /dev/null +++ b/augments/examples/cirros_vnfd_new.yaml @@ -0,0 +1,72 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +vnfd: + - id: cirros_vnfd + product-name: cirros_vnf + description: Simple VNF example with a cirros + provider: OSM + version: "1.0" + mgmt-cp: eth0-int + + virtual-compute-desc: + - id: cirros-compute + virtual-cpu: + num-virtual-cpu: 1 + virtual-memory: + size: 0.256 # Memory size in GB + + virtual-storage-desc: + - id: cirros-storage + size-of-storage: 2 + + sw-image-desc: + - id: cirros034 + name: cirros034 + checksum: + hash: # Mandatory? + + vdu: + - id: cirros_vnfd-VM + name: cirros_vnfd-VM + description: cirros_vnfd-VM + virtual-compute-desc: cirros-compute + virtual-storage-desc: cirros-storage + sw-image-desc: cirros034 + int-cpd: + - id: eth0-int + virtual-network-interface-requirement: + - name: eth0 + virtual-interface: + type: VIRTIO + bandwidth: "0" + vpci: 0000:00:0a.0 + + df: + - id: cirros_default + vdu-profile: + - id: cirros_vnfd-VM + min-number-of-instance: 1 + instantiation-level: + - id: default + vdu-level: + - id: cirros_vnfd-VM + number-of-instances: 1 + + exp-cpd: + - id: eth0-ext + int-cpd: # Connection to int-cpd + vdu-id: cirros_vnfd-VM + cpd: eth0-int diff --git a/augments/examples/cirros_vnfd_old.yaml b/augments/examples/cirros_vnfd_old.yaml new file mode 100644 index 0000000..fbfd5ee --- /dev/null +++ b/augments/examples/cirros_vnfd_old.yaml @@ -0,0 +1,63 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +vnfd:vnfd-catalog: + vnfd: + - id: cirros_vnfd + name: cirros_vnf + short-name: cirros_vnf + description: Simple VNF example with a cirros + vendor: OSM + version: "1.0" + + # Place the logo as png in icons directory and provide the name here + logo: cirros-64.png + + # Management interface + mgmt-interface: + cp: eth0 + + # Atleast one VDU need to be specified + vdu: + - id: cirros_vnfd-VM + name: cirros_vnfd-VM + description: cirros_vnfd-VM + count: 1 + + # Flavour of the VM to be instantiated for the VDU + # flavor below can fit into m1.micro + vm-flavor: + vcpu-count: 1 + memory-mb: 256 + storage-gb: 2 + + # Image/checksum or image including the full path + image: cirros034 + #checksum: + + interface: + # Specify the external interfaces + # There can be multiple interfaces defined + - name: eth0 + type: EXTERNAL + virtual-interface: + type: VIRTIO + bandwidth: "0" + vpci: 0000:00:0a.0 + external-connection-point-ref: eth0 + + connection-point: + - name: eth0 + type: VPORT diff --git a/augments/examples/epa_advanced_new.yaml b/augments/examples/epa_advanced_new.yaml new file mode 100644 index 0000000..e96575c --- /dev/null +++ b/augments/examples/epa_advanced_new.yaml @@ -0,0 +1,42 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +vnfd: + - id: epa-advanced-vnfd + ... + + virtual-compute-desc: + - id: epa-compute + virtual-cpu: + ... + pinning: # Generic key/value pairs + policy: static + thread-policy: PREFER + virtual-memory: + ... + mempage-size: LARGE + numa-enabled: true # Replaces NUMA aware/unaware choice + numa-node-policy: + mem-policy: STRICT + node: + - id: "1" + paired-threads: + num-paired-threads: "17" + node-cnt: "1" + + vdu: + - id: epa-vdu + virtual-compute-desc: epa-compute + ... diff --git a/augments/examples/epa_advanced_old.yaml b/augments/examples/epa_advanced_old.yaml new file mode 100644 index 0000000..5faa686 --- /dev/null +++ b/augments/examples/epa_advanced_old.yaml @@ -0,0 +1,161 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +vnfd-catalog: + vnfd: + - connection-point: + - name: eth0 + type: VPORT + - name: xe0 + type: VPORT + - name: xe1 + type: VPORT + - name: xe2 + type: VPORT + - name: xe3 + type: VPORT + - name: xe4 + type: VPORT + - name: xe5 + type: VPORT + - name: xe6 + type: VPORT + - name: xe7 + type: VPORT + description: vBNG VNF for performance tests, with 34 HTs + id: vbng34 + logo: intel.png + mgmt-interface: + cp: eth0 + name: vbng34 + service-function-chain: UNAWARE + short-name: vbng34 + vdu: + - count: "1" + description: vbng34-VM + +# Elemento de interés + + guest-epa: + cpu-pinning-policy: DEDICATED + cpu-thread-pinning-policy: PREFER + mempage-size: LARGE + numa-node-policy: + mem-policy: STRICT + node: + - id: "0" + paired-threads: + num-paired-threads: "17" + node-cnt: "1" + +##################### + + + host-epa: + om-cpu-feature: + - feature: 64b + - feature: iommu + - feature: lps + - feature: tlbps + - feature: hwsv + - feature: dioc + - feature: ht + om-cpu-model-string: Intel(R) Xeon(R) CPU E5-4620 0 @ 2.20GHz + hypervisor-epa: + type: REQUIRE_KVM + version: 10002|12001|2.6.32-358.el6.x86_64 + id: vbng34-VM + image: intel_vbng34 + interface: + - external-connection-point-ref: eth0 + name: eth0 + position: "1" + type: EXTERNAL + virtual-interface: + bandwidth: "1000000" + type: PARAVIRT + vpci: 0000:00:0a.0 + - external-connection-point-ref: xe0 + name: xe0 + position: "2" + type: EXTERNAL + virtual-interface: + bandwidth: "10000000000" + type: PCI-PASSTHROUGH + vpci: "0000:00:10.0" + - external-connection-point-ref: xe1 + name: xe1 + position: "3" + type: EXTERNAL + virtual-interface: + bandwidth: "10000000000" + type: PCI-PASSTHROUGH + vpci: "0000:00:11.0" + - external-connection-point-ref: xe2 + name: xe2 + position: "4" + type: EXTERNAL + virtual-interface: + bandwidth: "10000000000" + type: PCI-PASSTHROUGH + vpci: "0000:00:12.0" + - external-connection-point-ref: xe3 + name: xe3 + position: "5" + type: EXTERNAL + virtual-interface: + bandwidth: "10000000000" + type: PCI-PASSTHROUGH + vpci: "0000:00:13.0" + - external-connection-point-ref: xe4 + name: xe4 + position: "6" + type: EXTERNAL + virtual-interface: + bandwidth: "10000000000" + type: PCI-PASSTHROUGH + vpci: "0000:00:14.0" + - external-connection-point-ref: xe5 + name: xe5 + position: "7" + type: EXTERNAL + virtual-interface: + bandwidth: "10000000000" + type: PCI-PASSTHROUGH + vpci: "0000:00:15.0" + - external-connection-point-ref: xe6 + name: xe6 + position: "8" + type: EXTERNAL + virtual-interface: + bandwidth: "10000000000" + type: PCI-PASSTHROUGH + vpci: "0000:00:16.0" + - external-connection-point-ref: xe7 + name: xe7 + position: "9" + type: EXTERNAL + virtual-interface: + bandwidth: "10000000000" + type: PCI-PASSTHROUGH + vpci: "0000:00:17.0" + name: vbng34-VM + supplemental-boot-data: + boot-data-drive: "false" + vm-flavor: + memory-mb: "32768" + storage-gb: "15" + vendor: Intel + version: "1.0" diff --git a/augments/examples/epa_new.yaml b/augments/examples/epa_new.yaml new file mode 100644 index 0000000..9449395 --- /dev/null +++ b/augments/examples/epa_new.yaml @@ -0,0 +1,40 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +vnfd: + - id: epa-vnfd + ... + + virtual-compute-desc: + - id: epa-compute + virtual-cpu: + ... + pinning: # Generic key/value pairs + policy: static + thread-policy: PREFER + virtual-memory: + ... + mempage-size: LARGE + numa-enabled: true # Replaces NUMA aware/unaware choice + numa-node-policy: + mem-policy: STRICT + node: + - id: "1" + node-cnt: "1" + + vdu: + - id: epa-vdu + virtual-compute-desc: epa-compute + ... diff --git a/augments/examples/epa_old.yaml b/augments/examples/epa_old.yaml new file mode 100644 index 0000000..12b0b4d --- /dev/null +++ b/augments/examples/epa_old.yaml @@ -0,0 +1,36 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +vnfd:vnfd-catalog: + vnfd: + - id: + ... + + vdu: + - id: dataVM + name: dataVM + count: "1" + description: "" + guest-epa: + cpu-pinning-policy: DEDICATED + cpu-thread-pinning-policy: PREFER + mempage-size: LARGE + numa-node-policy: + mem-policy: STRICT + node: + - id: "1" + node-cnt: "1" + ... + diff --git a/augments/examples/magma_knf_new.yaml b/augments/examples/magma_knf_new.yaml new file mode 100644 index 0000000..f4ed191 --- /dev/null +++ b/augments/examples/magma_knf_new.yaml @@ -0,0 +1,43 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +vnfd: + - id: fb_magma_knf + product-name: fb_magma_knf + description: KNF with KDU using a helm-chart for Facebook magma orc8r + provider: ATOS + version: "1.0" + mgmt-cp: mgmt + + ext-cpd: + - id: mgmt-ext + k8s-cluster-net: mgmtnet + + k8s-cluster: + nets: + - id: mgmtnet + + kdu: + - name: orc8r + + kdu-model: + - id: orc8r-model + kdu-model-type: helm-chart + kdu-model-locator: magma/orc8r + + df: + kdu-profile: + name: orc8r + kdu-model-id: orc8r-model \ No newline at end of file diff --git a/augments/examples/magma_knf_old.yaml b/augments/examples/magma_knf_old.yaml new file mode 100644 index 0000000..feefeba --- /dev/null +++ b/augments/examples/magma_knf_old.yaml @@ -0,0 +1,35 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +vnfd-catalog: + schema-version: "3.0" + vnfd: + - id: fb_magma_knf + name: fb_magma_knf + short-name: fb_magma_knf + description: KNF with KDU using a helm-chart for Facebook magma orc8r + vendor: ATOS + version: "1.0" + mgmt-interface: + cp: mgmt + connection-point: + - name: mgmt + k8s-cluster: + nets: + - id: mgmtnet + external-connection-point-ref: mgmt + kdu: + - name: orc8r + helm-chart: magma/orc8r diff --git a/augments/examples/vepc_new.yaml b/augments/examples/vepc_new.yaml new file mode 100644 index 0000000..4d1c863 --- /dev/null +++ b/augments/examples/vepc_new.yaml @@ -0,0 +1,230 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +vnfd: + - id: vEPC_vnfd + product-name: vEPC_vnfd + description: Generated by OSM package generator + provider: OSM_VNFONB_TF + version: "1.0" + mgmt-cp: spgwmme-mgmt-int #Simplified from mgmt-interface + + virtual-compute-desc: + - id: spgwmme-compute + virtual-cpu: + num-virtual-cpu: 2 + virtual-memory: + size: 4 # Memory size in GB + - id: hss-compute + virtual-cpu: + num-virtual-cpu: 1 + virtual-memory: + size: 2 # Memory size in GB + + virtual-storage-desc: + - id: spgwmme-storage + size-of-storage: 10 + - id: hss-storage + size-of-storage: 10 + + sw-image-desc: + - id: nextepc-spgwmme-base + name: nextepc-spgwmme-base + checksum: + hash: # Mandatory? + - id: nextepc-hss-bas + name: nextepc-hss-bas + checksum: + hash: # Mandatory? + + vdu: + - id: spgwmme + name: spgwmme + description: spgwmme + cloud-init-file: spgwmme-init + virtual-compute-desc: spgwmme-compute + virtual-storage-desc: spgwmme-storage + sw-image-desc: nextepc-spgwmme-base + int-cpd: + - id: spgwmme-mgmt-int + virtual-network-interface-requirement: + - name: eth0 + virtual-interface: + type: PARAVIRT + - id: spgwmme-s1-int + virtual-network-interface-requirement: + - name: eth1 + virtual-interface: + type: PARAVIRT + - id: spgwmme-sgi-int + virtual-network-interface-requirement: + - name: eth2 + virtual-interface: + type: PARAVIRT + - id: spgwmme-s6a-int + int-virtual-link-desc: s6a # Connection to VLD! + virtual-network-interface-requirement: + - id: eth3 + virtual-interface: + type: PARAVIRT + + - id: hss + name: hss + description: hss + cloud-init-file: hss-init + virtual-compute-desc: hss-compute + virtual-storage-desc: hss-storage + sw-image-desc: nextepc-hss-bas + int-cpd: + - id: hss-mgmt-int + virtual-network-interface-requirement: + - name: eth0 + virtual-interface: + type: PARAVIRT + - id: hss-s6a-int + int-virtual-link-desc: s6a # Connection to VLD! + virtual-network-interface-requirement: + - id: eth1 + virtual-interface: + type: PARAVIRT + + df: + - id: vepc_default + vnf-configuration-id: vnf-configuration-example + vdu-profile: + - id: spgwmme + min-number-of-instance: 1 + - id: hss + min-number-of-instance: 1 + vdu-configuration-id: vdu-configuration-example + instantiation-level: + - id: default + vdu-level: + - id: spgwmme + number-of-instances: 1 + - id: hss + number-of-instances: 1 + virtual-link-profile: + - id: s6a + flavour: + virtual-link-protocol-data: + l3-protocol-data: + name: s6a + description: s6a network + ip-version: ipv4 + cidr: 10.0.6.0/24 + dhcp-enabled: true + + monitoring-parameter: + - id: "spgw_cpu_util" + name: "spgw_cpu_util" + performance-metric: "cpu_load" + collection-period: 123456 + + aggregation-type: AVERAGE # Not included in augments + vdu-monitoring-param: # Not included in augments + vdu-ref: "spgwmme" # Not included in augments + vdu-monitoring-param-ref: "spgw_cpu_util" # Not included in augments + - id: "spgw_memory_util" + name: "spgw_memory_util" + aggregation-type: AVERAGE # Not included in augments + vdu-monitoring-param: # Not included in augments + vdu-ref: "spgwmme" # Not included in augments + vdu-monitoring-param-ref: "spgw_memory_util" # Not included in augments + + vdu-configuration: + - id: vdu-configuration-example + initial-config-primitive: + - seq: "1" + name: config + parameter: + - name: ssh-hostname + value: + - name: ssh-username + value: ubuntu + - name: ssh-password + value: + - seq: "2" + name: configure-hss + parameter: + - name: spgw-ip + data-type: STRING + value: + - name: hss-ip + data-type: STRING + value: + - seq: "3" + name: restart-hss + juju: + charm: hsscharm + + vnf-configuration: + - id: vnf-configuration-example + initial-config-primitive: + - seq: "1" + name: config + parameter: + - name: ssh-hostname + value: + - name: ssh-username + value: ubuntu + - name: ssh-password + value: + - seq: "2" + name: configure-spgw + parameter: + - name: spgw-ip + data-type: STRING + value: + - name: hss-ip + data-type: STRING + value: + - seq: "3" + name: restart-spgw + config-primitive: + - name: add-route + parameter: + - name: external-prefix + data-type: STRING + default-value: "8.8.8.8/32" + - name: next-hop + data-type: STRING + default-value: "192.168.2.1" + juju: + charm: spgwcharm + + int-virtual-link-desc: + - id: s6a + + exp-cpd: + # SPGWMME + - id: spgwmme-mgmt-ext + int-cpd: # Connection to int-cpd + vdu-id: spgwmme + cpd: spgwmme-mgmt-int + - id: spgwmme-s1-ext + int-cpd: # Connection to int-cpd + vdu-id: spgwmme + cpd: spgwmme-mgmt-int + - id: spgwmme-sgi-ext + int-cpd: # Connection to int-cpd + vdu-id: spgwmme + cpd: spgwmme-mgmt-int + + # HSS + - id: hss-mgmt-ext + int-cpd: # Connection to int-cpd + vdu-id: spgwmme + cpd: spgwmme-mgmt-int diff --git a/augments/examples/vepc_nsd_new.yaml b/augments/examples/vepc_nsd_new.yaml new file mode 100644 index 0000000..8ea1fe1 --- /dev/null +++ b/augments/examples/vepc_nsd_new.yaml @@ -0,0 +1,52 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +nsd: + - id: vEPC_nsd + name: vEPC_nsd + description: Generated by OSM package generator + designer: OSM_VNFONB_TF + version: "1.0" + vnfd-id: + - vEPC_vnfd + + virtual-link-desc: + - id: management + mgmt-network: "true" # Needed? + - id: s1 + vim-network-name: s1 + - id: sgi + vim-network-name: sgi + + df: + - id: vEPC_DF + vnf-profile: + - id: vEPC-VNF + vnfd-id: vEPC_vnfd + virtual-link-connectivity: + - virtual-link-profile-id: management + constituent-cpd-id: + - constituent-base-element-id: vEPC_vnfd + constituent-cpd-id: spgwmme-mgmt + - constituent-base-element-id: vEPC_vnfd + constituent-cpd-id: hss-mgmt + - virtual-link-profile-id: s1 + constituent-cpd-id: + - constituent-base-element-id: vEPC_vnfd + constituent-cpd-id: spgwmme-s1 + - virtual-link-profile-id: sgi + constituent-cpd-id: + - constituent-base-element-id: vEPC_vnfd + constituent-cpd-id: spgwmme-sgi diff --git a/augments/examples/vepc_nsd_old.yaml b/augments/examples/vepc_nsd_old.yaml new file mode 100644 index 0000000..2306936 --- /dev/null +++ b/augments/examples/vepc_nsd_old.yaml @@ -0,0 +1,62 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +nsd:nsd-catalog: + nsd: + - id: vEPC_nsd + name: vEPC_nsd + short-name: vEPC_nsd # Deprecated + description: Generated by OSM package generator + vendor: OSM_VNFONB_TF # To designer + version: "1.0" + constituent-vnfd: + - member-vnf-index: 1 + vnfd-id-ref: vEPC_vnfd + + vld: + - id: management + name: management # Deprecated + short-name: management # Deprecated + type: ELAN # Deprecated + mgmt-network: "true" + vim-network-name: osm-ext + + vnfd-connection-point-ref: + - member-vnf-index-ref: 1 + vnfd-id-ref: vEPC_vnfd + vnfd-connection-point-ref: spgwmme-mgmt + - member-vnf-index-ref: 1 + vnfd-id-ref: vEPC_vnfd + vnfd-connection-point-ref: hss-mgmt + - id: s1 + name: s1 + short-name: s1 + type: ELAN + vim-network-name: s1 + vnfd-connection-point-ref: + - member-vnf-index-ref: 1 + vnfd-id-ref: vEPC_vnfd + vnfd-connection-point-ref: spgwmme-s1 + ip-address: 192.168.0.11 + - id: sgi + name: sgi + short-name: sgi + type: ELAN + vim-network-name: sgi + vnfd-connection-point-ref: + - member-vnf-index-ref: 1 + vnfd-id-ref: vEPC_vnfd + vnfd-connection-point-ref: spgwmme-sgi + ip-address: 192.168.2.11 diff --git a/augments/examples/vepc_old.yaml b/augments/examples/vepc_old.yaml new file mode 100644 index 0000000..d816967 --- /dev/null +++ b/augments/examples/vepc_old.yaml @@ -0,0 +1,182 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +vnfd:vnfd-catalog: + vnfd: + - id: vEPC_vnfd + name: vEPC_vnfd # To product-name + short-name: vEPC_vnfd # Deprecated + description: Generated by OSM package generator + vendor: OSM_VNFONB_TF # To do provider + version: "1.0" + mgmt-interface: # To mgmt-cp + cp: spgwmme-mgmt + ip-profiles: # To deployment flavour (DF) + - name: s6a + description: s6a network + ip-profile-params: + ip-version: ipv4 + subnet-address: 10.0.6.0/24 + dhcp-params: + enabled: true + vdu: + - id: spgwmme + name: spgwmme + description: spgwmme + count: 1 # To DF vdu-profile or instantiation-level + vm-flavor: + vcpu-count: 2 + memory-mb: 4096 + storage-gb: 10 + image: "nextepc-spgwmme-base" + cloud-init-file: spgwmme-init + interface: + - name: eth0 + type: EXTERNAL + virtual-interface: + type: PARAVIRT + external-connection-point-ref: spgwmme-mgmt + - name: eth1 + type: EXTERNAL + virtual-interface: + type: PARAVIRT + external-connection-point-ref: spgwmme-s1 + - name: eth2 + type: EXTERNAL + virtual-interface: + type: PARAVIRT + external-connection-point-ref: spgwmme-sgi + - name: eth3 + type: INTERNAL + virtual-interface: + type: PARAVIRT + internal-connection-point-ref: spgwmme-s6a + internal-connection-point: + - id: spgwmme-s6a + name: spgwmme-s6a + type: VPORT + monitoring-param: # To be removed (feature 8157) + - id: "spgw_cpu_util" + nfvi-metric: "cpu_utilization" + - id: "spgw_memory_util" + nfvi-metric: "average_memory_utilization" + - id: hss + name: hss + description: hss + count: 1 + vm-flavor: + vcpu-count: 1 + memory-mb: 2048 + storage-gb: 10 + image: "nextepc-hss-base" + cloud-init-file: hss-init + interface: + - name: eth0 + type: EXTERNAL + virtual-interface: + type: PARAVIRT + mgmt-interface: true + external-connection-point-ref: hss-mgmt + - name: eth1 + type: INTERNAL + virtual-interface: + type: PARAVIRT + internal-connection-point-ref: hss-s6a + internal-connection-point: + - id: hss-s6a + name: hss-s6a + type: VPORT + vdu-configuration: + initial-config-primitive: + - seq: "1" + name: config + parameter: + - name: ssh-hostname + value: + - name: ssh-username + value: ubuntu + - name: ssh-password + value: + - seq: "2" + name: configure-hss + parameter: + - name: spgw-ip + data-type: STRING + value: + - name: hss-ip + data-type: STRING + value: + - seq: "3" + name: restart-hss + juju: + charm: hsscharm + internal-vld: + - id: s6a + ip-profile-ref: s6a + internal-connection-point: + - id-ref: spgwmme-s6a + - id-ref: hss-s6a + name: s6a + connection-point: + - name: spgwmme-mgmt + - name: spgwmme-s1 + - name: spgwmme-sgi + - name: hss-mgmt + vnf-configuration: + initial-config-primitive: + - seq: "1" + name: config + parameter: + - name: ssh-hostname + value: + - name: ssh-username + value: ubuntu + - name: ssh-password + value: + - seq: "2" + name: configure-spgw + parameter: + - name: spgw-ip + data-type: STRING + value: + - name: hss-ip + data-type: STRING + value: + - seq: "3" + name: restart-spgw + config-primitive: + - name: add-route + parameter: + - name: external-prefix + data-type: STRING + default-value: "8.8.8.8/32" + - name: next-hop + data-type: STRING + default-value: "192.168.2.1" + juju: + charm: spgwcharm + monitoring-param: + - id: "spgw_cpu_util" + name: "spgw_cpu_util" + aggregation-type: AVERAGE + vdu-monitoring-param: + vdu-ref: "spgwmme" + vdu-monitoring-param-ref: "spgw_cpu_util" + - id: "spgw_memory_util" + name: "spgw_memory_util" + aggregation-type: AVERAGE + vdu-monitoring-param: + vdu-ref: "spgwmme" + vdu-monitoring-param-ref: "spgw_memory_util" diff --git a/augments/examples/vnfd_new.yaml b/augments/examples/vnfd_new.yaml new file mode 100644 index 0000000..f4e82a9 --- /dev/null +++ b/augments/examples/vnfd_new.yaml @@ -0,0 +1,66 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Using new SOL006-based OSM model + +vnfd: + id: vnfd + mgmt-cp: vnf-mgmt + + ext-cpd: + - id: vnf-mgmt-ext + int-cpd: + vdu-id: mgmtVM + cpd: vnf-mgmt-int + - id: vnf-data-ext + int-cpd: + vdu-id: dataVM + cpd: vnf-data-int + + int-virtual-link-desc: + - id: internal + + vdu: + - id: mgmtVM + int-cpd: + - id: vnf-mgmt-int + virtual-network-interface-requirement: + - name: mgmtVM-eth0 + position: "1" + virtual-interface: + type: VIRTIO + - id: mgmtVM-internal + int-virtual-link-desc: internal + virtual-network-interface-requirement: + - name: mgmtVM-eth1 + position: "2" + virtual-interface: + type: VIRTIO + + - id: dataVM + int-cpd: + - id: dataVM-internal + int-virtual-link-desc: internal + virtual-network-interface-requirement: + - name: dataVM-eth0 + position: "1" + virtual-interface: + type: VIRTIO + - id: vnf-data-int + virtual-network-interface-requirement: + - name: dataVM-xe0 + position: "2" + virtual-interface: + type: VIRTIO diff --git a/augments/examples/vnfd_old.yaml b/augments/examples/vnfd_old.yaml new file mode 100644 index 0000000..587cb89 --- /dev/null +++ b/augments/examples/vnfd_old.yaml @@ -0,0 +1,87 @@ +# Copyright 2020 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# Using old OSM IM model + +vnfd:vnfd-catalog: + vnfd: + id: vnfd + + mgmt-interface: + cp: vnf-mgmt + + connection-point: + - id: vnf-mgmt + name: vnf-mgmt + short-name: vnf-mgmt + type: VPORT + - id: vnf-data + name: vnf-data + short-name: vnf-data + type: VPORT + + internal-vld: + - id: internal + name: internal + short-name: internal + type: ELAN + internal-connection-point: + - id-ref: mgmtVM-internal + - id-ref: dataVM-internal + + vdu: + - id: mgmtVM + + interface: + - name: mgmtVM-eth0 + position: "1" + type: EXTERNAL + virtual-interface: + type: VIRTIO + external-connection-point-ref: vnf-mgmt + - name: mgmtVM-eth1 + position: "2" + type: INTERNAL + virtual-interface: + type: VIRTIO + internal-connection-point-ref: mgmtVM-internal + + internal-connection-point: + - id: mgmtVM-internal + name: mgmtVM-internal + short-name: mgmtVM-internal + type: VPORT + + - id: dataVM + + interface: + - name: dataVM-eth0 + position: "1" + type: INTERNAL + virtual-interface: + type: VIRTIO + internal-connection-point-ref: dataVM-internal + - name: dataVM-xe0 + position: "2" + type: EXTERNAL + virtual-interface: + type: VIRTIO + external-connection-point-ref: vnf-data + + internal-connection-point: + - id: dataVM-internal + name: dataVM-internal + short-name: dataVM-internal + type: VPORT diff --git a/augments/nsd.html b/augments/nsd.html new file mode 100644 index 0000000..a2a51d2 --- /dev/null +++ b/augments/nsd.html @@ -0,0 +1,10555 @@ + + + etsi-nfv-nsd ip-profiles ns-configuration ns-various ns-vld + + + + + + + + + +
+
+

Module: etsi-nfv-nsd, Namespace: + urn:etsi:nfv:yang:etsi-nfv-nsd, Prefix: + nsd

+

Module: ip-profiles, Namespace: + urn:etsi:osm:yang:augments, Prefix: + ip-profiles

+

Module: ns-configuration, Namespace: + urn:etsi:osm:yang:augments:ns-configuration, Prefix: + ns-configuration

+

Module: ns-various, Namespace: + urn:etsi:osm:yang:augments:ns-various, Prefix: + ns-various

+

Module: ns-vld, Namespace: + urn:etsi:osm:yang:augments:ns-vld, Prefix: + ns-vld

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Element + [+]Expand all + [-]Collapse all + SchemaTypeFlagsOptsStatusPath
+
+   + + etsi-nfv-nsd +
+
module +
+
+   + + nsd +
+
containerconfigcurrent/nsd:nsd
+
+   + + vnfd[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:id +
+
+   + provider +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:provider +
+
+   + product-name +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:product-name +
+
+   + software-version +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:software-version +
+
+   + version +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:version +
+
+   + product-info-name +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:product-info-name +
+
+   + product-info-description +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:product-info-description +
+
+   + vnfm-info +
+
leaf-liststringconfig*current/nsd:nsd/nsd:vnfd/nsd:vnfm-info +
+
+   + localization-language +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:localization-language +
+
+   + default-localization-language +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:default-localization-language +
+
+   + + vdu[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:vdu
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:id +
+
+   + name +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:name +
+
+   + description +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:description +
+
+   + + int-cpd[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd
+
+   + int-virtual-link-desc +
+
leafleafrefconfig?current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:int-virtual-link-desc +
+
+   + bitrate-requirement +
+
leafuint64config?current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:bitrate-requirement +
+
+   + + virtual-network-interface-requirement[name] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:virtual-network-interface-requirement
+
+   + name +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:virtual-network-interface-requirement/nsd:name +
+
+   + description +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:virtual-network-interface-requirement/nsd:description +
+
+   + support-mandatory +
+
leafbooleanconfig?current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:virtual-network-interface-requirement/nsd:support-mandatory +
+
+   + + network-interface-requirements[key] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:virtual-network-interface-requirement/nsd:network-interface-requirements
+
+   + key +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:virtual-network-interface-requirement/nsd:network-interface-requirements/nsd:key +
+
+   + value +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:virtual-network-interface-requirement/nsd:network-interface-requirements/nsd:value +
+
+   + nicio-requirements +
+
leafleafrefconfig?current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:nicio-requirements +
+
+   + order +
+
leaf-listuint32config*current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:order +
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:id +
+
+   + layer-protocol +
+
leaf-listidentityrefconfig*current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:layer-protocol +
+
+   + role +
+
leafidentityrefconfig?current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:role +
+
+   + description +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:description +
+
+   + + protocol[associated-layer-protocol] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:protocol
+
+   + associated-layer-protocol +
+
leafidentityrefconfigcurrent/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:protocol/nsd:associated-layer-protocol +
+
+   + + address-data[type] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:protocol/nsd:address-data
+
+   + type +
+
leafidentityrefconfigcurrent/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:protocol/nsd:address-data/nsd:type +
+
+   + + l2-address-data +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:protocol/nsd:address-data/nsd:l2-address-data
+
+   + mac-address-assignment +
+
leafbooleanconfigcurrent/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:protocol/nsd:address-data/nsd:l2-address-data/nsd:mac-address-assignment +
+
+   + + l3-address-data +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:protocol/nsd:address-data/nsd:l3-address-data
+
+   + ip-address-assignment +
+
leafbooleanconfigcurrent/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:protocol/nsd:address-data/nsd:l3-address-data/nsd:ip-address-assignment +
+
+   + floating-ip-activated +
+
leafbooleanconfigcurrent/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:protocol/nsd:address-data/nsd:l3-address-data/nsd:floating-ip-activated +
+
+   + ip-address-type +
+
leafenumerationconfig?current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:protocol/nsd:address-data/nsd:l3-address-data/nsd:ip-address-type +
+
+   + number-of-ip-addresses +
+
leafuint32config?current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:protocol/nsd:address-data/nsd:l3-address-data/nsd:number-of-ip-addresses +
+
+   + trunk-mode +
+
leafbooleanconfig?current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:trunk-mode +
+
+   + security-group-rule-id +
+
leafleafrefconfig?current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:int-cpd/nsd:security-group-rule-id +
+
+   + virtual-compute-desc +
+
leafleafrefconfig?current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:virtual-compute-desc +
+
+   + virtual-storage-desc +
+
leaf-listleafrefconfig*current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:virtual-storage-desc +
+
+   + + boot-order[key] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:boot-order
+
+   + key +
+
leafuint32configcurrent/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:boot-order/nsd:key +
+
+   + value +
+
leafleafrefconfig?current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:boot-order/nsd:value +
+
+   + sw-image-desc +
+
leafleafrefconfig?current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:sw-image-desc +
+
+   + nfvi-constraint +
+
leaf-liststringconfig*current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:nfvi-constraint +
+
+   + + monitoring-parameter[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:monitoring-parameter
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:monitoring-parameter/nsd:id +
+
+   + name +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:monitoring-parameter/nsd:name +
+
+   + performance-metric +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:monitoring-parameter/nsd:performance-metric +
+
+   + collection-period +
+
leafuint64config?current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:monitoring-parameter/nsd:collection-period +
+
+   + + configurable-properties[key] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:configurable-properties
+
+   + key +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:configurable-properties/nsd:key +
+
+   + value +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:configurable-properties/nsd:value +
+
+   + boot-data +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:vdu/nsd:boot-data +
+
+   + + virtual-compute-desc[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:id +
+
+   + + logical-node[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:logical-node
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:logical-node/nsd:id +
+
+   + + requirement-detail[key] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:logical-node/nsd:requirement-detail
+
+   + key +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:logical-node/nsd:requirement-detail/nsd:key +
+
+   + value +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:logical-node/nsd:requirement-detail/nsd:value +
+
+   + + request-additional-capability[name] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:request-additional-capability
+
+   + name +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:request-additional-capability/nsd:name +
+
+   + support-mandatory +
+
leafbooleanconfig?current/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:request-additional-capability/nsd:support-mandatory +
+
+   + min-version +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:request-additional-capability/nsd:min-version +
+
+   + preferred-version +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:request-additional-capability/nsd:preferred-version +
+
+   + + target-performance-parameters[key] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:request-additional-capability/nsd:target-performance-parameters
+
+   + key +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:request-additional-capability/nsd:target-performance-parameters/nsd:key +
+
+   + value +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:request-additional-capability/nsd:target-performance-parameters/nsd:value +
+
+   + compute-requirements +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:compute-requirements +
+
+   + + virtual-memory +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:virtual-memory
+
+   + size +
+
leafdecimal64config?current/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:virtual-memory/nsd:size +
+
+   + over-subscription-policy +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:virtual-memory/nsd:over-subscription-policy +
+
+   + + vdu-mem-requirements[key] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:virtual-memory/nsd:vdu-mem-requirements
+
+   + key +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:virtual-memory/nsd:vdu-mem-requirements/nsd:key +
+
+   + value +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:virtual-memory/nsd:vdu-mem-requirements/nsd:value +
+
+   + numa-enabled +
+
leafbooleanconfig?current/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:virtual-memory/nsd:numa-enabled +
+
+   + + virtual-cpu +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:virtual-cpu
+
+   + cpu-architecture +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:virtual-cpu/nsd:cpu-architecture +
+
+   + num-virtual-cpu +
+
leafuint16config?current/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:virtual-cpu/nsd:num-virtual-cpu +
+
+   + clock +
+
leafuint32config?current/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:virtual-cpu/nsd:clock +
+
+   + oversubscription-policy +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:virtual-cpu/nsd:oversubscription-policy +
+
+   + + vdu-cpu-requirements[key] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:virtual-cpu/nsd:vdu-cpu-requirements
+
+   + key +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:virtual-cpu/nsd:vdu-cpu-requirements/nsd:key +
+
+   + value +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:virtual-cpu/nsd:vdu-cpu-requirements/nsd:value +
+
+   + + pinning +
+
containerconfigPresencecurrent/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:virtual-cpu/nsd:pinning
+
+   + policy +
+
leafenumerationconfig?current/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:virtual-cpu/nsd:pinning/nsd:policy +
+
+   + + rule[key] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:virtual-cpu/nsd:pinning/nsd:rule
+
+   + key +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:virtual-cpu/nsd:pinning/nsd:rule/nsd:key +
+
+   + value +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:virtual-compute-desc/nsd:virtual-cpu/nsd:pinning/nsd:rule/nsd:value +
+
+   + + virtual-storage-desc[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:virtual-storage-desc
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:virtual-storage-desc/nsd:id +
+
+   + type-of-storage +
+
leafidentityrefconfig?current/nsd:nsd/nsd:vnfd/nsd:virtual-storage-desc/nsd:type-of-storage +
+
+   + size-of-storage +
+
leafuint64config?current/nsd:nsd/nsd:vnfd/nsd:virtual-storage-desc/nsd:size-of-storage +
+
+   + + vdu-storage-requirements[key] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:virtual-storage-desc/nsd:vdu-storage-requirements
+
+   + key +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:virtual-storage-desc/nsd:vdu-storage-requirements/nsd:key +
+
+   + value +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:virtual-storage-desc/nsd:vdu-storage-requirements/nsd:value +
+
+   + rdma-enabled +
+
leafbooleanconfig?current/nsd:nsd/nsd:vnfd/nsd:virtual-storage-desc/nsd:rdma-enabled +
+
+   + sw-image-desc +
+
leafleafrefconfig?current/nsd:nsd/nsd:vnfd/nsd:virtual-storage-desc/nsd:sw-image-desc +
+
+   + + sw-image-desc[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:sw-image-desc
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:sw-image-desc/nsd:id +
+
+   + name +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:sw-image-desc/nsd:name +
+
+   + version +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:sw-image-desc/nsd:version +
+
+   + + checksum +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:sw-image-desc/nsd:checksum
+
+   + algorithm +
+
leafidentityrefconfigcurrent/nsd:nsd/nsd:vnfd/nsd:sw-image-desc/nsd:checksum/nsd:algorithm +
+
+   + hash +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:sw-image-desc/nsd:checksum/nsd:hash +
+
+   + container-format +
+
leafenumerationconfig?current/nsd:nsd/nsd:vnfd/nsd:sw-image-desc/nsd:container-format +
+
+   + disk-format +
+
leafenumerationconfig?current/nsd:nsd/nsd:vnfd/nsd:sw-image-desc/nsd:disk-format +
+
+   + min-disk +
+
leafuint64configcurrent/nsd:nsd/nsd:vnfd/nsd:sw-image-desc/nsd:min-disk +
+
+   + min-ram +
+
leafdecimal64config?current/nsd:nsd/nsd:vnfd/nsd:sw-image-desc/nsd:min-ram +
+
+   + size +
+
leafuint64configcurrent/nsd:nsd/nsd:vnfd/nsd:sw-image-desc/nsd:size +
+
+   + image +
+
leafinet:uriconfig?current/nsd:nsd/nsd:vnfd/nsd:sw-image-desc/nsd:image +
+
+   + operating-system +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:sw-image-desc/nsd:operating-system +
+
+   + supported-virtualization-environment +
+
leaf-liststringconfig*current/nsd:nsd/nsd:vnfd/nsd:sw-image-desc/nsd:supported-virtualization-environment +
+
+   + + int-virtual-link-desc[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:int-virtual-link-desc
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:int-virtual-link-desc/nsd:id +
+
+   + + flavour[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:int-virtual-link-desc/nsd:flavour
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:int-virtual-link-desc/nsd:flavour/nsd:id +
+
+   + + qos +
+
containerconfigPresencecurrent/nsd:nsd/nsd:vnfd/nsd:int-virtual-link-desc/nsd:flavour/nsd:qos
+
+   + latency +
+
leafuint32configcurrent/nsd:nsd/nsd:vnfd/nsd:int-virtual-link-desc/nsd:flavour/nsd:qos/nsd:latency +
+
+   + packet-delay-variation +
+
leafuint32configcurrent/nsd:nsd/nsd:vnfd/nsd:int-virtual-link-desc/nsd:flavour/nsd:qos/nsd:packet-delay-variation +
+
+   + packet-loss-ratio +
+
leafdecimal64config?current/nsd:nsd/nsd:vnfd/nsd:int-virtual-link-desc/nsd:flavour/nsd:qos/nsd:packet-loss-ratio +
+
+   + + connectivity-type +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:int-virtual-link-desc/nsd:connectivity-type
+
+   + layer-protocol +
+
leaf-listidentityrefconfig*current/nsd:nsd/nsd:vnfd/nsd:int-virtual-link-desc/nsd:connectivity-type/nsd:layer-protocol +
+
+   + flow-pattern +
+
leafflow-patternconfig?current/nsd:nsd/nsd:vnfd/nsd:int-virtual-link-desc/nsd:connectivity-type/nsd:flow-pattern +
+
+   + test-access +
+
leaf-liststringconfig*current/nsd:nsd/nsd:vnfd/nsd:int-virtual-link-desc/nsd:test-access +
+
+   + description +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:int-virtual-link-desc/nsd:description +
+
+   + + monitoring-parameters[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:int-virtual-link-desc/nsd:monitoring-parameters
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:int-virtual-link-desc/nsd:monitoring-parameters/nsd:id +
+
+   + name +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:int-virtual-link-desc/nsd:monitoring-parameters/nsd:name +
+
+   + performance-metric +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:int-virtual-link-desc/nsd:monitoring-parameters/nsd:performance-metric +
+
+   + collection-period +
+
leafuint64config?current/nsd:nsd/nsd:vnfd/nsd:int-virtual-link-desc/nsd:monitoring-parameters/nsd:collection-period +
+
+   + + security-group-rule[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:security-group-rule
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:security-group-rule/nsd:id +
+
+   + description +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:security-group-rule/nsd:description +
+
+   + direction +
+
leafenumerationconfig?current/nsd:nsd/nsd:vnfd/nsd:security-group-rule/nsd:direction +
+
+   + ether-type +
+
leafenumerationconfig?current/nsd:nsd/nsd:vnfd/nsd:security-group-rule/nsd:ether-type +
+
+   + protocol +
+
leafenumerationconfig?current/nsd:nsd/nsd:vnfd/nsd:security-group-rule/nsd:protocol +
+
+   + port-range-min +
+
leafuint16config?current/nsd:nsd/nsd:vnfd/nsd:security-group-rule/nsd:port-range-min +
+
+   + port-range-max +
+
leafuint16config?current/nsd:nsd/nsd:vnfd/nsd:security-group-rule/nsd:port-range-max +
+
+   + + ext-cpd[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:ext-cpd
+
+   + + (cp-connection) +
+
choiceconfigChoicecurrent/nsd:nsd/nsd:vnfd/nsd:ext-cpd
+
+   + + :(int-virtual-link-desc) +
+
caseconfigcurrent/nsd:nsd/nsd:vnfd/nsd:ext-cpd
+
+   + int-virtual-link-desc +
+
leafleafrefconfig?current/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:int-virtual-link-desc +
+
+   + + :(int-cpd) +
+
caseconfigcurrent/nsd:nsd/nsd:vnfd/nsd:ext-cpd
+
+   + + int-cpd +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:int-cpd
+
+   + vdu-id +
+
leafleafrefconfig?current/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:int-cpd/nsd:vdu-id +
+
+   + cpd +
+
leafleafrefconfig?current/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:int-cpd/nsd:cpd +
+
+   + + virtual-network-interface-requirement[name] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:virtual-network-interface-requirement
+
+   + name +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:virtual-network-interface-requirement/nsd:name +
+
+   + description +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:virtual-network-interface-requirement/nsd:description +
+
+   + support-mandatory +
+
leafbooleanconfig?current/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:virtual-network-interface-requirement/nsd:support-mandatory +
+
+   + + network-interface-requirements[key] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:virtual-network-interface-requirement/nsd:network-interface-requirements
+
+   + key +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:virtual-network-interface-requirement/nsd:network-interface-requirements/nsd:key +
+
+   + value +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:virtual-network-interface-requirement/nsd:network-interface-requirements/nsd:value +
+
+   + nicio-requirements +
+
leafleafrefconfig?current/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:nicio-requirements +
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:id +
+
+   + layer-protocol +
+
leaf-listidentityrefconfig*current/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:layer-protocol +
+
+   + role +
+
leafidentityrefconfig?current/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:role +
+
+   + description +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:description +
+
+   + + protocol[associated-layer-protocol] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:protocol
+
+   + associated-layer-protocol +
+
leafidentityrefconfigcurrent/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:protocol/nsd:associated-layer-protocol +
+
+   + + address-data[type] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:protocol/nsd:address-data
+
+   + type +
+
leafidentityrefconfigcurrent/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:protocol/nsd:address-data/nsd:type +
+
+   + + l2-address-data +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:protocol/nsd:address-data/nsd:l2-address-data
+
+   + mac-address-assignment +
+
leafbooleanconfigcurrent/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:protocol/nsd:address-data/nsd:l2-address-data/nsd:mac-address-assignment +
+
+   + + l3-address-data +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:protocol/nsd:address-data/nsd:l3-address-data
+
+   + ip-address-assignment +
+
leafbooleanconfigcurrent/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:protocol/nsd:address-data/nsd:l3-address-data/nsd:ip-address-assignment +
+
+   + floating-ip-activated +
+
leafbooleanconfigcurrent/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:protocol/nsd:address-data/nsd:l3-address-data/nsd:floating-ip-activated +
+
+   + ip-address-type +
+
leafenumerationconfig?current/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:protocol/nsd:address-data/nsd:l3-address-data/nsd:ip-address-type +
+
+   + number-of-ip-addresses +
+
leafuint32config?current/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:protocol/nsd:address-data/nsd:l3-address-data/nsd:number-of-ip-addresses +
+
+   + trunk-mode +
+
leafbooleanconfig?current/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:trunk-mode +
+
+   + security-group-rule-id +
+
leafleafrefconfig?current/nsd:nsd/nsd:vnfd/nsd:ext-cpd/nsd:security-group-rule-id +
+
+   + + df[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:id +
+
+   + description +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:description +
+
+   + + vdu-profile[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:vdu-profile
+
+   + id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:vdu-profile/nsd:id +
+
+   + min-number-of-instances +
+
leafuint16config?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:vdu-profile/nsd:min-number-of-instances +
+
+   + max-number-of-instances +
+
leafuint16config?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:vdu-profile/nsd:max-number-of-instances +
+
+   + + local-affinity-or-anti-affinity-rule[affinity-type affinity-scope] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:vdu-profile/nsd:local-affinity-or-anti-affinity-rule
+
+   + affinity-type +
+
leafaffinity-typeconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:vdu-profile/nsd:local-affinity-or-anti-affinity-rule/nsd:affinity-type +
+
+   + affinity-scope +
+
leafaffinity-scopeconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:vdu-profile/nsd:local-affinity-or-anti-affinity-rule/nsd:affinity-scope +
+
+   + + affinity-or-anti-affinity-group[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:vdu-profile/nsd:affinity-or-anti-affinity-group
+
+   + id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:vdu-profile/nsd:affinity-or-anti-affinity-group/nsd:id +
+
+   + + virtual-link-profile[id flavour] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile
+
+   + id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:id +
+
+   + flavour +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:flavour +
+
+   + + local-affinity-or-anti-affinity-rule[affinity-type affinity-scope] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:local-affinity-or-anti-affinity-rule
+
+   + affinity-type +
+
leafaffinity-typeconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:local-affinity-or-anti-affinity-rule/nsd:affinity-type +
+
+   + affinity-scope +
+
leafaffinity-scopeconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:local-affinity-or-anti-affinity-rule/nsd:affinity-scope +
+
+   + + affinity-or-anti-affinity-group[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:affinity-or-anti-affinity-group
+
+   + id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:affinity-or-anti-affinity-group/nsd:id +
+
+   + + max-bit-rate-requirements +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:max-bit-rate-requirements
+
+   + root +
+
leafuint32configcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:max-bit-rate-requirements/nsd:root +
+
+   + leaf +
+
leafuint32config?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:max-bit-rate-requirements/nsd:leaf +
+
+   + + min-bit-rate-requirements +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:min-bit-rate-requirements
+
+   + root +
+
leafuint32configcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:min-bit-rate-requirements/nsd:root +
+
+   + leaf +
+
leafuint32config?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:min-bit-rate-requirements/nsd:leaf +
+
+   + + virtual-link-protocol-data +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:virtual-link-protocol-data
+
+   + associated-layer-protocol +
+
leafidentityrefconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:virtual-link-protocol-data/nsd:associated-layer-protocol +
+
+   + + l2-protocol-data +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:virtual-link-protocol-data/nsd:l2-protocol-data
+
+   + name +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:virtual-link-protocol-data/nsd:l2-protocol-data/nsd:name +
+
+   + network-type +
+
leafenumerationconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:virtual-link-protocol-data/nsd:l2-protocol-data/nsd:network-type +
+
+   + vlan-transparent +
+
leafbooleanconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:virtual-link-protocol-data/nsd:l2-protocol-data/nsd:vlan-transparent +
+
+   + mtu +
+
leafuint16config?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:virtual-link-protocol-data/nsd:l2-protocol-data/nsd:mtu +
+
+   + + l3-protocol-data +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:virtual-link-protocol-data/nsd:l3-protocol-data
+
+   + name +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:virtual-link-protocol-data/nsd:l3-protocol-data/nsd:name +
+
+   + ip-version +
+
leafenumerationconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:virtual-link-protocol-data/nsd:l3-protocol-data/nsd:ip-version +
+
+   + cidr +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:virtual-link-protocol-data/nsd:l3-protocol-data/nsd:cidr +
+
+   + ip-allocation-pools +
+
leaf-liststringconfig*current/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:virtual-link-protocol-data/nsd:l3-protocol-data/nsd:ip-allocation-pools +
+
+   + gateway-ip +
+
leafinet:ip-addressconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:virtual-link-protocol-data/nsd:l3-protocol-data/nsd:gateway-ip +
+
+   + dhcp-enabled +
+
leafbooleanconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:virtual-link-protocol-data/nsd:l3-protocol-data/nsd:dhcp-enabled +
+
+   + ipv6-address-mode +
+
leafenumerationconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:virtual-link-profile/nsd:virtual-link-protocol-data/nsd:l3-protocol-data/nsd:ipv6-address-mode +
+
+   + + instantiation-level[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:instantiation-level
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:instantiation-level/nsd:id +
+
+   + description +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:instantiation-level/nsd:description +
+
+   + + vdu-level[vdu-id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:instantiation-level/nsd:vdu-level
+
+   + vdu-id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:instantiation-level/nsd:vdu-level/nsd:vdu-id +
+
+   + number-of-instances +
+
leafuint16config?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:instantiation-level/nsd:vdu-level/nsd:number-of-instances +
+
+   + + scaling-info[scaling-aspect-id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:instantiation-level/nsd:scaling-info
+
+   + scaling-aspect-id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:instantiation-level/nsd:scaling-info/nsd:scaling-aspect-id +
+
+   + scale-level +
+
leafuint32config?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:instantiation-level/nsd:scaling-info/nsd:scale-level +
+
+   + default-instantiation-level +
+
leafleafrefconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:default-instantiation-level +
+
+   + supported-operation +
+
leaf-listidentityrefconfig*current/nsd:nsd/nsd:vnfd/nsd:df/nsd:supported-operation +
+
+   + + lcm-operations-configuration +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration
+
+   + + instantiate-vnf-op-config +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:instantiate-vnf-op-config
+
+   + + parameter[key] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:instantiate-vnf-op-config/nsd:parameter
+
+   + key +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:instantiate-vnf-op-config/nsd:parameter/nsd:key +
+
+   + value +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:instantiate-vnf-op-config/nsd:parameter/nsd:value +
+
+   + + scale-vnf-op-config +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:scale-vnf-op-config
+
+   + + parameter[key] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:scale-vnf-op-config/nsd:parameter
+
+   + key +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:scale-vnf-op-config/nsd:parameter/nsd:key +
+
+   + value +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:scale-vnf-op-config/nsd:parameter/nsd:value +
+
+   + scaling-by-more-than-one-step-supported +
+
leafbooleanconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:scale-vnf-op-config/nsd:scaling-by-more-than-one-step-supported +
+
+   + + scale-vnf-to-level-op-config +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:scale-vnf-to-level-op-config
+
+   + + parameter[key] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:scale-vnf-to-level-op-config/nsd:parameter
+
+   + key +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:scale-vnf-to-level-op-config/nsd:parameter/nsd:key +
+
+   + value +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:scale-vnf-to-level-op-config/nsd:parameter/nsd:value +
+
+   + arbitrary-target-levels-supported +
+
leafbooleanconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:scale-vnf-to-level-op-config/nsd:arbitrary-target-levels-supported +
+
+   + + heal-vnf-op-config +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:heal-vnf-op-config
+
+   + + parameter[key] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:heal-vnf-op-config/nsd:parameter
+
+   + key +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:heal-vnf-op-config/nsd:parameter/nsd:key +
+
+   + value +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:heal-vnf-op-config/nsd:parameter/nsd:value +
+
+   + cause +
+
leaf-liststringconfig*current/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:heal-vnf-op-config/nsd:cause +
+
+   + + terminate-vnf-op-config +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:terminate-vnf-op-config
+
+   + min-graceful-termination +
+
leafyang:timeticksconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:terminate-vnf-op-config/nsd:min-graceful-termination +
+
+   + max-recommended-graceful-termination +
+
leafyang:timeticksconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:terminate-vnf-op-config/nsd:max-recommended-graceful-termination +
+
+   + + parameter[key] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:terminate-vnf-op-config/nsd:parameter
+
+   + key +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:terminate-vnf-op-config/nsd:parameter/nsd:key +
+
+   + value +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:terminate-vnf-op-config/nsd:parameter/nsd:value +
+
+   + + operate-vnf-op-config +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:operate-vnf-op-config
+
+   + min-graceful-stop-timeout +
+
leafyang:timeticksconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:operate-vnf-op-config/nsd:min-graceful-stop-timeout +
+
+   + max-recommended-graceful-stop-timeout +
+
leafyang:timeticksconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:operate-vnf-op-config/nsd:max-recommended-graceful-stop-timeout +
+
+   + + parameter[key] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:operate-vnf-op-config/nsd:parameter
+
+   + key +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:operate-vnf-op-config/nsd:parameter/nsd:key +
+
+   + value +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:operate-vnf-op-config/nsd:parameter/nsd:value +
+
+   + + change-vnf-flavour-op-config +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:change-vnf-flavour-op-config
+
+   + + parameter[key] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:change-vnf-flavour-op-config/nsd:parameter
+
+   + key +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:change-vnf-flavour-op-config/nsd:parameter/nsd:key +
+
+   + value +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:change-vnf-flavour-op-config/nsd:parameter/nsd:value +
+
+   + + change-ext-vnf-connectivity-op-config +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:change-ext-vnf-connectivity-op-config
+
+   + + parameter[key] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:change-ext-vnf-connectivity-op-config/nsd:parameter
+
+   + key +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:change-ext-vnf-connectivity-op-config/nsd:parameter/nsd:key +
+
+   + value +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:lcm-operations-configuration/nsd:change-ext-vnf-connectivity-op-config/nsd:parameter/nsd:value +
+
+   + + affinity-or-anti-affinity-group[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:affinity-or-anti-affinity-group
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:affinity-or-anti-affinity-group/nsd:id +
+
+   + type +
+
leafaffinity-typeconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:affinity-or-anti-affinity-group/nsd:type +
+
+   + scope +
+
leafaffinity-scopeconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:affinity-or-anti-affinity-group/nsd:scope +
+
+   + + indicator[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:indicator
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:indicator/nsd:id +
+
+   + name +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:indicator/nsd:name +
+
+   + indicator-value +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:indicator/nsd:indicator-value +
+
+   + source +
+
leafenumerationconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:indicator/nsd:source +
+
+   + + supported-vnf-interfaces[name] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:supported-vnf-interfaces
+
+   + name +
+
leafenumerationconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:supported-vnf-interfaces/nsd:name +
+
+   + cpd-id +
+
leaf-listleafrefconfig*current/nsd:nsd/nsd:vnfd/nsd:df/nsd:supported-vnf-interfaces/nsd:cpd-id +
+
+   + + interface-details[key] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:supported-vnf-interfaces/nsd:interface-details
+
+   + key +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:supported-vnf-interfaces/nsd:interface-details/nsd:key +
+
+   + value +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:supported-vnf-interfaces/nsd:interface-details/nsd:value +
+
+   + + monitoring-parameter[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:monitoring-parameter
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:monitoring-parameter/nsd:id +
+
+   + name +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:monitoring-parameter/nsd:name +
+
+   + performance-metric +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:monitoring-parameter/nsd:performance-metric +
+
+   + collection-period +
+
leafuint64config?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:monitoring-parameter/nsd:collection-period +
+
+   + + scaling-aspect[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:scaling-aspect
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:scaling-aspect/nsd:id +
+
+   + name +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:scaling-aspect/nsd:name +
+
+   + description +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:scaling-aspect/nsd:description +
+
+   + max-scale-level +
+
leafuint32config?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:scaling-aspect/nsd:max-scale-level +
+
+   + + aspect-delta-details +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:scaling-aspect/nsd:aspect-delta-details
+
+   + + deltas[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:scaling-aspect/nsd:aspect-delta-details/nsd:deltas
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:scaling-aspect/nsd:aspect-delta-details/nsd:deltas/nsd:id +
+
+   + + vdu-delta[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:scaling-aspect/nsd:aspect-delta-details/nsd:deltas/nsd:vdu-delta
+
+   + id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:scaling-aspect/nsd:aspect-delta-details/nsd:deltas/nsd:vdu-delta/nsd:id +
+
+   + number-of-instances +
+
leafuint32config?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:scaling-aspect/nsd:aspect-delta-details/nsd:deltas/nsd:vdu-delta/nsd:number-of-instances +
+
+   + + virtual-link-bit-rate-delta[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:scaling-aspect/nsd:aspect-delta-details/nsd:deltas/nsd:virtual-link-bit-rate-delta
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:scaling-aspect/nsd:aspect-delta-details/nsd:deltas/nsd:virtual-link-bit-rate-delta/nsd:id +
+
+   + + bit-rate-requirements +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:scaling-aspect/nsd:aspect-delta-details/nsd:deltas/nsd:virtual-link-bit-rate-delta/nsd:bit-rate-requirements
+
+   + root +
+
leafuint32configcurrent/nsd:nsd/nsd:vnfd/nsd:df/nsd:scaling-aspect/nsd:aspect-delta-details/nsd:deltas/nsd:virtual-link-bit-rate-delta/nsd:bit-rate-requirements/nsd:root +
+
+   + leaf +
+
leafuint32config?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:scaling-aspect/nsd:aspect-delta-details/nsd:deltas/nsd:virtual-link-bit-rate-delta/nsd:bit-rate-requirements/nsd:leaf +
+
+   + step-deltas +
+
leafleafrefconfig?current/nsd:nsd/nsd:vnfd/nsd:df/nsd:scaling-aspect/nsd:aspect-delta-details/nsd:step-deltas +
+
+   + + configurable-properties +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:configurable-properties
+
+   + is-auto-scalable-enabled +
+
leafbooleanconfig?current/nsd:nsd/nsd:vnfd/nsd:configurable-properties/nsd:is-auto-scalable-enabled +
+
+   + is-auto-heal-enabled +
+
leafbooleanconfig?current/nsd:nsd/nsd:vnfd/nsd:configurable-properties/nsd:is-auto-heal-enabled +
+
+   + + additional-configurable-property[key] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:configurable-properties/nsd:additional-configurable-property
+
+   + key +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:configurable-properties/nsd:additional-configurable-property/nsd:key +
+
+   + value +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:configurable-properties/nsd:additional-configurable-property/nsd:value +
+
+   + + modifiable-attributes +
+
containerconfigcurrent/nsd:nsd/nsd:vnfd/nsd:modifiable-attributes
+
+   + extension +
+
leaf-liststringconfig*current/nsd:nsd/nsd:vnfd/nsd:modifiable-attributes/nsd:extension +
+
+   + metadata +
+
leaf-liststringconfig*current/nsd:nsd/nsd:vnfd/nsd:modifiable-attributes/nsd:metadata +
+
+   + + lifecycle-management-script[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:lifecycle-management-script
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:lifecycle-management-script/nsd:id +
+
+   + event +
+
leaf-listinternal-lifecycle-management-script-eventconfig*current/nsd:nsd/nsd:vnfd/nsd:lifecycle-management-script/nsd:event +
+
+   + lcm-transition-event +
+
leaf-liststringconfig*current/nsd:nsd/nsd:vnfd/nsd:lifecycle-management-script/nsd:lcm-transition-event +
+
+   + script +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:lifecycle-management-script/nsd:script +
+
+   + script-dsl +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:lifecycle-management-script/nsd:script-dsl +
+
+   + + script-input[key] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:lifecycle-management-script/nsd:script-input
+
+   + key +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:lifecycle-management-script/nsd:script-input/nsd:key +
+
+   + value +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:lifecycle-management-script/nsd:script-input/nsd:value +
+
+   + + element-group[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:element-group
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:element-group/nsd:id +
+
+   + description +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:element-group/nsd:description +
+
+   + vdu +
+
leaf-listleafrefconfig*current/nsd:nsd/nsd:vnfd/nsd:element-group/nsd:vdu +
+
+   + virtual-link-desc +
+
leaf-listleafrefconfig*current/nsd:nsd/nsd:vnfd/nsd:element-group/nsd:virtual-link-desc +
+
+   + + indicator[id] +
+
listconfigcurrent/nsd:nsd/nsd:vnfd/nsd:indicator
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:vnfd/nsd:indicator/nsd:id +
+
+   + name +
+
leafstringconfig?current/nsd:nsd/nsd:vnfd/nsd:indicator/nsd:name +
+
+   + indicator-value +
+
leaf-liststringconfig*current/nsd:nsd/nsd:vnfd/nsd:indicator/nsd:indicator-value +
+
+   + source +
+
leafenumerationconfig?current/nsd:nsd/nsd:vnfd/nsd:indicator/nsd:source +
+
+   + auto-scale +
+
leaf-liststringconfig*current/nsd:nsd/nsd:vnfd/nsd:auto-scale +
+
+   + + nsd[id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/nsd:id +
+
+   + designer +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:designer +
+
+   + version +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:version +
+
+   + name +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:name +
+
+   + invariant-id +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:invariant-id +
+
+   + nested-nsd-id +
+
leaf-listleafrefconfig*current/nsd:nsd/nsd:nsd/nsd:nested-nsd-id +
+
+   + vnfd-id +
+
leaf-listleafrefconfig*current/nsd:nsd/nsd:nsd/nsd:vnfd-id +
+
+   + pnfd-id +
+
leaf-listleafrefconfig*current/nsd:nsd/nsd:nsd/nsd:pnfd-id +
+
+   + + sapd[id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:sapd
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/nsd:sapd/nsd:id +
+
+   + address-assignment +
+
leafbooleanconfig?current/nsd:nsd/nsd:nsd/nsd:sapd/nsd:address-assignment +
+
+   + + (cpd-or-virtual-link) +
+
choiceconfigChoicecurrent/nsd:nsd/nsd:nsd/nsd:sapd
+
+   + + :(virtual-link-desc) +
+
caseconfigcurrent/nsd:nsd/nsd:nsd/nsd:sapd
+
+   + virtual-link-desc +
+
leafleafrefconfig?current/nsd:nsd/nsd:nsd/nsd:sapd/nsd:virtual-link-desc +
+
+   + + :(vnf) +
+
caseconfigcurrent/nsd:nsd/nsd:nsd/nsd:sapd
+
+   + + vnf +
+
containerconfigcurrent/nsd:nsd/nsd:nsd/nsd:sapd/nsd:vnf
+
+   + vnfd-id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:sapd/nsd:vnf/nsd:vnfd-id +
+
+   + ext-cpd-id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:sapd/nsd:vnf/nsd:ext-cpd-id +
+
+   + + :(pnf) +
+
caseconfigcurrent/nsd:nsd/nsd:nsd/nsd:sapd
+
+   + + pnf +
+
containerconfigcurrent/nsd:nsd/nsd:nsd/nsd:sapd/nsd:pnf
+
+   + pnfd-id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:sapd/nsd:pnf/nsd:pnfd-id +
+
+   + ext-cpd-id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:sapd/nsd:pnf/nsd:ext-cpd-id +
+
+   + + :(ns) +
+
caseconfigcurrent/nsd:nsd/nsd:nsd/nsd:sapd
+
+   + + ns +
+
containerconfigcurrent/nsd:nsd/nsd:nsd/nsd:sapd/nsd:ns
+
+   + nsd-id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:sapd/nsd:ns/nsd:nsd-id +
+
+   + ext-cpd-id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:sapd/nsd:ns/nsd:ext-cpd-id +
+
+   + ns-various:floating-ip-required +
+
leafbooleanconfig?current/nsd:nsd/nsd:nsd/nsd:sapd/ns-various:floating-ip-required +
+
+   + + virtual-link-desc[id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:virtual-link-desc
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/nsd:virtual-link-desc/nsd:id +
+
+   + + connectivity-type +
+
containerconfigcurrent/nsd:nsd/nsd:nsd/nsd:virtual-link-desc/nsd:connectivity-type
+
+   + layer-protocol +
+
leaf-listidentityrefconfig*current/nsd:nsd/nsd:nsd/nsd:virtual-link-desc/nsd:connectivity-type/nsd:layer-protocol +
+
+   + flow-pattern +
+
leafflow-patternconfig?current/nsd:nsd/nsd:nsd/nsd:virtual-link-desc/nsd:connectivity-type/nsd:flow-pattern +
+
+   + + df[id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:virtual-link-desc/nsd:df
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/nsd:virtual-link-desc/nsd:df/nsd:id +
+
+   + + qos +
+
containerconfigPresencecurrent/nsd:nsd/nsd:nsd/nsd:virtual-link-desc/nsd:df/nsd:qos
+
+   + latency +
+
leafuint32configcurrent/nsd:nsd/nsd:nsd/nsd:virtual-link-desc/nsd:df/nsd:qos/nsd:latency +
+
+   + packet-delay-variation +
+
leafuint32configcurrent/nsd:nsd/nsd:nsd/nsd:virtual-link-desc/nsd:df/nsd:qos/nsd:packet-delay-variation +
+
+   + packet-loss-ratio +
+
leafdecimal64config?current/nsd:nsd/nsd:nsd/nsd:virtual-link-desc/nsd:df/nsd:qos/nsd:packet-loss-ratio +
+
+   + priority +
+
leafuint32config?current/nsd:nsd/nsd:nsd/nsd:virtual-link-desc/nsd:df/nsd:qos/nsd:priority +
+
+   + service-availability-level +
+
leafenumerationconfig?current/nsd:nsd/nsd:nsd/nsd:virtual-link-desc/nsd:df/nsd:service-availability-level +
+
+   + test-access +
+
leafenumerationconfig?current/nsd:nsd/nsd:nsd/nsd:virtual-link-desc/nsd:test-access +
+
+   + description +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:virtual-link-desc/nsd:description +
+
+   + signature +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:virtual-link-desc/nsd:signature +
+
+   + algorithm +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:virtual-link-desc/nsd:algorithm +
+
+   + certificate +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:virtual-link-desc/nsd:certificate +
+
+   + + ns-vld:provider-network +
+
containerconfigcurrent/nsd:nsd/nsd:nsd/nsd:virtual-link-desc/ns-vld:provider-network
+
+   + ns-vld:physical-network +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:virtual-link-desc/ns-vld:provider-network/ns-vld:physical-network +
+
+   + ns-vld:segmentation_id +
+
leafuint32config?current/nsd:nsd/nsd:nsd/nsd:virtual-link-desc/ns-vld:provider-network/ns-vld:segmentation_id +
+
+   + ns-vld:vim-network-name +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:virtual-link-desc/ns-vld:vim-network-name +
+
+   + ns-vld:mgmt-network +
+
leafbooleanconfig?current/nsd:nsd/nsd:nsd/nsd:virtual-link-desc/ns-vld:mgmt-network +
+
+   + + vnffgd[id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:id +
+
+   + vnf-profile-id +
+
leaf-listleafrefconfig*current/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:vnf-profile-id +
+
+   + pnf-profile-id +
+
leaf-listleafrefconfig*current/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:pnf-profile-id +
+
+   + nested-ns-profile-id +
+
leaf-listleafrefconfig*current/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:nested-ns-profile-id +
+
+   + virtual-link-profile-id +
+
leafleafrefconfig?current/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:virtual-link-profile-id +
+
+   + + cpd-pool[id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool/nsd:id +
+
+   + + (constituent-base-element-id) +
+
choiceconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool
+
+   + + :(vnf-profile) +
+
caseconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool
+
+   + + vnf-profile +
+
containerconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool/nsd:vnf-profile
+
+   + vnf-profile-id +
+
leafleafrefconfig?current/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool/nsd:vnf-profile/nsd:vnf-profile-id +
+
+   + + :(pnf-profile) +
+
caseconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool
+
+   + + pnf-profile +
+
containerconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool/nsd:pnf-profile
+
+   + pnf-profile-id +
+
leafleafrefconfig?current/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool/nsd:pnf-profile/nsd:pnf-profile-id +
+
+   + + :(ns-profile) +
+
caseconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool
+
+   + + ns-profile +
+
containerconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool/nsd:ns-profile
+
+   + ns-profile-id +
+
leafleafrefconfig?current/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool/nsd:ns-profile/nsd:ns-profile-id +
+
+   + + (constituent-cpd-id) +
+
choiceconfigChoicecurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool
+
+   + + :(vnf) +
+
caseconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool
+
+   + + vnf +
+
containerconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool/nsd:vnf
+
+   + vnfd-id +
+
leafleafrefconfig?current/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool/nsd:vnf/nsd:vnfd-id +
+
+   + cpd-id +
+
leafleafrefconfig?current/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool/nsd:vnf/nsd:cpd-id +
+
+   + + :(pnf) +
+
caseconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool
+
+   + + pnf +
+
containerconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool/nsd:pnf
+
+   + pnfd-id +
+
leafleafrefconfig?current/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool/nsd:pnf/nsd:pnfd-id +
+
+   + pnf-cpd-id +
+
leafleafrefconfig?current/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool/nsd:pnf/nsd:pnf-cpd-id +
+
+   + + :(ns) +
+
caseconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool
+
+   + + ns +
+
containerconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool/nsd:ns
+
+   + nsd-id +
+
leafleafrefconfig?current/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool/nsd:ns/nsd:nsd-id +
+
+   + sap-cpd-id +
+
leafleafrefconfig?current/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:cpd-pool/nsd:ns/nsd:sap-cpd-id +
+
+   + + nfpd[id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:nfpd
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:nfpd/nsd:id +
+
+   + rule +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:nfpd/nsd:rule +
+
+   + + position-desc-id[id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:nfpd/nsd:position-desc-id
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:nfpd/nsd:position-desc-id/nsd:id +
+
+   + + cp-profile-id[id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:nfpd/nsd:position-desc-id/nsd:cp-profile-id
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:nfpd/nsd:position-desc-id/nsd:cp-profile-id/nsd:id +
+
+   + + constituent-profile-elements[id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:nfpd/nsd:position-desc-id/nsd:cp-profile-id/nsd:constituent-profile-elements
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:nfpd/nsd:position-desc-id/nsd:cp-profile-id/nsd:constituent-profile-elements/nsd:id +
+
+   + cpd-id +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:vnffgd/nsd:nfpd/nsd:position-desc-id/nsd:cp-profile-id/nsd:constituent-profile-elements/nsd:cpd-id +
+
+   + autoscale-rule +
+
leaf-liststringconfig*current/nsd:nsd/nsd:nsd/nsd:autoscale-rule +
+
+   + + lifecycle-management-script[event] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:lifecycle-management-script
+
+   + event +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/nsd:lifecycle-management-script/nsd:event +
+
+   + script +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:lifecycle-management-script/nsd:script +
+
+   + + df[id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:df
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:id +
+
+   + flavour-key +
+
leafleafrefconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:flavour-key +
+
+   + + vnf-profile[id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:vnf-profile
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:vnf-profile/nsd:id +
+
+   + vnfd-id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:vnf-profile/nsd:vnfd-id +
+
+   + flavour-id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:vnf-profile/nsd:flavour-id +
+
+   + instantiation-level +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:vnf-profile/nsd:instantiation-level +
+
+   + min-number-of-instances +
+
leafuint16config?current/nsd:nsd/nsd:nsd/nsd:df/nsd:vnf-profile/nsd:min-number-of-instances +
+
+   + max-number-of-instances +
+
leafuint16config?current/nsd:nsd/nsd:nsd/nsd:df/nsd:vnf-profile/nsd:max-number-of-instances +
+
+   + + local-affinity-or-anti-affinity-rule[affinity-type affinity-scope] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:vnf-profile/nsd:local-affinity-or-anti-affinity-rule
+
+   + affinity-type +
+
leafaffinity-typeconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:vnf-profile/nsd:local-affinity-or-anti-affinity-rule/nsd:affinity-type +
+
+   + affinity-scope +
+
leafaffinity-scopeconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:vnf-profile/nsd:local-affinity-or-anti-affinity-rule/nsd:affinity-scope +
+
+   + + affinity-or-anti-affinity-group[id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:vnf-profile/nsd:affinity-or-anti-affinity-group
+
+   + id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:vnf-profile/nsd:affinity-or-anti-affinity-group/nsd:id +
+
+   + + virtual-link-connectivity[virtual-link-profile-id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:vnf-profile/nsd:virtual-link-connectivity
+
+   + virtual-link-profile-id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:vnf-profile/nsd:virtual-link-connectivity/nsd:virtual-link-profile-id +
+
+   + + constituent-cpd-id[constituent-base-element-id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:vnf-profile/nsd:virtual-link-connectivity/nsd:constituent-cpd-id
+
+   + constituent-base-element-id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:vnf-profile/nsd:virtual-link-connectivity/nsd:constituent-cpd-id/nsd:constituent-base-element-id +
+
+   + constituent-cpd-id +
+
leafleafrefconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:vnf-profile/nsd:virtual-link-connectivity/nsd:constituent-cpd-id/nsd:constituent-cpd-id +
+
+   + ns-vld:ip-address +
+
leafinet:ip-addressconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:vnf-profile/nsd:virtual-link-connectivity/nsd:constituent-cpd-id/ns-vld:ip-address +
+
+   + + pnf-profile[id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:pnf-profile
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:pnf-profile/nsd:id +
+
+   + pnfd-id +
+
leafleafrefconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:pnf-profile/nsd:pnfd-id +
+
+   + + virtual-link-connectivity[virtual-link-profile-id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:pnf-profile/nsd:virtual-link-connectivity
+
+   + virtual-link-profile-id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:pnf-profile/nsd:virtual-link-connectivity/nsd:virtual-link-profile-id +
+
+   + + constituent-cpd-id[constituent-base-element-id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:pnf-profile/nsd:virtual-link-connectivity/nsd:constituent-cpd-id
+
+   + constituent-base-element-id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:pnf-profile/nsd:virtual-link-connectivity/nsd:constituent-cpd-id/nsd:constituent-base-element-id +
+
+   + constituent-cpd-id +
+
leafleafrefconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:pnf-profile/nsd:virtual-link-connectivity/nsd:constituent-cpd-id/nsd:constituent-cpd-id +
+
+   + + virtual-link-profile[id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/nsd:id +
+
+   + virtual-link-desc-id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/nsd:virtual-link-desc-id +
+
+   + flavour-id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/nsd:flavour-id +
+
+   + + local-affinity-or-anti-affinity-rule[affinity-type affinity-scope] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/nsd:local-affinity-or-anti-affinity-rule
+
+   + affinity-type +
+
leafaffinity-typeconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/nsd:local-affinity-or-anti-affinity-rule/nsd:affinity-type +
+
+   + affinity-scope +
+
leafaffinity-scopeconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/nsd:local-affinity-or-anti-affinity-rule/nsd:affinity-scope +
+
+   + + affinity-or-anti-affinity-group[id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/nsd:affinity-or-anti-affinity-group
+
+   + id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/nsd:affinity-or-anti-affinity-group/nsd:id +
+
+   + + max-bitrate-requirements +
+
containerconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/nsd:max-bitrate-requirements
+
+   + root +
+
leafuint64configcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/nsd:max-bitrate-requirements/nsd:root +
+
+   + leaf +
+
leafuint64config?current/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/nsd:max-bitrate-requirements/nsd:leaf +
+
+   + + min-bitrate-requirements +
+
containerconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/nsd:min-bitrate-requirements
+
+   + root +
+
leafuint64configcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/nsd:min-bitrate-requirements/nsd:root +
+
+   + leaf +
+
leafuint64config?current/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/nsd:min-bitrate-requirements/nsd:leaf +
+
+   + + ip-profiles:virtual-link-protocol-data +
+
containerconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/ip-profiles:virtual-link-protocol-data
+
+   + ip-profiles:associated-layer-protocol +
+
leafidentityrefconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/ip-profiles:virtual-link-protocol-data/ip-profiles:associated-layer-protocol +
+
+   + + ip-profiles:l2-protocol-data +
+
containerconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/ip-profiles:virtual-link-protocol-data/ip-profiles:l2-protocol-data
+
+   + ip-profiles:name +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/ip-profiles:virtual-link-protocol-data/ip-profiles:l2-protocol-data/ip-profiles:name +
+
+   + ip-profiles:network-type +
+
leafenumerationconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/ip-profiles:virtual-link-protocol-data/ip-profiles:l2-protocol-data/ip-profiles:network-type +
+
+   + ip-profiles:vlan-transparent +
+
leafbooleanconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/ip-profiles:virtual-link-protocol-data/ip-profiles:l2-protocol-data/ip-profiles:vlan-transparent +
+
+   + ip-profiles:mtu +
+
leafuint16config?current/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/ip-profiles:virtual-link-protocol-data/ip-profiles:l2-protocol-data/ip-profiles:mtu +
+
+   + + ip-profiles:l3-protocol-data +
+
containerconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/ip-profiles:virtual-link-protocol-data/ip-profiles:l3-protocol-data
+
+   + ip-profiles:name +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/ip-profiles:virtual-link-protocol-data/ip-profiles:l3-protocol-data/ip-profiles:name +
+
+   + ip-profiles:ip-version +
+
leafenumerationconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/ip-profiles:virtual-link-protocol-data/ip-profiles:l3-protocol-data/ip-profiles:ip-version +
+
+   + ip-profiles:cidr +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/ip-profiles:virtual-link-protocol-data/ip-profiles:l3-protocol-data/ip-profiles:cidr +
+
+   + ip-profiles:ip-allocation-pools +
+
leaf-liststringconfig*current/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/ip-profiles:virtual-link-protocol-data/ip-profiles:l3-protocol-data/ip-profiles:ip-allocation-pools +
+
+   + ip-profiles:gateway-ip +
+
leafinet:ip-addressconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/ip-profiles:virtual-link-protocol-data/ip-profiles:l3-protocol-data/ip-profiles:gateway-ip +
+
+   + ip-profiles:dhcp-enabled +
+
leafbooleanconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/ip-profiles:virtual-link-protocol-data/ip-profiles:l3-protocol-data/ip-profiles:dhcp-enabled +
+
+   + ip-profiles:ipv6-address-mode +
+
leafenumerationconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/ip-profiles:virtual-link-protocol-data/ip-profiles:l3-protocol-data/ip-profiles:ipv6-address-mode +
+
+   + ns-various:security-group +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/ip-profiles:virtual-link-protocol-data/ip-profiles:l3-protocol-data/ns-various:security-group +
+
+   + + scaling-aspect[id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:scaling-aspect
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:scaling-aspect/nsd:id +
+
+   + name +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:scaling-aspect/nsd:name +
+
+   + description +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:scaling-aspect/nsd:description +
+
+   + scaling-level +
+
leafleafrefconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:scaling-aspect/nsd:scaling-level +
+
+   + + affinity-or-anti-affinity-group[id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:affinity-or-anti-affinity-group
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:affinity-or-anti-affinity-group/nsd:id +
+
+   + type +
+
leafaffinity-typeconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:affinity-or-anti-affinity-group/nsd:type +
+
+   + scope +
+
leafaffinity-scopeconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:affinity-or-anti-affinity-group/nsd:scope +
+
+   + + ns-instantiation-level[id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-instantiation-level
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-instantiation-level/nsd:id +
+
+   + description +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-instantiation-level/nsd:description +
+
+   + + vnf-to-level-mapping[vnf-profile-id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-instantiation-level/nsd:vnf-to-level-mapping
+
+   + vnf-profile-id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-instantiation-level/nsd:vnf-to-level-mapping/nsd:vnf-profile-id +
+
+   + number-of-instances +
+
leafuint32config?current/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-instantiation-level/nsd:vnf-to-level-mapping/nsd:number-of-instances +
+
+   + + virtual-link-to-level-mapping[virtual-link-profile-id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-instantiation-level/nsd:virtual-link-to-level-mapping
+
+   + virtual-link-profile-id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-instantiation-level/nsd:virtual-link-to-level-mapping/nsd:virtual-link-profile-id +
+
+   + root +
+
leafuint64configcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-instantiation-level/nsd:virtual-link-to-level-mapping/nsd:root +
+
+   + leaf +
+
leafuint64config?current/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-instantiation-level/nsd:virtual-link-to-level-mapping/nsd:leaf +
+
+   + + ns-to-level-mapping[ns-profile-id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-instantiation-level/nsd:ns-to-level-mapping
+
+   + ns-profile-id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-instantiation-level/nsd:ns-to-level-mapping/nsd:ns-profile-id +
+
+   + number-of-instances +
+
leafuint32config?current/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-instantiation-level/nsd:ns-to-level-mapping/nsd:number-of-instances +
+
+   + default-instantiation-level +
+
leafleafrefconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:default-instantiation-level +
+
+   + + ns-profile[id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-profile
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-profile/nsd:id +
+
+   + nsd-id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-profile/nsd:nsd-id +
+
+   + ns-df-id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-profile/nsd:ns-df-id +
+
+   + instantiation-level-id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-profile/nsd:instantiation-level-id +
+
+   + min-number-of-instances +
+
leafuint16config?current/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-profile/nsd:min-number-of-instances +
+
+   + max-number-of-instances +
+
leafuint16config?current/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-profile/nsd:max-number-of-instances +
+
+   + + affinity-or-anti-affinity-group-id[id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-profile/nsd:affinity-or-anti-affinity-group-id
+
+   + id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-profile/nsd:affinity-or-anti-affinity-group-id/nsd:id +
+
+   + + virtual-link-connectivity[virtual-link-profile-id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-profile/nsd:virtual-link-connectivity
+
+   + virtual-link-profile-id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-profile/nsd:virtual-link-connectivity/nsd:virtual-link-profile-id +
+
+   + + constituent-cpd-id[constituent-base-element-id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-profile/nsd:virtual-link-connectivity/nsd:constituent-cpd-id
+
+   + constituent-base-element-id +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-profile/nsd:virtual-link-connectivity/nsd:constituent-cpd-id/nsd:constituent-base-element-id +
+
+   + constituent-cpd-id +
+
leafleafrefconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:ns-profile/nsd:virtual-link-connectivity/nsd:constituent-cpd-id/nsd:constituent-cpd-id +
+
+   + + dependencies[id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:dependencies
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:dependencies/nsd:id +
+
+   + + (primary-id) +
+
choiceconfigChoicecurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:dependencies
+
+   + + :(primary-vnf-profile) +
+
caseconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:dependencies
+
+   + primary-vnf-profile +
+
leafleafrefconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:dependencies/nsd:primary-vnf-profile +
+
+   + + :(primary-ns-profile) +
+
caseconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:dependencies
+
+   + primary-ns-profile +
+
leafleafrefconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:dependencies/nsd:primary-ns-profile +
+
+   + + (secondary-id) +
+
choiceconfigChoicecurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:dependencies
+
+   + + :(secondary-vnf-profile) +
+
caseconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:dependencies
+
+   + secondary-vnf-profile +
+
leafleafrefconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:dependencies/nsd:secondary-vnf-profile +
+
+   + + :(secondary-ns-profile) +
+
caseconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:dependencies
+
+   + secondary-ns-profile +
+
leafleafrefconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:dependencies/nsd:secondary-ns-profile +
+
+   + + monitored-info[id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:monitored-info
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:monitored-info/nsd:id +
+
+   + + vnf-indicator-info +
+
containerconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:monitored-info/nsd:vnf-indicator-info
+
+   + vnfd-id +
+
leafleafrefconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:monitored-info/nsd:vnf-indicator-info/nsd:vnfd-id +
+
+   + vnf-indicator +
+
leafleafrefconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:monitored-info/nsd:vnf-indicator-info/nsd:vnf-indicator +
+
+   + + monitoring-parameter +
+
containerconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:monitored-info/nsd:monitoring-parameter
+
+   + id +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:monitored-info/nsd:monitoring-parameter/nsd:id +
+
+   + name +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:monitored-info/nsd:monitoring-parameter/nsd:name +
+
+   + performance-metric +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/nsd:df/nsd:monitored-info/nsd:monitoring-parameter/nsd:performance-metric +
+
+   + collection-period +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:df/nsd:monitored-info/nsd:monitoring-parameter/nsd:collection-period +
+
+   + signature +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:signature +
+
+   + algorithm +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:algorithm +
+
+   + certificate +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/nsd:certificate +
+
+   + + ns-configuration:ns-configuration +
+
containerconfigcurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration
+
+   + + (config-method) +
+
choiceconfigChoicecurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration
+
+   + + :(script) +
+
caseconfigcurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration
+
+   + + ns-configuration:script +
+
containerconfigcurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:script
+
+   + ns-configuration:script-type +
+
leafenumerationconfig?current/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:script/ns-configuration:script-type +
+
+   + + :(juju) +
+
caseconfigcurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration
+
+   + + ns-configuration:juju +
+
containerconfigcurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:juju
+
+   + ns-configuration:charm +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:juju/ns-configuration:charm +
+
+   + ns-configuration:proxy +
+
leafbooleanconfig?current/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:juju/ns-configuration:proxy +
+
+   + + ns-configuration:config-primitive[name] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:config-primitive
+
+   + ns-configuration:name +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:config-primitive/ns-configuration:name +
+
+   + + ns-configuration:parameter[name] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:config-primitive/ns-configuration:parameter
+
+   + ns-configuration:name +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:config-primitive/ns-configuration:parameter/ns-configuration:name +
+
+   + ns-configuration:data-type +
+
leafcommon:parameter-data-typeconfig?current/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:config-primitive/ns-configuration:parameter/ns-configuration:data-type +
+
+   + ns-configuration:mandatory +
+
leafbooleanconfig?current/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:config-primitive/ns-configuration:parameter/ns-configuration:mandatory +
+
+   + ns-configuration:default-value +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:config-primitive/ns-configuration:parameter/ns-configuration:default-value +
+
+   + ns-configuration:parameter-pool +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:config-primitive/ns-configuration:parameter/ns-configuration:parameter-pool +
+
+   + ns-configuration:read-only +
+
leafbooleanconfig?current/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:config-primitive/ns-configuration:parameter/ns-configuration:read-only +
+
+   + ns-configuration:hidden +
+
leafbooleanconfig?current/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:config-primitive/ns-configuration:parameter/ns-configuration:hidden +
+
+   + ns-configuration:user-defined-script +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:config-primitive/ns-configuration:user-defined-script +
+
+   + + ns-configuration:initial-config-primitive[seq] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:initial-config-primitive
+
+   + ns-configuration:seq +
+
leafuint64configcurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:initial-config-primitive/ns-configuration:seq +
+
+   + + (primitive-type) +
+
choiceconfigChoicecurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:initial-config-primitive
+
+   + + :(primitive-definition) +
+
caseconfigcurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:initial-config-primitive
+
+   + ns-configuration:name +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:initial-config-primitive/ns-configuration:name +
+
+   + + ns-configuration:parameter[name] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:initial-config-primitive/ns-configuration:parameter
+
+   + ns-configuration:name +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:initial-config-primitive/ns-configuration:parameter/ns-configuration:name +
+
+   + ns-configuration:data-type +
+
leafcommon:parameter-data-typeconfig?current/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:initial-config-primitive/ns-configuration:parameter/ns-configuration:data-type +
+
+   + ns-configuration:value +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:initial-config-primitive/ns-configuration:parameter/ns-configuration:value +
+
+   + ns-configuration:user-defined-script +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:initial-config-primitive/ns-configuration:user-defined-script +
+
+   + + ns-configuration:terminate-config-primitive[seq] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:terminate-config-primitive
+
+   + ns-configuration:seq +
+
leafuint64configcurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:terminate-config-primitive/ns-configuration:seq +
+
+   + ns-configuration:name +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:terminate-config-primitive/ns-configuration:name +
+
+   + + ns-configuration:parameter[name] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:terminate-config-primitive/ns-configuration:parameter
+
+   + ns-configuration:name +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:terminate-config-primitive/ns-configuration:parameter/ns-configuration:name +
+
+   + ns-configuration:data-type +
+
leafcommon:parameter-data-typeconfig?current/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:terminate-config-primitive/ns-configuration:parameter/ns-configuration:data-type +
+
+   + ns-configuration:value +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:terminate-config-primitive/ns-configuration:parameter/ns-configuration:value +
+
+   + ns-configuration:user-defined-script +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:terminate-config-primitive/ns-configuration:user-defined-script +
+
+   + + ns-configuration:metrics[name] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:metrics
+
+   + ns-configuration:name +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:metrics/ns-configuration:name +
+
+   + + ns-configuration:relation[name] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:relation
+
+   + ns-configuration:name +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:relation/ns-configuration:name +
+
+   + + ns-configuration:entities[id] +
+
listconfigcurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:relation/ns-configuration:entities
+
+   + ns-configuration:id +
+
leafstringconfigcurrent/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:relation/ns-configuration:entities/ns-configuration:id +
+
+   + ns-configuration:endpoint +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/ns-configuration:ns-configuration/ns-configuration:relation/ns-configuration:entities/ns-configuration:endpoint +
+
+   + ns-various:description +
+
leafstringconfig?current/nsd:nsd/nsd:nsd/ns-various:description +
+
+   + + pnfd[id] +
+
listconfigcurrent/nsd:nsd/nsd:pnfd
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:pnfd/nsd:id +
+
+   + function-description +
+
leafstringconfig?current/nsd:nsd/nsd:pnfd/nsd:function-description +
+
+   + provider +
+
leafstringconfig?current/nsd:nsd/nsd:pnfd/nsd:provider +
+
+   + version +
+
leafstringconfigcurrent/nsd:nsd/nsd:pnfd/nsd:version +
+
+   + invariant-id +
+
leafstringconfig?current/nsd:nsd/nsd:pnfd/nsd:invariant-id +
+
+   + name +
+
leafstringconfig?current/nsd:nsd/nsd:pnfd/nsd:name +
+
+   + + ext-cpd[id] +
+
listconfigcurrent/nsd:nsd/nsd:pnfd/nsd:ext-cpd
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:pnfd/nsd:ext-cpd/nsd:id +
+
+   + layer-protocol +
+
leaf-listidentityrefconfig*current/nsd:nsd/nsd:pnfd/nsd:ext-cpd/nsd:layer-protocol +
+
+   + role +
+
leafidentityrefconfig?current/nsd:nsd/nsd:pnfd/nsd:ext-cpd/nsd:role +
+
+   + description +
+
leafstringconfig?current/nsd:nsd/nsd:pnfd/nsd:ext-cpd/nsd:description +
+
+   + + protocol[associated-layer-protocol] +
+
listconfigcurrent/nsd:nsd/nsd:pnfd/nsd:ext-cpd/nsd:protocol
+
+   + associated-layer-protocol +
+
leafidentityrefconfigcurrent/nsd:nsd/nsd:pnfd/nsd:ext-cpd/nsd:protocol/nsd:associated-layer-protocol +
+
+   + + address-data[type] +
+
listconfigcurrent/nsd:nsd/nsd:pnfd/nsd:ext-cpd/nsd:protocol/nsd:address-data
+
+   + type +
+
leafidentityrefconfigcurrent/nsd:nsd/nsd:pnfd/nsd:ext-cpd/nsd:protocol/nsd:address-data/nsd:type +
+
+   + + l2-address-data +
+
containerconfigcurrent/nsd:nsd/nsd:pnfd/nsd:ext-cpd/nsd:protocol/nsd:address-data/nsd:l2-address-data
+
+   + mac-address-assignment +
+
leafbooleanconfigcurrent/nsd:nsd/nsd:pnfd/nsd:ext-cpd/nsd:protocol/nsd:address-data/nsd:l2-address-data/nsd:mac-address-assignment +
+
+   + + l3-address-data +
+
containerconfigcurrent/nsd:nsd/nsd:pnfd/nsd:ext-cpd/nsd:protocol/nsd:address-data/nsd:l3-address-data
+
+   + ip-address-assignment +
+
leafbooleanconfigcurrent/nsd:nsd/nsd:pnfd/nsd:ext-cpd/nsd:protocol/nsd:address-data/nsd:l3-address-data/nsd:ip-address-assignment +
+
+   + floating-ip-activated +
+
leafbooleanconfigcurrent/nsd:nsd/nsd:pnfd/nsd:ext-cpd/nsd:protocol/nsd:address-data/nsd:l3-address-data/nsd:floating-ip-activated +
+
+   + ip-address-type +
+
leafenumerationconfig?current/nsd:nsd/nsd:pnfd/nsd:ext-cpd/nsd:protocol/nsd:address-data/nsd:l3-address-data/nsd:ip-address-type +
+
+   + number-of-ip-addresses +
+
leafuint32config?current/nsd:nsd/nsd:pnfd/nsd:ext-cpd/nsd:protocol/nsd:address-data/nsd:l3-address-data/nsd:number-of-ip-addresses +
+
+   + trunk-mode +
+
leafbooleanconfig?current/nsd:nsd/nsd:pnfd/nsd:ext-cpd/nsd:trunk-mode +
+
+   + + security[signature] +
+
listconfigcurrent/nsd:nsd/nsd:pnfd/nsd:security
+
+   + signature +
+
leafstringconfigcurrent/nsd:nsd/nsd:pnfd/nsd:security/nsd:signature +
+
+   + algorithm +
+
leafstringconfig?current/nsd:nsd/nsd:pnfd/nsd:security/nsd:algorithm +
+
+   + certificate +
+
leafstringconfig?current/nsd:nsd/nsd:pnfd/nsd:security/nsd:certificate +
+
+   + geographical-location-info +
+
leafstringconfig?current/nsd:nsd/nsd:pnfd/nsd:geographical-location-info +
+
+   + + security-group-rule[id] +
+
listconfigcurrent/nsd:nsd/nsd:pnfd/nsd:security-group-rule
+
+   + id +
+
leafstringconfigcurrent/nsd:nsd/nsd:pnfd/nsd:security-group-rule/nsd:id +
+
+   + description +
+
leafstringconfig?current/nsd:nsd/nsd:pnfd/nsd:security-group-rule/nsd:description +
+
+   + direction +
+
leafenumerationconfig?current/nsd:nsd/nsd:pnfd/nsd:security-group-rule/nsd:direction +
+
+   + ether-type +
+
leafenumerationconfig?current/nsd:nsd/nsd:pnfd/nsd:security-group-rule/nsd:ether-type +
+
+   + protocol +
+
leafenumerationconfig?current/nsd:nsd/nsd:pnfd/nsd:security-group-rule/nsd:protocol +
+
+   + port-range-min +
+
leafuint16config?current/nsd:nsd/nsd:pnfd/nsd:security-group-rule/nsd:port-range-min +
+
+   + port-range-max +
+
leafuint16config?current/nsd:nsd/nsd:pnfd/nsd:security-group-rule/nsd:port-range-max + +
+
+ + + diff --git a/augments/nsd/ip-profiles.yang b/augments/nsd/ip-profiles.yang new file mode 100644 index 0000000..3744c79 --- /dev/null +++ b/augments/nsd/ip-profiles.yang @@ -0,0 +1,218 @@ +/* + Copyright 2019 Whitestack LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ +module ip-profiles { + yang-version 1.1; + namespace "urn:etsi:osm:yang:augments"; + prefix "ip-profiles"; + + import etsi-nfv-nsd { + prefix nsd; + } + + import ietf-inet-types { + prefix inet; + } + + import etsi-nfv-descriptors { + prefix nfv; + } + + grouping extended-vld-protocol-data{ + container virtual-link-protocol-data { + leaf associated-layer-protocol { + type identityref { + base nfv:layer-protocol; + } + description + "One of the values of the attribute layerProtocol of + the ConnectivityType IE."; + reference + "GS NFV IFA011: Section 7.1.8.13, + VirtualLinkProtocolData information element."; + } + + container l2-protocol-data { + when "(../associated-layer-protocol = 'Ethernet') or " + + "(../associated-layer-protocol = 'MPLS') or " + + "(../associated-layer-protocol = 'ODU2') or " + + "(../associated-layer-protocol = 'Pseudo-Wire')"; + + leaf name { + type string; + description + "Network name associated with this L2 protocol."; + reference + "GS NFV IFA011: Section 7.1.8.14, + L2ProtocolData information element."; + } + + leaf network-type { + type enumeration { + enum flat; + enum vlan; + enum vxlan; + enum gre; + } + description + "Specifies the network type for this L2 protocol. + Possible values: FLAT, VLAN, VXLAN, GRE."; + reference + "GS NFV IFA011: Section 7.1.8.14, + L2ProtocolData information element."; + } + + leaf vlan-transparent { + type boolean; + description + "Specifies whether to support VLAN transparency for + this L2 protocol or not."; + reference + "GS NFV IFA011: Section 7.1.8.14, + L2ProtocolData information element."; + } + + leaf mtu { + type uint16; + description + "Specifies the maximum transmission unit (MTU) value + for this L2 protocol."; + reference + "GS NFV IFA011: Section 7.1.8.14, + L2ProtocolData information element."; + } + description + "Specifies the L2 protocol data for this virtual link. + Shall be present when the associatedLayerProtocol + attribute indicates a L2 protocol and shall be absent + otherwise."; + reference + "GS NFV IFA011: Section 7.1.8.13, + VirtualLinkProtocolData information element."; + } + + container l3-protocol-data { + when "(../associated-layer-protocol = 'IPv4') or " + + "(../associated-layer-protocol = 'IPv6')"; + + leaf name { + type string; + description + "Network name associated with this L3 protocol."; + reference + "GS NFV IFA011: Section 7.1.8.15, + L3ProtocolData information element."; + } + + leaf ip-version { + type enumeration { + enum ipv4; + enum ipv6; + } + default "ipv4"; + description + "Specifies IP version of this L3 protocol. + Value: + • IPV4. + • IPV6."; + reference + "GS NFV IFA011: Section 7.1.8.15, + L3ProtocolData information element."; + } + + leaf cidr { + type string; + description + "Specifies the CIDR (Classless InterDomain Routing) + of this L3 protocol."; + reference + "GS NFV IFA011: Section 7.1.8.15, + L3ProtocolData information element."; + } + + leaf-list ip-allocation-pools { + type string; + description + "Specifies the allocation pools with start and end + IP addresses for this L3 protocol."; + reference + "GS NFV IFA011: Section 7.1.8.15, + L3ProtocolData information element."; + } + + leaf gateway-ip { + type inet:ip-address; + description + "Specifies the gateway IP address for this L3 + protocol."; + reference + "GS NFV IFA011: Section 7.1.8.15, + L3ProtocolData information element."; + } + + leaf dhcp-enabled { + type boolean; + default "true"; + description + "Indicates whether DHCP (Dynamic Host Configuration + Protocol) is enabled or disabled for this L3 + protocol."; + reference + "GS NFV IFA011: Section 7.1.8.15, + L3ProtocolData information element."; + } + + leaf ipv6-address-mode { + when "../ip-version = 'ipv6'"; + type enumeration { + enum slaac; + enum dhcpv6-stateful; + enum dhcpv6-stateless; + } + description + "Specifies IPv6 address mode. Possible values: + • SLAAC. + • DHCPV6-STATEFUL. + • DHCPV6-STATELESS. + May be present when the value of the ipVersion + attribute is 'IPV6' and shall be absent otherwise."; + reference + "GS NFV IFA011: Section 7.1.8.15, + L3ProtocolData information element."; + } + description + "Specifies the L3 protocol data for this virtual link. + Shall be present when the associatedLayerProtocol + attribute indicates a L3 protocol and shall be absent + otherwise."; + reference + "GS NFV IFA011: Section 7.1.8.13, + VirtualLinkProtocolData information element."; + } + description + "Specifies the protocol data for a VL instantiated + according to this profile. Cardinality 0 is used when + no protocol data needs to be specified."; + reference + "GS NFV IFA011: Section 7.1.8.4, VirtualLinkProfile + information element."; + } + } + + augment "/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile" { + uses extended-vld-protocol-data; + } +} \ No newline at end of file diff --git a/augments/nsd/ns-configuration.yang b/augments/nsd/ns-configuration.yang new file mode 100644 index 0000000..a4effd2 --- /dev/null +++ b/augments/nsd/ns-configuration.yang @@ -0,0 +1,44 @@ +/* + Copyright 2020 Whitestack LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +module ns-configuration { + yang-version 1.1; + namespace "urn:etsi:osm:yang:augments:ns-configuration"; + prefix "ns-configuration"; + + import etsi-nfv-nsd { + prefix nsd; + } + + import common-augments { + prefix common; + } + + grouping extended-ns-configuration { + container ns-configuration { + description + "Information about NS configuration."; + + uses common:vnfc-configuration; + uses common:vnfc-relations; + } + } + + augment "/nsd:nsd/nsd:nsd" { + uses extended-ns-configuration; + } +} diff --git a/augments/nsd/ns-various.yang b/augments/nsd/ns-various.yang new file mode 100644 index 0000000..921278d --- /dev/null +++ b/augments/nsd/ns-various.yang @@ -0,0 +1,65 @@ +/* + Copyright 2020 Whitestack LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +module ns-various { + yang-version 1.1; + namespace "urn:etsi:osm:yang:augments:ns-various"; + prefix "ns-various"; + + import etsi-nfv-nsd { + prefix nsd; + } + + import ip-profiles { + prefix ip-profiles; + } + + import common-augments { + prefix common; + } + + grouping extended-floating-ip { + 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; + } + } + + grouping extended-security-group { + leaf security-group { + description + "Name of the security group"; + type string; + } + } + + augment "/nsd:nsd/nsd:nsd" { + uses common:description; + } + + augment "/nsd:nsd/nsd:nsd/nsd:sapd" { + uses extended-floating-ip; + } + + augment "/nsd:nsd/nsd:nsd/nsd:df/nsd:virtual-link-profile/ip-profiles:virtual-link-protocol-data/ip-profiles:l3-protocol-data" { + uses extended-security-group; + } +} diff --git a/augments/nsd/ns-vld.yang b/augments/nsd/ns-vld.yang new file mode 100644 index 0000000..49f5752 --- /dev/null +++ b/augments/nsd/ns-vld.yang @@ -0,0 +1,61 @@ +/* + Copyright 2020 Whitestack LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +module ns-vld { + yang-version 1.1; + namespace "urn:etsi:osm:yang:augments:ns-vld"; + prefix "ns-vld"; + + import etsi-nfv-nsd { + prefix nsd; + } + + import common-augments { + prefix common; + } + + grouping extended-vld { + container provider-network { + description + "Container for the provider network."; + leaf physical-network { + description + "Name of the physical network on which the provider + network is built."; + type string; + } + + leaf segmentation_id { + description + "ID of segregated virtual networks"; + type uint32; + } + } + + leaf mgmt-network { + description + "Flag indicating whether this network is a VIM management network"; + type boolean; + default false; + } + } + + + augment "/nsd:nsd/nsd:nsd/nsd:virtual-link-desc" { + uses extended-vld; + } +} diff --git a/augments/vnfd.html b/augments/vnfd.html new file mode 100644 index 0000000..d668e0d --- /dev/null +++ b/augments/vnfd.html @@ -0,0 +1,9973 @@ + + + etsi-nfv-vnfd additional-info alarm alternative-images cloud-init configuration day1-2 epa interface kdu mgmt-interface scaling various vip + + + + + + + + + +
+
+

Module: etsi-nfv-vnfd, Namespace: + urn:etsi:nfv:yang:etsi-nfv-vnfd, Prefix: + vnfd

+

Module: additional-info, Namespace: + urn:etsi:osm:yang:augments:additional-info, Prefix: + additional-info

+

Module: alarm, Namespace: + urn:etsi:osm:yang:augments:alarm, Prefix: + alarm

+

Module: alternative-images, Namespace: + urn:etsi:osm:yang:alternative-images, Prefix: + alternative-images

+

Module: cloud-init, Namespace: + urn:etsi:osm:yang:augments, Prefix: + cloud-init

+

Module: configuration, Namespace: + urn:etsi:osm:yang:configuration, Prefix: + configuration

+

Module: day1-2, Namespace: + urn:etsi:osm:yang:augments:day1-2, Prefix: + day1-2

+

Module: epa, Namespace: + urn:etsi:osm:yang:augments:epa, Prefix: + epa

+

Module: interface, Namespace: + urn:etsi:osm:yang:augments:interface, Prefix: + interface

+

Module: kdu, Namespace: + urn:etsi:osm:yang:augments:kdu, Prefix: + kdu

+

Module: mgmt-interface, Namespace: + urn:etsi:osm:yang:augments:mgmt-interface, Prefix: + mgmt-interface

+

Module: scaling, Namespace: + urn:etsi:osm:yang:augments:scaling, Prefix: + scaling

+

Module: various, Namespace: + urn:etsi:osm:yang:augments:various, Prefix: + various

+

Module: vip, Namespace: + urn:etsi:osm:yang:augments:vip, Prefix: + vip

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ Element + [+]Expand all + [-]Collapse all + SchemaTypeFlagsOptsStatusPath
+
+   + + etsi-nfv-vnfd +
+
module +
+
+   + + vnfd +
+
containerconfigPresencecurrent/vnfd:vnfd
+
+   + id +
+
leafstringconfig?current/vnfd:vnfd/vnfd:id +
+
+   + provider +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:provider +
+
+   + product-name +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:product-name +
+
+   + software-version +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:software-version +
+
+   + version +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:version +
+
+   + product-info-name +
+
leafstringconfig?current/vnfd:vnfd/vnfd:product-info-name +
+
+   + product-info-description +
+
leafstringconfig?current/vnfd:vnfd/vnfd:product-info-description +
+
+   + vnfm-info +
+
leaf-liststringconfig*current/vnfd:vnfd/vnfd:vnfm-info +
+
+   + localization-language +
+
leafstringconfig?current/vnfd:vnfd/vnfd:localization-language +
+
+   + default-localization-language +
+
leafstringconfig?current/vnfd:vnfd/vnfd:default-localization-language +
+
+   + + vdu[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:vdu
+
+   + id +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:vdu/vnfd:id +
+
+   + name +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:vdu/vnfd:name +
+
+   + description +
+
leafstringconfig?current/vnfd:vnfd/vnfd:vdu/vnfd:description +
+
+   + + int-cpd[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd
+
+   + int-virtual-link-desc +
+
leafleafrefconfig?current/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:int-virtual-link-desc +
+
+   + bitrate-requirement +
+
leafuint64config?current/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:bitrate-requirement +
+
+   + + virtual-network-interface-requirement[name] +
+
listconfigcurrent/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:virtual-network-interface-requirement
+
+   + name +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:virtual-network-interface-requirement/vnfd:name +
+
+   + description +
+
leafstringconfig?current/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:virtual-network-interface-requirement/vnfd:description +
+
+   + support-mandatory +
+
leafbooleanconfig?current/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:virtual-network-interface-requirement/vnfd:support-mandatory +
+
+   + + network-interface-requirements[key] +
+
listconfigcurrent/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:virtual-network-interface-requirement/vnfd:network-interface-requirements
+
+   + key +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:virtual-network-interface-requirement/vnfd:network-interface-requirements/vnfd:key +
+
+   + value +
+
leafstringconfig?current/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:virtual-network-interface-requirement/vnfd:network-interface-requirements/vnfd:value +
+
+   + + epa:vif-quota +
+
containerconfigcurrent/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:virtual-network-interface-requirement/epa:vif-quota
+
+   + epa:limit +
+
leafuint64config?current/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:virtual-network-interface-requirement/epa:vif-quota/epa:limit +
+
+   + epa:reserve +
+
leafuint64config?current/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:virtual-network-interface-requirement/epa:vif-quota/epa:reserve +
+
+   + epa:shares +
+
leafuint64config?current/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:virtual-network-interface-requirement/epa:vif-quota/epa:shares +
+
+   + interface:position +
+
leafuint32config?current/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:virtual-network-interface-requirement/interface:position +
+
+   + interface:mac-address +
+
leafstringconfig?current/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:virtual-network-interface-requirement/interface:mac-address +
+
+   + + interface:virtual-interface +
+
containerconfigcurrent/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:virtual-network-interface-requirement/interface:virtual-interface
+
+   + interface:type +
+
leafenumerationconfig?current/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:virtual-network-interface-requirement/interface:virtual-interface/interface:type +
+
+   + interface:vpci +
+
leafstringconfig?current/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:virtual-network-interface-requirement/interface:virtual-interface/interface:vpci +
+
+   + interface:bandwidth +
+
leafuint64config?current/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:virtual-network-interface-requirement/interface:virtual-interface/interface:bandwidth +
+
+   + nicio-requirements +
+
leafleafrefconfig?current/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:nicio-requirements +
+
+   + order +
+
leaf-listuint32config*current/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:order +
+
+   + id +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:id +
+
+   + layer-protocol +
+
leaf-listidentityrefconfig*current/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:layer-protocol +
+
+   + role +
+
leafidentityrefconfig?current/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:role +
+
+   + description +
+
leafstringconfig?current/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:description +
+
+   + + protocol[associated-layer-protocol] +
+
listconfigcurrent/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:protocol
+
+   + associated-layer-protocol +
+
leafidentityrefconfigcurrent/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:protocol/vnfd:associated-layer-protocol +
+
+   + + address-data[type] +
+
listconfigcurrent/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:protocol/vnfd:address-data
+
+   + type +
+
leafidentityrefconfigcurrent/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:protocol/vnfd:address-data/vnfd:type +
+
+   + + l2-address-data +
+
containerconfigcurrent/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:protocol/vnfd:address-data/vnfd:l2-address-data
+
+   + mac-address-assignment +
+
leafbooleanconfigcurrent/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:protocol/vnfd:address-data/vnfd:l2-address-data/vnfd:mac-address-assignment +
+
+   + + l3-address-data +
+
containerconfigcurrent/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:protocol/vnfd:address-data/vnfd:l3-address-data
+
+   + ip-address-assignment +
+
leafbooleanconfigcurrent/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:protocol/vnfd:address-data/vnfd:l3-address-data/vnfd:ip-address-assignment +
+
+   + floating-ip-activated +
+
leafbooleanconfigcurrent/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:protocol/vnfd:address-data/vnfd:l3-address-data/vnfd:floating-ip-activated +
+
+   + ip-address-type +
+
leafenumerationconfig?current/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:protocol/vnfd:address-data/vnfd:l3-address-data/vnfd:ip-address-type +
+
+   + number-of-ip-addresses +
+
leafuint32config?current/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:protocol/vnfd:address-data/vnfd:l3-address-data/vnfd:number-of-ip-addresses +
+
+   + trunk-mode +
+
leafbooleanconfig?current/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:trunk-mode +
+
+   + security-group-rule-id +
+
leafleafrefconfig?current/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:security-group-rule-id +
+
+   + various:port-security-enabled +
+
leafbooleanconfig?current/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/various:port-security-enabled +
+
+   + virtual-compute-desc +
+
leafleafrefconfig?current/vnfd:vnfd/vnfd:vdu/vnfd:virtual-compute-desc +
+
+   + virtual-storage-desc +
+
leaf-listleafrefconfig*current/vnfd:vnfd/vnfd:vdu/vnfd:virtual-storage-desc +
+
+   + + boot-order[key] +
+
listconfigcurrent/vnfd:vnfd/vnfd:vdu/vnfd:boot-order
+
+   + key +
+
leafuint32configcurrent/vnfd:vnfd/vnfd:vdu/vnfd:boot-order/vnfd:key +
+
+   + value +
+
leafleafrefconfig?current/vnfd:vnfd/vnfd:vdu/vnfd:boot-order/vnfd:value +
+
+   + sw-image-desc +
+
leafleafrefconfig?current/vnfd:vnfd/vnfd:vdu/vnfd:sw-image-desc +
+
+   + nfvi-constraint +
+
leaf-liststringconfig*current/vnfd:vnfd/vnfd:vdu/vnfd:nfvi-constraint +
+
+   + + monitoring-parameter[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:vdu/vnfd:monitoring-parameter
+
+   + id +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:vdu/vnfd:monitoring-parameter/vnfd:id +
+
+   + name +
+
leafstringconfig?current/vnfd:vnfd/vnfd:vdu/vnfd:monitoring-parameter/vnfd:name +
+
+   + performance-metric +
+
leafstringconfig?current/vnfd:vnfd/vnfd:vdu/vnfd:monitoring-parameter/vnfd:performance-metric +
+
+   + collection-period +
+
leafuint64config?current/vnfd:vnfd/vnfd:vdu/vnfd:monitoring-parameter/vnfd:collection-period +
+
+   + + configurable-properties[key] +
+
listconfigcurrent/vnfd:vnfd/vnfd:vdu/vnfd:configurable-properties
+
+   + key +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:vdu/vnfd:configurable-properties/vnfd:key +
+
+   + value +
+
leafstringconfig?current/vnfd:vnfd/vnfd:vdu/vnfd:configurable-properties/vnfd:value +
+
+   + boot-data +
+
leafstringconfig?current/vnfd:vnfd/vnfd:vdu/vnfd:boot-data +
+
+   + + alarm:alarm[alarm-id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:vdu/alarm:alarm
+
+   + alarm:alarm-id +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:vdu/alarm:alarm/alarm:alarm-id +
+
+   + alarm:vnf-monitoring-param-ref +
+
leafleafrefconfig?current/vnfd:vnfd/vnfd:vdu/alarm:alarm/alarm:vnf-monitoring-param-ref +
+
+   + alarm:name +
+
leafstringconfig?current/vnfd:vnfd/vnfd:vdu/alarm:alarm/alarm:name +
+
+   + alarm:description +
+
leafstringconfig?current/vnfd:vnfd/vnfd:vdu/alarm:alarm/alarm:description +
+
+   + alarm:vdur-id +
+
leafstringconfig?current/vnfd:vnfd/vnfd:vdu/alarm:alarm/alarm:vdur-id +
+
+   + + alarm:actions +
+
containerconfigcurrent/vnfd:vnfd/vnfd:vdu/alarm:alarm/alarm:actions
+
+   + + alarm:ok[url] +
+
listconfigcurrent/vnfd:vnfd/vnfd:vdu/alarm:alarm/alarm:actions/alarm:ok
+
+   + alarm:url +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:vdu/alarm:alarm/alarm:actions/alarm:ok/alarm:url +
+
+   + + alarm:insufficient-data[url] +
+
listconfigcurrent/vnfd:vnfd/vnfd:vdu/alarm:alarm/alarm:actions/alarm:insufficient-data
+
+   + alarm:url +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:vdu/alarm:alarm/alarm:actions/alarm:insufficient-data/alarm:url +
+
+   + + alarm:alarm[url] +
+
listconfigcurrent/vnfd:vnfd/vnfd:vdu/alarm:alarm/alarm:actions/alarm:alarm
+
+   + alarm:url +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:vdu/alarm:alarm/alarm:actions/alarm:alarm/alarm:url +
+
+   + alarm:repeat +
+
leafbooleanconfig?current/vnfd:vnfd/vnfd:vdu/alarm:alarm/alarm:repeat +
+
+   + alarm:enabled +
+
leafbooleanconfig?current/vnfd:vnfd/vnfd:vdu/alarm:alarm/alarm:enabled +
+
+   + alarm:severity +
+
leafalarm-severity-typeconfig?current/vnfd:vnfd/vnfd:vdu/alarm:alarm/alarm:severity +
+
+   + alarm:statistic +
+
leafalarm-statistic-typeconfig?current/vnfd:vnfd/vnfd:vdu/alarm:alarm/alarm:statistic +
+
+   + alarm:operation +
+
leafrelational-operation-typeconfig?current/vnfd:vnfd/vnfd:vdu/alarm:alarm/alarm:operation +
+
+   + alarm:value +
+
leafdecimal64config?current/vnfd:vnfd/vnfd:vdu/alarm:alarm/alarm:value +
+
+   + alarm:period +
+
leafuint32config?current/vnfd:vnfd/vnfd:vdu/alarm:alarm/alarm:period +
+
+   + alarm:evaluations +
+
leafuint32config?current/vnfd:vnfd/vnfd:vdu/alarm:alarm/alarm:evaluations +
+
+   + alternative-images:alternative-sw-image-desc +
+
leaf-listleafrefconfig*current/vnfd:vnfd/vnfd:vdu/alternative-images:alternative-sw-image-desc +
+
+   + + (cloud-init-input) +
+
choiceconfigChoicecurrent/vnfd:vnfd/vnfd:vdu
+
+   + + :(inline) +
+
caseconfigcurrent/vnfd:vnfd/vnfd:vdu
+
+   + cloud-init:cloud-init +
+
leafstringconfig?current/vnfd:vnfd/vnfd:vdu/cloud-init:cloud-init +
+
+   + + :(filename) +
+
caseconfigcurrent/vnfd:vnfd/vnfd:vdu
+
+   + cloud-init:cloud-init-file +
+
leafstringconfig?current/vnfd:vnfd/vnfd:vdu/cloud-init:cloud-init-file +
+
+   + various:pdu-type +
+
leafstringconfig?current/vnfd:vnfd/vnfd:vdu/various:pdu-type +
+
+   + + various:supplemental-boot-data +
+
containerconfigcurrent/vnfd:vnfd/vnfd:vdu/various:supplemental-boot-data
+
+   + various:boot-data-drive +
+
leafbooleanconfig?current/vnfd:vnfd/vnfd:vdu/various:supplemental-boot-data/various:boot-data-drive +
+
+   + + virtual-compute-desc[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc
+
+   + id +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:id +
+
+   + + logical-node[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:logical-node
+
+   + id +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:logical-node/vnfd:id +
+
+   + + requirement-detail[key] +
+
listconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:logical-node/vnfd:requirement-detail
+
+   + key +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:logical-node/vnfd:requirement-detail/vnfd:key +
+
+   + value +
+
leafstringconfig?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:logical-node/vnfd:requirement-detail/vnfd:value +
+
+   + + request-additional-capability[name] +
+
listconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:request-additional-capability
+
+   + name +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:request-additional-capability/vnfd:name +
+
+   + support-mandatory +
+
leafbooleanconfig?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:request-additional-capability/vnfd:support-mandatory +
+
+   + min-version +
+
leafstringconfig?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:request-additional-capability/vnfd:min-version +
+
+   + preferred-version +
+
leafstringconfig?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:request-additional-capability/vnfd:preferred-version +
+
+   + + target-performance-parameters[key] +
+
listconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:request-additional-capability/vnfd:target-performance-parameters
+
+   + key +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:request-additional-capability/vnfd:target-performance-parameters/vnfd:key +
+
+   + value +
+
leafstringconfig?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:request-additional-capability/vnfd:target-performance-parameters/vnfd:value +
+
+   + compute-requirements +
+
leafstringconfig?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:compute-requirements +
+
+   + + virtual-memory +
+
containerconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory
+
+   + size +
+
leafdecimal64config?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/vnfd:size +
+
+   + over-subscription-policy +
+
leafstringconfig?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/vnfd:over-subscription-policy +
+
+   + + vdu-mem-requirements[key] +
+
listconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/vnfd:vdu-mem-requirements
+
+   + key +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/vnfd:vdu-mem-requirements/vnfd:key +
+
+   + value +
+
leafstringconfig?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/vnfd:vdu-mem-requirements/vnfd:value +
+
+   + numa-enabled +
+
leafbooleanconfig?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/vnfd:numa-enabled +
+
+   + + epa:numa-node-policy +
+
containerconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/epa:numa-node-policy
+
+   + epa:node-cnt +
+
leafuint16config?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/epa:numa-node-policy/epa:node-cnt +
+
+   + epa:mem-policy +
+
leafenumerationconfig?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/epa:numa-node-policy/epa:mem-policy +
+
+   + + epa:node[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/epa:numa-node-policy/epa:node
+
+   + epa:id +
+
leafuint64configcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/epa:numa-node-policy/epa:node/epa:id +
+
+   + + epa:vcpu[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/epa:numa-node-policy/epa:node/epa:vcpu
+
+   + epa:id +
+
leafuint64configcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/epa:numa-node-policy/epa:node/epa:vcpu/epa:id +
+
+   + epa:memory-mb +
+
leafuint64config?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/epa:numa-node-policy/epa:node/epa:memory-mb +
+
+   + + (om-numa-type) +
+
choiceconfigChoicecurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/epa:numa-node-policy/epa:node
+
+   + + :(cores) +
+
caseconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/epa:numa-node-policy/epa:node
+
+   + epa:num-cores +
+
leafuint8config?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/epa:numa-node-policy/epa:node/epa:num-cores +
+
+   + + :(paired-threads) +
+
caseconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/epa:numa-node-policy/epa:node
+
+   + + epa:paired-threads +
+
containerconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/epa:numa-node-policy/epa:node/epa:paired-threads
+
+   + epa:num-paired-threads +
+
leafuint8config?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/epa:numa-node-policy/epa:node/epa:paired-threads/epa:num-paired-threads +
+
+   + + epa:paired-thread-ids[thread-a] +
+
listconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/epa:numa-node-policy/epa:node/epa:paired-threads/epa:paired-thread-ids
+
+   + epa:thread-a +
+
leafuint8configcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/epa:numa-node-policy/epa:node/epa:paired-threads/epa:paired-thread-ids/epa:thread-a +
+
+   + epa:thread-b +
+
leafuint8config?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/epa:numa-node-policy/epa:node/epa:paired-threads/epa:paired-thread-ids/epa:thread-b +
+
+   + + :(threads) +
+
caseconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/epa:numa-node-policy/epa:node
+
+   + epa:num-threads +
+
leafuint8config?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/epa:numa-node-policy/epa:node/epa:num-threads +
+
+   + epa:mempage-size +
+
leafenumerationconfig?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/epa:mempage-size +
+
+   + + epa:mem-quota +
+
containerconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/epa:mem-quota
+
+   + epa:limit +
+
leafuint64config?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/epa:mem-quota/epa:limit +
+
+   + epa:reserve +
+
leafuint64config?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/epa:mem-quota/epa:reserve +
+
+   + epa:shares +
+
leafuint64config?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory/epa:mem-quota/epa:shares +
+
+   + + virtual-cpu +
+
containerconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-cpu
+
+   + cpu-architecture +
+
leafstringconfig?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-cpu/vnfd:cpu-architecture +
+
+   + num-virtual-cpu +
+
leafuint16config?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-cpu/vnfd:num-virtual-cpu +
+
+   + clock +
+
leafuint32config?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-cpu/vnfd:clock +
+
+   + oversubscription-policy +
+
leafstringconfig?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-cpu/vnfd:oversubscription-policy +
+
+   + + vdu-cpu-requirements[key] +
+
listconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-cpu/vnfd:vdu-cpu-requirements
+
+   + key +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-cpu/vnfd:vdu-cpu-requirements/vnfd:key +
+
+   + value +
+
leafstringconfig?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-cpu/vnfd:vdu-cpu-requirements/vnfd:value +
+
+   + + pinning +
+
containerconfigPresencecurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-cpu/vnfd:pinning
+
+   + policy +
+
leafenumerationconfig?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-cpu/vnfd:pinning/vnfd:policy +
+
+   + + rule[key] +
+
listconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-cpu/vnfd:pinning/vnfd:rule
+
+   + key +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-cpu/vnfd:pinning/vnfd:rule/vnfd:key +
+
+   + value +
+
leafstringconfig?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-cpu/vnfd:pinning/vnfd:rule/vnfd:value +
+
+   + epa:thread-policy +
+
leafenumerationconfig?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-cpu/vnfd:pinning/epa:thread-policy +
+
+   + + epa:cpu-quota +
+
containerconfigcurrent/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-cpu/epa:cpu-quota
+
+   + epa:limit +
+
leafuint64config?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-cpu/epa:cpu-quota/epa:limit +
+
+   + epa:reserve +
+
leafuint64config?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-cpu/epa:cpu-quota/epa:reserve +
+
+   + epa:shares +
+
leafuint64config?current/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-cpu/epa:cpu-quota/epa:shares +
+
+   + + virtual-storage-desc[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:virtual-storage-desc
+
+   + id +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:virtual-storage-desc/vnfd:id +
+
+   + type-of-storage +
+
leafidentityrefconfig?current/vnfd:vnfd/vnfd:virtual-storage-desc/vnfd:type-of-storage +
+
+   + size-of-storage +
+
leafuint64config?current/vnfd:vnfd/vnfd:virtual-storage-desc/vnfd:size-of-storage +
+
+   + + vdu-storage-requirements[key] +
+
listconfigcurrent/vnfd:vnfd/vnfd:virtual-storage-desc/vnfd:vdu-storage-requirements
+
+   + key +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:virtual-storage-desc/vnfd:vdu-storage-requirements/vnfd:key +
+
+   + value +
+
leafstringconfig?current/vnfd:vnfd/vnfd:virtual-storage-desc/vnfd:vdu-storage-requirements/vnfd:value +
+
+   + rdma-enabled +
+
leafbooleanconfig?current/vnfd:vnfd/vnfd:virtual-storage-desc/vnfd:rdma-enabled +
+
+   + sw-image-desc +
+
leafleafrefconfig?current/vnfd:vnfd/vnfd:virtual-storage-desc/vnfd:sw-image-desc +
+
+   + additional-info:description +
+
leafstringconfig?current/vnfd:vnfd/vnfd:virtual-storage-desc/additional-info:description +
+
+   + + epa:disk-io-quota +
+
containerconfigcurrent/vnfd:vnfd/vnfd:virtual-storage-desc/epa:disk-io-quota
+
+   + epa:limit +
+
leafuint64config?current/vnfd:vnfd/vnfd:virtual-storage-desc/epa:disk-io-quota/epa:limit +
+
+   + epa:reserve +
+
leafuint64config?current/vnfd:vnfd/vnfd:virtual-storage-desc/epa:disk-io-quota/epa:reserve +
+
+   + epa:shares +
+
leafuint64config?current/vnfd:vnfd/vnfd:virtual-storage-desc/epa:disk-io-quota/epa:shares +
+
+   + various:device-bus +
+
leafenumerationconfig?current/vnfd:vnfd/vnfd:virtual-storage-desc/various:device-bus +
+
+   + + sw-image-desc[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:sw-image-desc
+
+   + id +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:sw-image-desc/vnfd:id +
+
+   + name +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:sw-image-desc/vnfd:name +
+
+   + version +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:sw-image-desc/vnfd:version +
+
+   + + checksum +
+
containerconfigcurrent/vnfd:vnfd/vnfd:sw-image-desc/vnfd:checksum
+
+   + algorithm +
+
leafidentityrefconfigcurrent/vnfd:vnfd/vnfd:sw-image-desc/vnfd:checksum/vnfd:algorithm +
+
+   + hash +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:sw-image-desc/vnfd:checksum/vnfd:hash +
+
+   + container-format +
+
leafenumerationconfig?current/vnfd:vnfd/vnfd:sw-image-desc/vnfd:container-format +
+
+   + disk-format +
+
leafenumerationconfig?current/vnfd:vnfd/vnfd:sw-image-desc/vnfd:disk-format +
+
+   + min-disk +
+
leafuint64configcurrent/vnfd:vnfd/vnfd:sw-image-desc/vnfd:min-disk +
+
+   + min-ram +
+
leafdecimal64config?current/vnfd:vnfd/vnfd:sw-image-desc/vnfd:min-ram +
+
+   + size +
+
leafuint64configcurrent/vnfd:vnfd/vnfd:sw-image-desc/vnfd:size +
+
+   + image +
+
leafinet:uriconfig?current/vnfd:vnfd/vnfd:sw-image-desc/vnfd:image +
+
+   + operating-system +
+
leafstringconfig?current/vnfd:vnfd/vnfd:sw-image-desc/vnfd:operating-system +
+
+   + supported-virtualization-environment +
+
leaf-liststringconfig*current/vnfd:vnfd/vnfd:sw-image-desc/vnfd:supported-virtualization-environment +
+
+   + alternative-images:vim-type +
+
leafstringconfig?current/vnfd:vnfd/vnfd:sw-image-desc/alternative-images:vim-type +
+
+   + + int-virtual-link-desc[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:int-virtual-link-desc
+
+   + id +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:int-virtual-link-desc/vnfd:id +
+
+   + + flavour[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:int-virtual-link-desc/vnfd:flavour
+
+   + id +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:int-virtual-link-desc/vnfd:flavour/vnfd:id +
+
+   + + qos +
+
containerconfigPresencecurrent/vnfd:vnfd/vnfd:int-virtual-link-desc/vnfd:flavour/vnfd:qos
+
+   + latency +
+
leafuint32configcurrent/vnfd:vnfd/vnfd:int-virtual-link-desc/vnfd:flavour/vnfd:qos/vnfd:latency +
+
+   + packet-delay-variation +
+
leafuint32configcurrent/vnfd:vnfd/vnfd:int-virtual-link-desc/vnfd:flavour/vnfd:qos/vnfd:packet-delay-variation +
+
+   + packet-loss-ratio +
+
leafdecimal64config?current/vnfd:vnfd/vnfd:int-virtual-link-desc/vnfd:flavour/vnfd:qos/vnfd:packet-loss-ratio +
+
+   + + connectivity-type +
+
containerconfigcurrent/vnfd:vnfd/vnfd:int-virtual-link-desc/vnfd:connectivity-type
+
+   + layer-protocol +
+
leaf-listidentityrefconfig*current/vnfd:vnfd/vnfd:int-virtual-link-desc/vnfd:connectivity-type/vnfd:layer-protocol +
+
+   + flow-pattern +
+
leafflow-patternconfig?current/vnfd:vnfd/vnfd:int-virtual-link-desc/vnfd:connectivity-type/vnfd:flow-pattern +
+
+   + test-access +
+
leaf-liststringconfig*current/vnfd:vnfd/vnfd:int-virtual-link-desc/vnfd:test-access +
+
+   + description +
+
leafstringconfig?current/vnfd:vnfd/vnfd:int-virtual-link-desc/vnfd:description +
+
+   + + monitoring-parameters[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:int-virtual-link-desc/vnfd:monitoring-parameters
+
+   + id +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:int-virtual-link-desc/vnfd:monitoring-parameters/vnfd:id +
+
+   + name +
+
leafstringconfig?current/vnfd:vnfd/vnfd:int-virtual-link-desc/vnfd:monitoring-parameters/vnfd:name +
+
+   + performance-metric +
+
leafstringconfig?current/vnfd:vnfd/vnfd:int-virtual-link-desc/vnfd:monitoring-parameters/vnfd:performance-metric +
+
+   + collection-period +
+
leafuint64config?current/vnfd:vnfd/vnfd:int-virtual-link-desc/vnfd:monitoring-parameters/vnfd:collection-period +
+
+   + + various:provider-network +
+
containerconfigcurrent/vnfd:vnfd/vnfd:int-virtual-link-desc/various:provider-network
+
+   + various:physical-network +
+
leafstringconfig?current/vnfd:vnfd/vnfd:int-virtual-link-desc/various:provider-network/various:physical-network +
+
+   + various:segmentation_id +
+
leafuint32config?current/vnfd:vnfd/vnfd:int-virtual-link-desc/various:provider-network/various:segmentation_id +
+
+   + + security-group-rule[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:security-group-rule
+
+   + id +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:security-group-rule/vnfd:id +
+
+   + description +
+
leafstringconfig?current/vnfd:vnfd/vnfd:security-group-rule/vnfd:description +
+
+   + direction +
+
leafenumerationconfig?current/vnfd:vnfd/vnfd:security-group-rule/vnfd:direction +
+
+   + ether-type +
+
leafenumerationconfig?current/vnfd:vnfd/vnfd:security-group-rule/vnfd:ether-type +
+
+   + protocol +
+
leafenumerationconfig?current/vnfd:vnfd/vnfd:security-group-rule/vnfd:protocol +
+
+   + port-range-min +
+
leafuint16config?current/vnfd:vnfd/vnfd:security-group-rule/vnfd:port-range-min +
+
+   + port-range-max +
+
leafuint16config?current/vnfd:vnfd/vnfd:security-group-rule/vnfd:port-range-max +
+
+   + + ext-cpd[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:ext-cpd
+
+   + + (cp-connection) +
+
choiceconfigChoicecurrent/vnfd:vnfd/vnfd:ext-cpd
+
+   + + :(int-virtual-link-desc) +
+
caseconfigcurrent/vnfd:vnfd/vnfd:ext-cpd
+
+   + int-virtual-link-desc +
+
leafleafrefconfig?current/vnfd:vnfd/vnfd:ext-cpd/vnfd:int-virtual-link-desc +
+
+   + + :(int-cpd) +
+
caseconfigcurrent/vnfd:vnfd/vnfd:ext-cpd
+
+   + + int-cpd +
+
containerconfigcurrent/vnfd:vnfd/vnfd:ext-cpd/vnfd:int-cpd
+
+   + vdu-id +
+
leafleafrefconfig?current/vnfd:vnfd/vnfd:ext-cpd/vnfd:int-cpd/vnfd:vdu-id +
+
+   + cpd +
+
leafleafrefconfig?current/vnfd:vnfd/vnfd:ext-cpd/vnfd:int-cpd/vnfd:cpd +
+
+   + + :(k8s-cluster-net) +
+
caseconfigcurrent/vnfd:vnfd/vnfd:ext-cpd
+
+   + kdu:k8s-cluster-net +
+
leafleafrefconfig?current/vnfd:vnfd/vnfd:ext-cpd/kdu:k8s-cluster-net +
+
+   + + virtual-network-interface-requirement[name] +
+
listconfigcurrent/vnfd:vnfd/vnfd:ext-cpd/vnfd:virtual-network-interface-requirement
+
+   + name +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:ext-cpd/vnfd:virtual-network-interface-requirement/vnfd:name +
+
+   + description +
+
leafstringconfig?current/vnfd:vnfd/vnfd:ext-cpd/vnfd:virtual-network-interface-requirement/vnfd:description +
+
+   + support-mandatory +
+
leafbooleanconfig?current/vnfd:vnfd/vnfd:ext-cpd/vnfd:virtual-network-interface-requirement/vnfd:support-mandatory +
+
+   + + network-interface-requirements[key] +
+
listconfigcurrent/vnfd:vnfd/vnfd:ext-cpd/vnfd:virtual-network-interface-requirement/vnfd:network-interface-requirements
+
+   + key +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:ext-cpd/vnfd:virtual-network-interface-requirement/vnfd:network-interface-requirements/vnfd:key +
+
+   + value +
+
leafstringconfig?current/vnfd:vnfd/vnfd:ext-cpd/vnfd:virtual-network-interface-requirement/vnfd:network-interface-requirements/vnfd:value +
+
+   + nicio-requirements +
+
leafleafrefconfig?current/vnfd:vnfd/vnfd:ext-cpd/vnfd:nicio-requirements +
+
+   + id +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:ext-cpd/vnfd:id +
+
+   + layer-protocol +
+
leaf-listidentityrefconfig*current/vnfd:vnfd/vnfd:ext-cpd/vnfd:layer-protocol +
+
+   + role +
+
leafidentityrefconfig?current/vnfd:vnfd/vnfd:ext-cpd/vnfd:role +
+
+   + description +
+
leafstringconfig?current/vnfd:vnfd/vnfd:ext-cpd/vnfd:description +
+
+   + + protocol[associated-layer-protocol] +
+
listconfigcurrent/vnfd:vnfd/vnfd:ext-cpd/vnfd:protocol
+
+   + associated-layer-protocol +
+
leafidentityrefconfigcurrent/vnfd:vnfd/vnfd:ext-cpd/vnfd:protocol/vnfd:associated-layer-protocol +
+
+   + + address-data[type] +
+
listconfigcurrent/vnfd:vnfd/vnfd:ext-cpd/vnfd:protocol/vnfd:address-data
+
+   + type +
+
leafidentityrefconfigcurrent/vnfd:vnfd/vnfd:ext-cpd/vnfd:protocol/vnfd:address-data/vnfd:type +
+
+   + + l2-address-data +
+
containerconfigcurrent/vnfd:vnfd/vnfd:ext-cpd/vnfd:protocol/vnfd:address-data/vnfd:l2-address-data
+
+   + mac-address-assignment +
+
leafbooleanconfigcurrent/vnfd:vnfd/vnfd:ext-cpd/vnfd:protocol/vnfd:address-data/vnfd:l2-address-data/vnfd:mac-address-assignment +
+
+   + + l3-address-data +
+
containerconfigcurrent/vnfd:vnfd/vnfd:ext-cpd/vnfd:protocol/vnfd:address-data/vnfd:l3-address-data
+
+   + ip-address-assignment +
+
leafbooleanconfigcurrent/vnfd:vnfd/vnfd:ext-cpd/vnfd:protocol/vnfd:address-data/vnfd:l3-address-data/vnfd:ip-address-assignment +
+
+   + floating-ip-activated +
+
leafbooleanconfigcurrent/vnfd:vnfd/vnfd:ext-cpd/vnfd:protocol/vnfd:address-data/vnfd:l3-address-data/vnfd:floating-ip-activated +
+
+   + ip-address-type +
+
leafenumerationconfig?current/vnfd:vnfd/vnfd:ext-cpd/vnfd:protocol/vnfd:address-data/vnfd:l3-address-data/vnfd:ip-address-type +
+
+   + number-of-ip-addresses +
+
leafuint32config?current/vnfd:vnfd/vnfd:ext-cpd/vnfd:protocol/vnfd:address-data/vnfd:l3-address-data/vnfd:number-of-ip-addresses +
+
+   + trunk-mode +
+
leafbooleanconfig?current/vnfd:vnfd/vnfd:ext-cpd/vnfd:trunk-mode +
+
+   + security-group-rule-id +
+
leafleafrefconfig?current/vnfd:vnfd/vnfd:ext-cpd/vnfd:security-group-rule-id +
+
+   + various:port-security-enabled +
+
leafbooleanconfig?current/vnfd:vnfd/vnfd:ext-cpd/various:port-security-enabled +
+
+   + + df[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df
+
+   + id +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:id +
+
+   + description +
+
leafstringconfig?current/vnfd:vnfd/vnfd:df/vnfd:description +
+
+   + + vdu-profile[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:vdu-profile
+
+   + id +
+
leafleafrefconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:vdu-profile/vnfd:id +
+
+   + min-number-of-instances +
+
leafuint16config?current/vnfd:vnfd/vnfd:df/vnfd:vdu-profile/vnfd:min-number-of-instances +
+
+   + max-number-of-instances +
+
leafuint16config?current/vnfd:vnfd/vnfd:df/vnfd:vdu-profile/vnfd:max-number-of-instances +
+
+   + + local-affinity-or-anti-affinity-rule[affinity-type affinity-scope] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:vdu-profile/vnfd:local-affinity-or-anti-affinity-rule
+
+   + affinity-type +
+
leafaffinity-typeconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:vdu-profile/vnfd:local-affinity-or-anti-affinity-rule/vnfd:affinity-type +
+
+   + affinity-scope +
+
leafaffinity-scopeconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:vdu-profile/vnfd:local-affinity-or-anti-affinity-rule/vnfd:affinity-scope +
+
+   + + affinity-or-anti-affinity-group[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:vdu-profile/vnfd:affinity-or-anti-affinity-group
+
+   + id +
+
leafleafrefconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:vdu-profile/vnfd:affinity-or-anti-affinity-group/vnfd:id +
+
+   + configuration:vdu-configuration-id +
+
leafleafrefconfig?current/vnfd:vnfd/vnfd:df/vnfd:vdu-profile/configuration:vdu-configuration-id +
+
+   + + virtual-link-profile[id flavour] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile
+
+   + id +
+
leafleafrefconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:id +
+
+   + flavour +
+
leafleafrefconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:flavour +
+
+   + + local-affinity-or-anti-affinity-rule[affinity-type affinity-scope] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:local-affinity-or-anti-affinity-rule
+
+   + affinity-type +
+
leafaffinity-typeconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:local-affinity-or-anti-affinity-rule/vnfd:affinity-type +
+
+   + affinity-scope +
+
leafaffinity-scopeconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:local-affinity-or-anti-affinity-rule/vnfd:affinity-scope +
+
+   + + affinity-or-anti-affinity-group[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:affinity-or-anti-affinity-group
+
+   + id +
+
leafleafrefconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:affinity-or-anti-affinity-group/vnfd:id +
+
+   + + max-bit-rate-requirements +
+
containerconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:max-bit-rate-requirements
+
+   + root +
+
leafuint32configcurrent/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:max-bit-rate-requirements/vnfd:root +
+
+   + leaf +
+
leafuint32config?current/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:max-bit-rate-requirements/vnfd:leaf +
+
+   + + min-bit-rate-requirements +
+
containerconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:min-bit-rate-requirements
+
+   + root +
+
leafuint32configcurrent/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:min-bit-rate-requirements/vnfd:root +
+
+   + leaf +
+
leafuint32config?current/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:min-bit-rate-requirements/vnfd:leaf +
+
+   + + virtual-link-protocol-data +
+
containerconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:virtual-link-protocol-data
+
+   + associated-layer-protocol +
+
leafidentityrefconfig?current/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:virtual-link-protocol-data/vnfd:associated-layer-protocol +
+
+   + + l2-protocol-data +
+
containerconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:virtual-link-protocol-data/vnfd:l2-protocol-data
+
+   + name +
+
leafstringconfig?current/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:virtual-link-protocol-data/vnfd:l2-protocol-data/vnfd:name +
+
+   + network-type +
+
leafenumerationconfig?current/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:virtual-link-protocol-data/vnfd:l2-protocol-data/vnfd:network-type +
+
+   + vlan-transparent +
+
leafbooleanconfig?current/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:virtual-link-protocol-data/vnfd:l2-protocol-data/vnfd:vlan-transparent +
+
+   + mtu +
+
leafuint16config?current/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:virtual-link-protocol-data/vnfd:l2-protocol-data/vnfd:mtu +
+
+   + + l3-protocol-data +
+
containerconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:virtual-link-protocol-data/vnfd:l3-protocol-data
+
+   + name +
+
leafstringconfig?current/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:virtual-link-protocol-data/vnfd:l3-protocol-data/vnfd:name +
+
+   + ip-version +
+
leafenumerationconfig?current/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:virtual-link-protocol-data/vnfd:l3-protocol-data/vnfd:ip-version +
+
+   + cidr +
+
leafstringconfig?current/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:virtual-link-protocol-data/vnfd:l3-protocol-data/vnfd:cidr +
+
+   + ip-allocation-pools +
+
leaf-liststringconfig*current/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:virtual-link-protocol-data/vnfd:l3-protocol-data/vnfd:ip-allocation-pools +
+
+   + gateway-ip +
+
leafinet:ip-addressconfig?current/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:virtual-link-protocol-data/vnfd:l3-protocol-data/vnfd:gateway-ip +
+
+   + dhcp-enabled +
+
leafbooleanconfig?current/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:virtual-link-protocol-data/vnfd:l3-protocol-data/vnfd:dhcp-enabled +
+
+   + ipv6-address-mode +
+
leafenumerationconfig?current/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:virtual-link-protocol-data/vnfd:l3-protocol-data/vnfd:ipv6-address-mode +
+
+   + additional-info:description +
+
leafstringconfig?current/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:virtual-link-protocol-data/vnfd:l3-protocol-data/additional-info:description +
+
+   + various:security-group +
+
leafstringconfig?current/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:virtual-link-protocol-data/vnfd:l3-protocol-data/various:security-group +
+
+   + + instantiation-level[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:instantiation-level
+
+   + id +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:instantiation-level/vnfd:id +
+
+   + description +
+
leafstringconfig?current/vnfd:vnfd/vnfd:df/vnfd:instantiation-level/vnfd:description +
+
+   + + vdu-level[vdu-id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:instantiation-level/vnfd:vdu-level
+
+   + vdu-id +
+
leafleafrefconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:instantiation-level/vnfd:vdu-level/vnfd:vdu-id +
+
+   + number-of-instances +
+
leafuint16config?current/vnfd:vnfd/vnfd:df/vnfd:instantiation-level/vnfd:vdu-level/vnfd:number-of-instances +
+
+   + + scaling-info[scaling-aspect-id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:instantiation-level/vnfd:scaling-info
+
+   + scaling-aspect-id +
+
leafleafrefconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:instantiation-level/vnfd:scaling-info/vnfd:scaling-aspect-id +
+
+   + scale-level +
+
leafuint32config?current/vnfd:vnfd/vnfd:df/vnfd:instantiation-level/vnfd:scaling-info/vnfd:scale-level +
+
+   + default-instantiation-level +
+
leafleafrefconfig?current/vnfd:vnfd/vnfd:df/vnfd:default-instantiation-level +
+
+   + supported-operation +
+
leaf-listidentityrefconfig*current/vnfd:vnfd/vnfd:df/vnfd:supported-operation +
+
+   + + lcm-operations-configuration +
+
containerconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration
+
+   + + instantiate-vnf-op-config +
+
containerconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:instantiate-vnf-op-config
+
+   + + parameter[key] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:instantiate-vnf-op-config/vnfd:parameter
+
+   + key +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:instantiate-vnf-op-config/vnfd:parameter/vnfd:key +
+
+   + value +
+
leafstringconfig?current/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:instantiate-vnf-op-config/vnfd:parameter/vnfd:value +
+
+   + + scale-vnf-op-config +
+
containerconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:scale-vnf-op-config
+
+   + + parameter[key] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:scale-vnf-op-config/vnfd:parameter
+
+   + key +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:scale-vnf-op-config/vnfd:parameter/vnfd:key +
+
+   + value +
+
leafstringconfig?current/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:scale-vnf-op-config/vnfd:parameter/vnfd:value +
+
+   + scaling-by-more-than-one-step-supported +
+
leafbooleanconfig?current/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:scale-vnf-op-config/vnfd:scaling-by-more-than-one-step-supported +
+
+   + + scale-vnf-to-level-op-config +
+
containerconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:scale-vnf-to-level-op-config
+
+   + + parameter[key] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:scale-vnf-to-level-op-config/vnfd:parameter
+
+   + key +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:scale-vnf-to-level-op-config/vnfd:parameter/vnfd:key +
+
+   + value +
+
leafstringconfig?current/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:scale-vnf-to-level-op-config/vnfd:parameter/vnfd:value +
+
+   + arbitrary-target-levels-supported +
+
leafbooleanconfig?current/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:scale-vnf-to-level-op-config/vnfd:arbitrary-target-levels-supported +
+
+   + + heal-vnf-op-config +
+
containerconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:heal-vnf-op-config
+
+   + + parameter[key] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:heal-vnf-op-config/vnfd:parameter
+
+   + key +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:heal-vnf-op-config/vnfd:parameter/vnfd:key +
+
+   + value +
+
leafstringconfig?current/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:heal-vnf-op-config/vnfd:parameter/vnfd:value +
+
+   + cause +
+
leaf-liststringconfig*current/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:heal-vnf-op-config/vnfd:cause +
+
+   + + terminate-vnf-op-config +
+
containerconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:terminate-vnf-op-config
+
+   + min-graceful-termination +
+
leafyang:timeticksconfig?current/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:terminate-vnf-op-config/vnfd:min-graceful-termination +
+
+   + max-recommended-graceful-termination +
+
leafyang:timeticksconfig?current/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:terminate-vnf-op-config/vnfd:max-recommended-graceful-termination +
+
+   + + parameter[key] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:terminate-vnf-op-config/vnfd:parameter
+
+   + key +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:terminate-vnf-op-config/vnfd:parameter/vnfd:key +
+
+   + value +
+
leafstringconfig?current/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:terminate-vnf-op-config/vnfd:parameter/vnfd:value +
+
+   + + operate-vnf-op-config +
+
containerconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:operate-vnf-op-config
+
+   + min-graceful-stop-timeout +
+
leafyang:timeticksconfig?current/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:operate-vnf-op-config/vnfd:min-graceful-stop-timeout +
+
+   + max-recommended-graceful-stop-timeout +
+
leafyang:timeticksconfig?current/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:operate-vnf-op-config/vnfd:max-recommended-graceful-stop-timeout +
+
+   + + parameter[key] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:operate-vnf-op-config/vnfd:parameter
+
+   + key +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:operate-vnf-op-config/vnfd:parameter/vnfd:key +
+
+   + value +
+
leafstringconfig?current/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:operate-vnf-op-config/vnfd:parameter/vnfd:value +
+
+   + + change-vnf-flavour-op-config +
+
containerconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:change-vnf-flavour-op-config
+
+   + + parameter[key] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:change-vnf-flavour-op-config/vnfd:parameter
+
+   + key +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:change-vnf-flavour-op-config/vnfd:parameter/vnfd:key +
+
+   + value +
+
leafstringconfig?current/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:change-vnf-flavour-op-config/vnfd:parameter/vnfd:value +
+
+   + + change-ext-vnf-connectivity-op-config +
+
containerconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:change-ext-vnf-connectivity-op-config
+
+   + + parameter[key] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:change-ext-vnf-connectivity-op-config/vnfd:parameter
+
+   + key +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:change-ext-vnf-connectivity-op-config/vnfd:parameter/vnfd:key +
+
+   + value +
+
leafstringconfig?current/vnfd:vnfd/vnfd:df/vnfd:lcm-operations-configuration/vnfd:change-ext-vnf-connectivity-op-config/vnfd:parameter/vnfd:value +
+
+   + + affinity-or-anti-affinity-group[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:affinity-or-anti-affinity-group
+
+   + id +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:affinity-or-anti-affinity-group/vnfd:id +
+
+   + type +
+
leafaffinity-typeconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:affinity-or-anti-affinity-group/vnfd:type +
+
+   + scope +
+
leafaffinity-scopeconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:affinity-or-anti-affinity-group/vnfd:scope +
+
+   + + indicator[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:indicator
+
+   + id +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:indicator/vnfd:id +
+
+   + name +
+
leafstringconfig?current/vnfd:vnfd/vnfd:df/vnfd:indicator/vnfd:name +
+
+   + indicator-value +
+
leafstringconfig?current/vnfd:vnfd/vnfd:df/vnfd:indicator/vnfd:indicator-value +
+
+   + source +
+
leafenumerationconfig?current/vnfd:vnfd/vnfd:df/vnfd:indicator/vnfd:source +
+
+   + + supported-vnf-interfaces[name] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:supported-vnf-interfaces
+
+   + name +
+
leafenumerationconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:supported-vnf-interfaces/vnfd:name +
+
+   + cpd-id +
+
leaf-listleafrefconfig*current/vnfd:vnfd/vnfd:df/vnfd:supported-vnf-interfaces/vnfd:cpd-id +
+
+   + + interface-details[key] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:supported-vnf-interfaces/vnfd:interface-details
+
+   + key +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:supported-vnf-interfaces/vnfd:interface-details/vnfd:key +
+
+   + value +
+
leafstringconfig?current/vnfd:vnfd/vnfd:df/vnfd:supported-vnf-interfaces/vnfd:interface-details/vnfd:value +
+
+   + + monitoring-parameter[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:monitoring-parameter
+
+   + id +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:monitoring-parameter/vnfd:id +
+
+   + name +
+
leafstringconfig?current/vnfd:vnfd/vnfd:df/vnfd:monitoring-parameter/vnfd:name +
+
+   + performance-metric +
+
leafstringconfig?current/vnfd:vnfd/vnfd:df/vnfd:monitoring-parameter/vnfd:performance-metric +
+
+   + collection-period +
+
leafuint64config?current/vnfd:vnfd/vnfd:df/vnfd:monitoring-parameter/vnfd:collection-period +
+
+   + + scaling-aspect[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect
+
+   + id +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/vnfd:id +
+
+   + name +
+
leafstringconfig?current/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/vnfd:name +
+
+   + description +
+
leafstringconfig?current/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/vnfd:description +
+
+   + max-scale-level +
+
leafuint32config?current/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/vnfd:max-scale-level +
+
+   + + aspect-delta-details +
+
containerconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/vnfd:aspect-delta-details
+
+   + + deltas[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/vnfd:aspect-delta-details/vnfd:deltas
+
+   + id +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/vnfd:aspect-delta-details/vnfd:deltas/vnfd:id +
+
+   + + vdu-delta[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/vnfd:aspect-delta-details/vnfd:deltas/vnfd:vdu-delta
+
+   + id +
+
leafleafrefconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/vnfd:aspect-delta-details/vnfd:deltas/vnfd:vdu-delta/vnfd:id +
+
+   + number-of-instances +
+
leafuint32config?current/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/vnfd:aspect-delta-details/vnfd:deltas/vnfd:vdu-delta/vnfd:number-of-instances +
+
+   + + virtual-link-bit-rate-delta[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/vnfd:aspect-delta-details/vnfd:deltas/vnfd:virtual-link-bit-rate-delta
+
+   + id +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/vnfd:aspect-delta-details/vnfd:deltas/vnfd:virtual-link-bit-rate-delta/vnfd:id +
+
+   + + bit-rate-requirements +
+
containerconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/vnfd:aspect-delta-details/vnfd:deltas/vnfd:virtual-link-bit-rate-delta/vnfd:bit-rate-requirements
+
+   + root +
+
leafuint32configcurrent/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/vnfd:aspect-delta-details/vnfd:deltas/vnfd:virtual-link-bit-rate-delta/vnfd:bit-rate-requirements/vnfd:root +
+
+   + leaf +
+
leafuint32config?current/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/vnfd:aspect-delta-details/vnfd:deltas/vnfd:virtual-link-bit-rate-delta/vnfd:bit-rate-requirements/vnfd:leaf +
+
+   + step-deltas +
+
leafleafrefconfig?current/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/vnfd:aspect-delta-details/vnfd:step-deltas +
+
+   + + scaling:scaling-policy[name] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/scaling:scaling-policy
+
+   + scaling:name +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/scaling:scaling-policy/scaling:name +
+
+   + scaling:scaling-type +
+
leafcommon:scaling-policy-typeconfig?current/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/scaling:scaling-policy/scaling:scaling-type +
+
+   + scaling:enabled +
+
leafbooleanconfig?current/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/scaling:scaling-policy/scaling:enabled +
+
+   + scaling:scale-in-operation-type +
+
leafcommon:scaling-criteria-operationconfig?current/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/scaling:scaling-policy/scaling:scale-in-operation-type +
+
+   + scaling:scale-out-operation-type +
+
leafcommon:scaling-criteria-operationconfig?current/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/scaling:scaling-policy/scaling:scale-out-operation-type +
+
+   + scaling:threshold-time +
+
leafuint32configcurrent/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/scaling:scaling-policy/scaling:threshold-time +
+
+   + scaling:cooldown-time +
+
leafuint32configcurrent/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/scaling:scaling-policy/scaling:cooldown-time +
+
+   + + scaling:scaling-criteria[name] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/scaling:scaling-policy/scaling:scaling-criteria
+
+   + scaling:name +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/scaling:scaling-policy/scaling:scaling-criteria/scaling:name +
+
+   + scaling:scale-in-threshold +
+
leafdecimal64config?current/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/scaling:scaling-policy/scaling:scaling-criteria/scaling:scale-in-threshold +
+
+   + scaling:scale-in-relational-operation +
+
leafcommon:relational-operation-typeconfig?current/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/scaling:scaling-policy/scaling:scaling-criteria/scaling:scale-in-relational-operation +
+
+   + scaling:scale-out-threshold +
+
leafdecimal64config?current/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/scaling:scaling-policy/scaling:scaling-criteria/scaling:scale-out-threshold +
+
+   + scaling:scale-out-relational-operation +
+
leafcommon:relational-operation-typeconfig?current/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/scaling:scaling-policy/scaling:scaling-criteria/scaling:scale-out-relational-operation +
+
+   + scaling:vnf-monitoring-param-ref +
+
leafleafrefconfig?current/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/scaling:scaling-policy/scaling:scaling-criteria/scaling:vnf-monitoring-param-ref +
+
+   + + scaling:scaling-config-action[trigger] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/scaling:scaling-config-action
+
+   + scaling:trigger +
+
leafcommon:scaling-triggerconfigcurrent/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/scaling:scaling-config-action/scaling:trigger +
+
+   + scaling:vnf-config-primitive-name-ref +
+
leafleafrefconfig?current/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect/scaling:scaling-config-action/scaling:vnf-config-primitive-name-ref +
+
+   + configuration:vnf-configuration-id +
+
leafleafrefconfig?current/vnfd:vnfd/vnfd:df/configuration:vnf-configuration-id +
+
+   + + configuration:kdu-profile[name] +
+
listconfigcurrent/vnfd:vnfd/vnfd:df/configuration:kdu-profile
+
+   + configuration:name +
+
leafleafrefconfigcurrent/vnfd:vnfd/vnfd:df/configuration:kdu-profile/configuration:name +
+
+   + configuration:kdu-configuration-id +
+
leafleafrefconfig?current/vnfd:vnfd/vnfd:df/configuration:kdu-profile/configuration:kdu-configuration-id +
+
+   + configuration:kdu-model-id +
+
leafleafrefconfig?current/vnfd:vnfd/vnfd:df/configuration:kdu-profile/configuration:kdu-model-id +
+
+   + + configurable-properties +
+
containerconfigcurrent/vnfd:vnfd/vnfd:configurable-properties
+
+   + is-auto-scalable-enabled +
+
leafbooleanconfig?current/vnfd:vnfd/vnfd:configurable-properties/vnfd:is-auto-scalable-enabled +
+
+   + is-auto-heal-enabled +
+
leafbooleanconfig?current/vnfd:vnfd/vnfd:configurable-properties/vnfd:is-auto-heal-enabled +
+
+   + + additional-configurable-property[key] +
+
listconfigcurrent/vnfd:vnfd/vnfd:configurable-properties/vnfd:additional-configurable-property
+
+   + key +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:configurable-properties/vnfd:additional-configurable-property/vnfd:key +
+
+   + value +
+
leafstringconfig?current/vnfd:vnfd/vnfd:configurable-properties/vnfd:additional-configurable-property/vnfd:value +
+
+   + + modifiable-attributes +
+
containerconfigcurrent/vnfd:vnfd/vnfd:modifiable-attributes
+
+   + extension +
+
leaf-liststringconfig*current/vnfd:vnfd/vnfd:modifiable-attributes/vnfd:extension +
+
+   + metadata +
+
leaf-liststringconfig*current/vnfd:vnfd/vnfd:modifiable-attributes/vnfd:metadata +
+
+   + + lifecycle-management-script[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:lifecycle-management-script
+
+   + id +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:lifecycle-management-script/vnfd:id +
+
+   + event +
+
leaf-listinternal-lifecycle-management-script-eventconfig*current/vnfd:vnfd/vnfd:lifecycle-management-script/vnfd:event +
+
+   + lcm-transition-event +
+
leaf-liststringconfig*current/vnfd:vnfd/vnfd:lifecycle-management-script/vnfd:lcm-transition-event +
+
+   + script +
+
leafstringconfig?current/vnfd:vnfd/vnfd:lifecycle-management-script/vnfd:script +
+
+   + script-dsl +
+
leafstringconfig?current/vnfd:vnfd/vnfd:lifecycle-management-script/vnfd:script-dsl +
+
+   + + script-input[key] +
+
listconfigcurrent/vnfd:vnfd/vnfd:lifecycle-management-script/vnfd:script-input
+
+   + key +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:lifecycle-management-script/vnfd:script-input/vnfd:key +
+
+   + value +
+
leafstringconfig?current/vnfd:vnfd/vnfd:lifecycle-management-script/vnfd:script-input/vnfd:value +
+
+   + + element-group[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:element-group
+
+   + id +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:element-group/vnfd:id +
+
+   + description +
+
leafstringconfig?current/vnfd:vnfd/vnfd:element-group/vnfd:description +
+
+   + vdu +
+
leaf-listleafrefconfig*current/vnfd:vnfd/vnfd:element-group/vnfd:vdu +
+
+   + virtual-link-desc +
+
leaf-listleafrefconfig*current/vnfd:vnfd/vnfd:element-group/vnfd:virtual-link-desc +
+
+   + + indicator[id] +
+
listconfigcurrent/vnfd:vnfd/vnfd:indicator
+
+   + id +
+
leafstringconfigcurrent/vnfd:vnfd/vnfd:indicator/vnfd:id +
+
+   + name +
+
leafstringconfig?current/vnfd:vnfd/vnfd:indicator/vnfd:name +
+
+   + indicator-value +
+
leaf-liststringconfig*current/vnfd:vnfd/vnfd:indicator/vnfd:indicator-value +
+
+   + source +
+
leafenumerationconfig?current/vnfd:vnfd/vnfd:indicator/vnfd:source +
+
+   + auto-scale +
+
leaf-liststringconfig*current/vnfd:vnfd/vnfd:auto-scale +
+
+   + additional-info:description +
+
leafstringconfig?current/vnfd:vnfd/additional-info:description +
+
+   + + day1-2:vnf-configuration[id] +
+
listconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration
+
+   + day1-2:id +
+
leafstringconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:id +
+
+   + + (config-method) +
+
choiceconfigChoicecurrent/vnfd:vnfd/day1-2:vnf-configuration
+
+   + + :(script) +
+
caseconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration
+
+   + + day1-2:script +
+
containerconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:script
+
+   + day1-2:script-type +
+
leafenumerationconfig?current/vnfd:vnfd/day1-2:vnf-configuration/day1-2:script/day1-2:script-type +
+
+   + + :(juju) +
+
caseconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration
+
+   + + day1-2:juju +
+
containerconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:juju
+
+   + day1-2:charm +
+
leafstringconfig?current/vnfd:vnfd/day1-2:vnf-configuration/day1-2:juju/day1-2:charm +
+
+   + day1-2:proxy +
+
leafbooleanconfig?current/vnfd:vnfd/day1-2:vnf-configuration/day1-2:juju/day1-2:proxy +
+
+   + + day1-2:config-primitive[name] +
+
listconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:config-primitive
+
+   + day1-2:name +
+
leafstringconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:config-primitive/day1-2:name +
+
+   + + day1-2:parameter[name] +
+
listconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:config-primitive/day1-2:parameter
+
+   + day1-2:name +
+
leafstringconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:config-primitive/day1-2:parameter/day1-2:name +
+
+   + day1-2:data-type +
+
leafcommon:parameter-data-typeconfig?current/vnfd:vnfd/day1-2:vnf-configuration/day1-2:config-primitive/day1-2:parameter/day1-2:data-type +
+
+   + day1-2:mandatory +
+
leafbooleanconfig?current/vnfd:vnfd/day1-2:vnf-configuration/day1-2:config-primitive/day1-2:parameter/day1-2:mandatory +
+
+   + day1-2:default-value +
+
leafstringconfig?current/vnfd:vnfd/day1-2:vnf-configuration/day1-2:config-primitive/day1-2:parameter/day1-2:default-value +
+
+   + day1-2:parameter-pool +
+
leafstringconfig?current/vnfd:vnfd/day1-2:vnf-configuration/day1-2:config-primitive/day1-2:parameter/day1-2:parameter-pool +
+
+   + day1-2:read-only +
+
leafbooleanconfig?current/vnfd:vnfd/day1-2:vnf-configuration/day1-2:config-primitive/day1-2:parameter/day1-2:read-only +
+
+   + day1-2:hidden +
+
leafbooleanconfig?current/vnfd:vnfd/day1-2:vnf-configuration/day1-2:config-primitive/day1-2:parameter/day1-2:hidden +
+
+   + day1-2:user-defined-script +
+
leafstringconfig?current/vnfd:vnfd/day1-2:vnf-configuration/day1-2:config-primitive/day1-2:user-defined-script +
+
+   + + day1-2:initial-config-primitive[seq] +
+
listconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:initial-config-primitive
+
+   + day1-2:seq +
+
leafuint64configcurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:initial-config-primitive/day1-2:seq +
+
+   + + (primitive-type) +
+
choiceconfigChoicecurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:initial-config-primitive
+
+   + + :(primitive-definition) +
+
caseconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:initial-config-primitive
+
+   + day1-2:name +
+
leafstringconfig?current/vnfd:vnfd/day1-2:vnf-configuration/day1-2:initial-config-primitive/day1-2:name +
+
+   + + day1-2:parameter[name] +
+
listconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:initial-config-primitive/day1-2:parameter
+
+   + day1-2:name +
+
leafstringconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:initial-config-primitive/day1-2:parameter/day1-2:name +
+
+   + day1-2:data-type +
+
leafcommon:parameter-data-typeconfig?current/vnfd:vnfd/day1-2:vnf-configuration/day1-2:initial-config-primitive/day1-2:parameter/day1-2:data-type +
+
+   + day1-2:value +
+
leafstringconfig?current/vnfd:vnfd/day1-2:vnf-configuration/day1-2:initial-config-primitive/day1-2:parameter/day1-2:value +
+
+   + day1-2:user-defined-script +
+
leafstringconfig?current/vnfd:vnfd/day1-2:vnf-configuration/day1-2:initial-config-primitive/day1-2:user-defined-script +
+
+   + + day1-2:terminate-config-primitive[seq] +
+
listconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:terminate-config-primitive
+
+   + day1-2:seq +
+
leafuint64configcurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:terminate-config-primitive/day1-2:seq +
+
+   + day1-2:name +
+
leafstringconfig?current/vnfd:vnfd/day1-2:vnf-configuration/day1-2:terminate-config-primitive/day1-2:name +
+
+   + + day1-2:parameter[name] +
+
listconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:terminate-config-primitive/day1-2:parameter
+
+   + day1-2:name +
+
leafstringconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:terminate-config-primitive/day1-2:parameter/day1-2:name +
+
+   + day1-2:data-type +
+
leafcommon:parameter-data-typeconfig?current/vnfd:vnfd/day1-2:vnf-configuration/day1-2:terminate-config-primitive/day1-2:parameter/day1-2:data-type +
+
+   + day1-2:value +
+
leafstringconfig?current/vnfd:vnfd/day1-2:vnf-configuration/day1-2:terminate-config-primitive/day1-2:parameter/day1-2:value +
+
+   + day1-2:user-defined-script +
+
leafstringconfig?current/vnfd:vnfd/day1-2:vnf-configuration/day1-2:terminate-config-primitive/day1-2:user-defined-script +
+
+   + + day1-2:metrics[name] +
+
listconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:metrics
+
+   + day1-2:name +
+
leafstringconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:metrics/day1-2:name +
+
+   + + day1-2:relation[name] +
+
listconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:relation
+
+   + day1-2:name +
+
leafstringconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:relation/day1-2:name +
+
+   + + day1-2:entities[id] +
+
listconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:relation/day1-2:entities
+
+   + day1-2:id +
+
leafstringconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:relation/day1-2:entities/day1-2:id +
+
+   + day1-2:endpoint +
+
leafstringconfig?current/vnfd:vnfd/day1-2:vnf-configuration/day1-2:relation/day1-2:entities/day1-2:endpoint +
+
+   + + day1-2:config-access +
+
containerconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:config-access
+
+   + + day1-2:ssh-access +
+
containerconfigcurrent/vnfd:vnfd/day1-2:vnf-configuration/day1-2:config-access/day1-2:ssh-access
+
+   + day1-2:required +
+
leafbooleanconfig?current/vnfd:vnfd/day1-2:vnf-configuration/day1-2:config-access/day1-2:ssh-access/day1-2:required +
+
+   + day1-2:default-user +
+
leafstringconfig?current/vnfd:vnfd/day1-2:vnf-configuration/day1-2:config-access/day1-2:ssh-access/day1-2:default-user +
+
+   + + day1-2:vdu-configuration[id] +
+
listconfigcurrent/vnfd:vnfd/day1-2:vdu-configuration
+
+   + day1-2:id +
+
leafstringconfigcurrent/vnfd:vnfd/day1-2:vdu-configuration/day1-2:id +
+
+   + + (config-method) +
+
choiceconfigChoicecurrent/vnfd:vnfd/day1-2:vdu-configuration
+
+   + + :(script) +
+
caseconfigcurrent/vnfd:vnfd/day1-2:vdu-configuration
+
+   + + day1-2:script +
+
containerconfigcurrent/vnfd:vnfd/day1-2:vdu-configuration/day1-2:script
+
+   + day1-2:script-type +
+
leafenumerationconfig?current/vnfd:vnfd/day1-2:vdu-configuration/day1-2:script/day1-2:script-type +
+
+   + + :(juju) +
+
caseconfigcurrent/vnfd:vnfd/day1-2:vdu-configuration
+
+   + + day1-2:juju +
+
containerconfigcurrent/vnfd:vnfd/day1-2:vdu-configuration/day1-2:juju
+
+   + day1-2:charm +
+
leafstringconfig?current/vnfd:vnfd/day1-2:vdu-configuration/day1-2:juju/day1-2:charm +
+
+   + day1-2:proxy +
+
leafbooleanconfig?current/vnfd:vnfd/day1-2:vdu-configuration/day1-2:juju/day1-2:proxy +
+
+   + + day1-2:config-primitive[name] +
+
listconfigcurrent/vnfd:vnfd/day1-2:vdu-configuration/day1-2:config-primitive
+
+   + day1-2:name +
+
leafstringconfigcurrent/vnfd:vnfd/day1-2:vdu-configuration/day1-2:config-primitive/day1-2:name +
+
+   + + day1-2:parameter[name] +
+
listconfigcurrent/vnfd:vnfd/day1-2:vdu-configuration/day1-2:config-primitive/day1-2:parameter
+
+   + day1-2:name +
+
leafstringconfigcurrent/vnfd:vnfd/day1-2:vdu-configuration/day1-2:config-primitive/day1-2:parameter/day1-2:name +
+
+   + day1-2:data-type +
+
leafcommon:parameter-data-typeconfig?current/vnfd:vnfd/day1-2:vdu-configuration/day1-2:config-primitive/day1-2:parameter/day1-2:data-type +
+
+   + day1-2:mandatory +
+
leafbooleanconfig?current/vnfd:vnfd/day1-2:vdu-configuration/day1-2:config-primitive/day1-2:parameter/day1-2:mandatory +
+
+   + day1-2:default-value +
+
leafstringconfig?current/vnfd:vnfd/day1-2:vdu-configuration/day1-2:config-primitive/day1-2:parameter/day1-2:default-value +
+
+   + day1-2:parameter-pool +
+
leafstringconfig?current/vnfd:vnfd/day1-2:vdu-configuration/day1-2:config-primitive/day1-2:parameter/day1-2:parameter-pool +
+
+   + day1-2:read-only +
+
leafbooleanconfig?current/vnfd:vnfd/day1-2:vdu-configuration/day1-2:config-primitive/day1-2:parameter/day1-2:read-only +
+
+   + day1-2:hidden +
+
leafbooleanconfig?current/vnfd:vnfd/day1-2:vdu-configuration/day1-2:config-primitive/day1-2:parameter/day1-2:hidden +
+
+   + day1-2:user-defined-script +
+
leafstringconfig?current/vnfd:vnfd/day1-2:vdu-configuration/day1-2:config-primitive/day1-2:user-defined-script +
+
+   + + day1-2:initial-config-primitive[seq] +
+
listconfigcurrent/vnfd:vnfd/day1-2:vdu-configuration/day1-2:initial-config-primitive
+
+   + day1-2:seq +
+
leafuint64configcurrent/vnfd:vnfd/day1-2:vdu-configuration/day1-2:initial-config-primitive/day1-2:seq +
+
+   + + (primitive-type) +
+
choiceconfigChoicecurrent/vnfd:vnfd/day1-2:vdu-configuration/day1-2:initial-config-primitive
+
+   + + :(primitive-definition) +
+
caseconfigcurrent/vnfd:vnfd/day1-2:vdu-configuration/day1-2:initial-config-primitive
+
+   + day1-2:name +
+
leafstringconfig?current/vnfd:vnfd/day1-2:vdu-configuration/day1-2:initial-config-primitive/day1-2:name +
+
+   + + day1-2:parameter[name] +
+
listconfigcurrent/vnfd:vnfd/day1-2:vdu-configuration/day1-2:initial-config-primitive/day1-2:parameter
+
+   + day1-2:name +
+
leafstringconfigcurrent/vnfd:vnfd/day1-2:vdu-configuration/day1-2:initial-config-primitive/day1-2:parameter/day1-2:name +
+
+   + day1-2:data-type +
+
leafcommon:parameter-data-typeconfig?current/vnfd:vnfd/day1-2:vdu-configuration/day1-2:initial-config-primitive/day1-2:parameter/day1-2:data-type +
+
+   + day1-2:value +
+
leafstringconfig?current/vnfd:vnfd/day1-2:vdu-configuration/day1-2:initial-config-primitive/day1-2:parameter/day1-2:value +
+
+   + day1-2:user-defined-script +
+
leafstringconfig?current/vnfd:vnfd/day1-2:vdu-configuration/day1-2:initial-config-primitive/day1-2:user-defined-script +
+
+   + + day1-2:terminate-config-primitive[seq] +
+
listconfigcurrent/vnfd:vnfd/day1-2:vdu-configuration/day1-2:terminate-config-primitive
+
+   + day1-2:seq +
+
leafuint64configcurrent/vnfd:vnfd/day1-2:vdu-configuration/day1-2:terminate-config-primitive/day1-2:seq +
+
+   + day1-2:name +
+
leafstringconfig?current/vnfd:vnfd/day1-2:vdu-configuration/day1-2:terminate-config-primitive/day1-2:name +
+
+   + + day1-2:parameter[name] +
+
listconfigcurrent/vnfd:vnfd/day1-2:vdu-configuration/day1-2:terminate-config-primitive/day1-2:parameter
+
+   + day1-2:name +
+
leafstringconfigcurrent/vnfd:vnfd/day1-2:vdu-configuration/day1-2:terminate-config-primitive/day1-2:parameter/day1-2:name +
+
+   + day1-2:data-type +
+
leafcommon:parameter-data-typeconfig?current/vnfd:vnfd/day1-2:vdu-configuration/day1-2:terminate-config-primitive/day1-2:parameter/day1-2:data-type +
+
+   + day1-2:value +
+
leafstringconfig?current/vnfd:vnfd/day1-2:vdu-configuration/day1-2:terminate-config-primitive/day1-2:parameter/day1-2:value +
+
+   + day1-2:user-defined-script +
+
leafstringconfig?current/vnfd:vnfd/day1-2:vdu-configuration/day1-2:terminate-config-primitive/day1-2:user-defined-script +
+
+   + + day1-2:metrics[name] +
+
listconfigcurrent/vnfd:vnfd/day1-2:vdu-configuration/day1-2:metrics
+
+   + day1-2:name +
+
leafstringconfigcurrent/vnfd:vnfd/day1-2:vdu-configuration/day1-2:metrics/day1-2:name +
+
+   + + day1-2:config-access +
+
containerconfigcurrent/vnfd:vnfd/day1-2:vdu-configuration/day1-2:config-access
+
+   + + day1-2:ssh-access +
+
containerconfigcurrent/vnfd:vnfd/day1-2:vdu-configuration/day1-2:config-access/day1-2:ssh-access
+
+   + day1-2:required +
+
leafbooleanconfig?current/vnfd:vnfd/day1-2:vdu-configuration/day1-2:config-access/day1-2:ssh-access/day1-2:required +
+
+   + day1-2:default-user +
+
leafstringconfig?current/vnfd:vnfd/day1-2:vdu-configuration/day1-2:config-access/day1-2:ssh-access/day1-2:default-user +
+
+   + + kdu:kdu[name] +
+
listconfigcurrent/vnfd:vnfd/kdu:kdu
+
+   + kdu:name +
+
leafstringconfigcurrent/vnfd:vnfd/kdu:kdu/kdu:name +
+
+   + kdu:description +
+
leafstringconfig?current/vnfd:vnfd/kdu:kdu/kdu:description +
+
+   + + kdu:k8s-cluster +
+
containerconfigcurrent/vnfd:vnfd/kdu:k8s-cluster
+
+   + kdu:version +
+
leaf-liststringconfig*current/vnfd:vnfd/kdu:k8s-cluster/kdu:version +
+
+   + kdu:cni +
+
leaf-listenumerationconfig*current/vnfd:vnfd/kdu:k8s-cluster/kdu:cni +
+
+   + + kdu:nets[id] +
+
listconfigcurrent/vnfd:vnfd/kdu:k8s-cluster/kdu:nets
+
+   + kdu:id +
+
leafstringconfigcurrent/vnfd:vnfd/kdu:k8s-cluster/kdu:nets/kdu:id +
+
+   + + kdu:kdu-configuration[id] +
+
listconfigcurrent/vnfd:vnfd/kdu:kdu-configuration
+
+   + kdu:id +
+
leafstringconfigcurrent/vnfd:vnfd/kdu:kdu-configuration/kdu:id +
+
+   + + (config-method) +
+
choiceconfigChoicecurrent/vnfd:vnfd/kdu:kdu-configuration
+
+   + + :(script) +
+
caseconfigcurrent/vnfd:vnfd/kdu:kdu-configuration
+
+   + + kdu:script +
+
containerconfigcurrent/vnfd:vnfd/kdu:kdu-configuration/kdu:script
+
+   + kdu:script-type +
+
leafenumerationconfig?current/vnfd:vnfd/kdu:kdu-configuration/kdu:script/kdu:script-type +
+
+   + + :(juju) +
+
caseconfigcurrent/vnfd:vnfd/kdu:kdu-configuration
+
+   + + kdu:juju +
+
containerconfigcurrent/vnfd:vnfd/kdu:kdu-configuration/kdu:juju
+
+   + kdu:charm +
+
leafstringconfig?current/vnfd:vnfd/kdu:kdu-configuration/kdu:juju/kdu:charm +
+
+   + kdu:proxy +
+
leafbooleanconfig?current/vnfd:vnfd/kdu:kdu-configuration/kdu:juju/kdu:proxy +
+
+   + + kdu:config-primitive[name] +
+
listconfigcurrent/vnfd:vnfd/kdu:kdu-configuration/kdu:config-primitive
+
+   + kdu:name +
+
leafstringconfigcurrent/vnfd:vnfd/kdu:kdu-configuration/kdu:config-primitive/kdu:name +
+
+   + + kdu:parameter[name] +
+
listconfigcurrent/vnfd:vnfd/kdu:kdu-configuration/kdu:config-primitive/kdu:parameter
+
+   + kdu:name +
+
leafstringconfigcurrent/vnfd:vnfd/kdu:kdu-configuration/kdu:config-primitive/kdu:parameter/kdu:name +
+
+   + kdu:data-type +
+
leafcommon:parameter-data-typeconfig?current/vnfd:vnfd/kdu:kdu-configuration/kdu:config-primitive/kdu:parameter/kdu:data-type +
+
+   + kdu:mandatory +
+
leafbooleanconfig?current/vnfd:vnfd/kdu:kdu-configuration/kdu:config-primitive/kdu:parameter/kdu:mandatory +
+
+   + kdu:default-value +
+
leafstringconfig?current/vnfd:vnfd/kdu:kdu-configuration/kdu:config-primitive/kdu:parameter/kdu:default-value +
+
+   + kdu:parameter-pool +
+
leafstringconfig?current/vnfd:vnfd/kdu:kdu-configuration/kdu:config-primitive/kdu:parameter/kdu:parameter-pool +
+
+   + kdu:read-only +
+
leafbooleanconfig?current/vnfd:vnfd/kdu:kdu-configuration/kdu:config-primitive/kdu:parameter/kdu:read-only +
+
+   + kdu:hidden +
+
leafbooleanconfig?current/vnfd:vnfd/kdu:kdu-configuration/kdu:config-primitive/kdu:parameter/kdu:hidden +
+
+   + kdu:user-defined-script +
+
leafstringconfig?current/vnfd:vnfd/kdu:kdu-configuration/kdu:config-primitive/kdu:user-defined-script +
+
+   + + kdu:initial-config-primitive[seq] +
+
listconfigcurrent/vnfd:vnfd/kdu:kdu-configuration/kdu:initial-config-primitive
+
+   + kdu:seq +
+
leafuint64configcurrent/vnfd:vnfd/kdu:kdu-configuration/kdu:initial-config-primitive/kdu:seq +
+
+   + + (primitive-type) +
+
choiceconfigChoicecurrent/vnfd:vnfd/kdu:kdu-configuration/kdu:initial-config-primitive
+
+   + + :(primitive-definition) +
+
caseconfigcurrent/vnfd:vnfd/kdu:kdu-configuration/kdu:initial-config-primitive
+
+   + kdu:name +
+
leafstringconfig?current/vnfd:vnfd/kdu:kdu-configuration/kdu:initial-config-primitive/kdu:name +
+
+   + + kdu:parameter[name] +
+
listconfigcurrent/vnfd:vnfd/kdu:kdu-configuration/kdu:initial-config-primitive/kdu:parameter
+
+   + kdu:name +
+
leafstringconfigcurrent/vnfd:vnfd/kdu:kdu-configuration/kdu:initial-config-primitive/kdu:parameter/kdu:name +
+
+   + kdu:data-type +
+
leafcommon:parameter-data-typeconfig?current/vnfd:vnfd/kdu:kdu-configuration/kdu:initial-config-primitive/kdu:parameter/kdu:data-type +
+
+   + kdu:value +
+
leafstringconfig?current/vnfd:vnfd/kdu:kdu-configuration/kdu:initial-config-primitive/kdu:parameter/kdu:value +
+
+   + kdu:user-defined-script +
+
leafstringconfig?current/vnfd:vnfd/kdu:kdu-configuration/kdu:initial-config-primitive/kdu:user-defined-script +
+
+   + + kdu:terminate-config-primitive[seq] +
+
listconfigcurrent/vnfd:vnfd/kdu:kdu-configuration/kdu:terminate-config-primitive
+
+   + kdu:seq +
+
leafuint64configcurrent/vnfd:vnfd/kdu:kdu-configuration/kdu:terminate-config-primitive/kdu:seq +
+
+   + kdu:name +
+
leafstringconfig?current/vnfd:vnfd/kdu:kdu-configuration/kdu:terminate-config-primitive/kdu:name +
+
+   + + kdu:parameter[name] +
+
listconfigcurrent/vnfd:vnfd/kdu:kdu-configuration/kdu:terminate-config-primitive/kdu:parameter
+
+   + kdu:name +
+
leafstringconfigcurrent/vnfd:vnfd/kdu:kdu-configuration/kdu:terminate-config-primitive/kdu:parameter/kdu:name +
+
+   + kdu:data-type +
+
leafcommon:parameter-data-typeconfig?current/vnfd:vnfd/kdu:kdu-configuration/kdu:terminate-config-primitive/kdu:parameter/kdu:data-type +
+
+   + kdu:value +
+
leafstringconfig?current/vnfd:vnfd/kdu:kdu-configuration/kdu:terminate-config-primitive/kdu:parameter/kdu:value +
+
+   + kdu:user-defined-script +
+
leafstringconfig?current/vnfd:vnfd/kdu:kdu-configuration/kdu:terminate-config-primitive/kdu:user-defined-script +
+
+   + + kdu:metrics[name] +
+
listconfigcurrent/vnfd:vnfd/kdu:kdu-configuration/kdu:metrics
+
+   + kdu:name +
+
leafstringconfigcurrent/vnfd:vnfd/kdu:kdu-configuration/kdu:metrics/kdu:name +
+
+   + + kdu:config-access +
+
containerconfigcurrent/vnfd:vnfd/kdu:kdu-configuration/kdu:config-access
+
+   + + kdu:ssh-access +
+
containerconfigcurrent/vnfd:vnfd/kdu:kdu-configuration/kdu:config-access/kdu:ssh-access
+
+   + kdu:required +
+
leafbooleanconfig?current/vnfd:vnfd/kdu:kdu-configuration/kdu:config-access/kdu:ssh-access/kdu:required +
+
+   + kdu:default-user +
+
leafstringconfig?current/vnfd:vnfd/kdu:kdu-configuration/kdu:config-access/kdu:ssh-access/kdu:default-user +
+
+   + kdu:blacklist-config-primitive +
+
leaf-listenumerationconfig*current/vnfd:vnfd/kdu:kdu-configuration/kdu:blacklist-config-primitive +
+
+   + + kdu:kdu-model[id] +
+
listconfigcurrent/vnfd:vnfd/kdu:kdu-model
+
+   + kdu:id +
+
leafstringconfigcurrent/vnfd:vnfd/kdu:kdu-model/kdu:id +
+
+   + kdu:kdu-model-type +
+
leafenumerationconfig?current/vnfd:vnfd/kdu:kdu-model/kdu:kdu-model-type +
+
+   + kdu:kdu-model-locator +
+
leafstringconfig?current/vnfd:vnfd/kdu:kdu-model/kdu:kdu-model-locator +
+
+   + mgmt-interface:mgmt-cp +
+
leafleafrefconfig?current/vnfd:vnfd/mgmt-interface:mgmt-cp +
+
+   + + vip:vip[name] +
+
listconfigcurrent/vnfd:vnfd/vip:vip
+
+   + vip:name +
+
leafstringconfigcurrent/vnfd:vnfd/vip:vip/vip:name +
+
+   + + vip:paired-interfaces[vdu-id-ref] +
+
listconfigcurrent/vnfd:vnfd/vip:vip/vip:paired-interfaces
+
+   + vip:vdu-id-ref +
+
leafleafrefconfigcurrent/vnfd:vnfd/vip:vip/vip:paired-interfaces/vip:vdu-id-ref +
+
+   + vip:interface-ref +
+
leafleafrefconfig?current/vnfd:vnfd/vip:vip/vip:paired-interfaces/vip:interface-ref + +
+
+ + + diff --git a/augments/vnfd/additional-info.yang b/augments/vnfd/additional-info.yang new file mode 100644 index 0000000..2119073 --- /dev/null +++ b/augments/vnfd/additional-info.yang @@ -0,0 +1,42 @@ +/* + Copyright 2020 Whitestack LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +module additional-info { + yang-version 1.1; + namespace "urn:etsi:osm:yang:augments:additional-info"; + prefix "additional-info"; + + import etsi-nfv-vnfd { + prefix vnfd; + } + + import common-augments { + prefix common; + } + + augment "/vnfd:vnfd" { + uses common:description; + } + + augment "/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:virtual-link-protocol-data/vnfd:l3-protocol-data" { + uses common:description; + } + + augment "/vnfd:vnfd/vnfd:virtual-storage-desc" { + uses common:description; + } +} diff --git a/augments/vnfd/alarm.yang b/augments/vnfd/alarm.yang new file mode 100644 index 0000000..7b6db1f --- /dev/null +++ b/augments/vnfd/alarm.yang @@ -0,0 +1,70 @@ +/* + Copyright 2020 Whitestack LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +module alarm { + yang-version 1.1; + namespace "urn:etsi:osm:yang:augments:alarm"; + prefix "alarm"; + + import etsi-nfv-vnfd { + prefix vnfd; + } + + import common-augments { + prefix common; + } + + grouping extended-alarm { + list alarm { + key "alarm-id"; + + leaf alarm-id { + description + "This field is reserved for the identifier assigned by the VIM provider"; + + type string; + } + + + leaf vnf-monitoring-param-ref { + description + "Reference to the VNF level monitoring parameter + that is aggregated"; + type leafref { + path "/vnfd:vnfd/vnfd:df/vnfd:monitoring-parameter/vnfd:id"; + } + } + + uses common:alarm-properties; + } + + } + + augment "/vnfd:vnfd/vnfd:vdu" { + uses extended-alarm; + } +} + + + + + + + + + + diff --git a/augments/vnfd/alternative-images.yang b/augments/vnfd/alternative-images.yang new file mode 100644 index 0000000..08adcc3 --- /dev/null +++ b/augments/vnfd/alternative-images.yang @@ -0,0 +1,57 @@ +/* + Copyright 2020 Whitestack LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +module alternative-images { + yang-version 1.1; + namespace "urn:etsi:osm:yang:alternative-images"; + prefix "alternative-images"; + + import etsi-nfv-vnfd { + prefix vnfd; + } + + grouping extended-vim-type { + leaf vim-type { + description + "VIM type: openvim, openstack, vmware, aws, etc."; + type string; + } + } + grouping extended-alternative-images { + leaf-list alternative-sw-image-desc { + description + "List of alternative images per VIM type. + Different images can be used for specific types of VIMs instead + of the default image. This allows deployments in sites where the + image identifier in the VIM is given by the VIM provider and + cannot be modified. + If an alternative image is specified for a VIM type, it will prevail + over the default image"; + type leafref { + path "/vnfd:vnfd/vnfd:sw-image-desc/vnfd:id"; + } + } + } + + augment "/vnfd:vnfd/vnfd:sw-image-desc" { + uses extended-vim-type; + } + + augment "/vnfd:vnfd/vnfd:vdu" { + uses extended-alternative-images; + } +} \ No newline at end of file diff --git a/augments/vnfd/cloud-init.yang b/augments/vnfd/cloud-init.yang new file mode 100644 index 0000000..160c5c8 --- /dev/null +++ b/augments/vnfd/cloud-init.yang @@ -0,0 +1,54 @@ +/* + Copyright 2019 Whitestack LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +module cloud-init { + yang-version 1.1; + namespace "urn:etsi:osm:yang:augments:cloud-init"; + prefix "cloud-init"; + + import etsi-nfv-vnfd { + prefix vnfd; + } + + grouping extended-cloud-init { + choice cloud-init-input { + description + "Indicates how the contents of cloud-init script are provided. + There are 2 choices - inline or in a file"; + + case inline { + leaf cloud-init { + description + "Contents of cloud-init script, provided inline, in cloud-config format"; + type string; + } + } + + case filename { + leaf cloud-init-file { + description + "Name of file with contents of cloud-init script in cloud-config format"; + type string; + } + } + } + } + + augment "/vnfd:vnfd/vnfd:vdu" { + uses extended-cloud-init; + } +} \ No newline at end of file diff --git a/augments/vnfd/configuration.yang b/augments/vnfd/configuration.yang new file mode 100644 index 0000000..94a226d --- /dev/null +++ b/augments/vnfd/configuration.yang @@ -0,0 +1,92 @@ +/* + Copyright 2020 Whitestack LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +module configuration { + yang-version 1.1; + namespace "urn:etsi:osm:yang:configuration"; + prefix "configuration"; + + import etsi-nfv-vnfd { + prefix vnfd; + } + + import day1-2 { + prefix day1-2; + } + + import kdu { + prefix kdu; + } + grouping extended-vnf-configuration { + leaf vnf-configuration-id { + description + "Reference for the VNF configuration to use in this DF"; + type leafref { + path "/vnfd:vnfd/day1-2:vnf-configuration/day1-2:id"; + } + } + } + + grouping extended-vdu-configuration { + leaf vdu-configuration-id { + description + "Reference for the VDU configuration to use in this DF"; + type leafref { + path "/vnfd:vnfd/day1-2:vdu-configuration/day1-2:id"; + } + } + } + + grouping extended-kdu-configuration { + list kdu-profile { + key "name"; + + leaf name { + description + "Reference to the KDU"; + type leafref { + path "/vnfd:vnfd/kdu:kdu/kdu:name"; + } + } + + leaf kdu-configuration-id { + description + "Reference to the KDU configuration to use in this DF"; + type leafref { + path "/vnfd:vnfd/kdu:kdu-configuration/kdu:id"; + } + } + + leaf kdu-model-id { + description + "Reference to the KDU model to use in this DF"; + type leafref { + path "/vnfd:vnfd/kdu:kdu-model/kdu:id"; + } + } + } + } + + augment "/vnfd:vnfd/vnfd:df" { + uses extended-vnf-configuration; + uses extended-kdu-configuration; + } + + augment "/vnfd:vnfd/vnfd:df/vnfd:vdu-profile" { + uses extended-vdu-configuration; + } +} \ No newline at end of file diff --git a/augments/vnfd/day1-2.yang b/augments/vnfd/day1-2.yang new file mode 100644 index 0000000..e66ce16 --- /dev/null +++ b/augments/vnfd/day1-2.yang @@ -0,0 +1,65 @@ +/* + Copyright 2020 Whitestack LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +module day1-2 { + yang-version 1.1; + namespace "urn:etsi:osm:yang:augments:day1-2"; + prefix "day1-2"; + + import etsi-nfv-vnfd { + prefix vnfd; + } + + import common-augments { + prefix common; + } + + grouping extended-vnf-configuration { + list vnf-configuration { + key "id"; + leaf id { + description + "Internal identifier for the VNF configuration"; + type string; + } + uses common:vnfc-configuration; + uses common:vnfc-relations; + uses common:vdu-config-access; + } + } + + grouping extended-vdu-configuration { + list vdu-configuration { + key "id"; + leaf id { + description + "Internal identifier for the VDU configuration"; + type string; + } + uses common:vnfc-configuration; + uses common:vdu-config-access; + } + } + + augment "/vnfd:vnfd" { + uses extended-vnf-configuration; + } + + augment "/vnfd:vnfd" { + uses extended-vdu-configuration; + } +} \ No newline at end of file diff --git a/augments/vnfd/epa.yang b/augments/vnfd/epa.yang new file mode 100644 index 0000000..d47d6a9 --- /dev/null +++ b/augments/vnfd/epa.yang @@ -0,0 +1,262 @@ +/* + Copyright 2020 Whitestack LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +module epa { + yang-version 1.1; + namespace "urn:etsi:osm:yang:augments:epa"; + prefix "epa"; + + import etsi-nfv-vnfd { + prefix vnfd; + } + + grouping allocation-properties { + leaf limit { + description + "Defines the maximum allocation. The value 0 indicates that usage is not limited. + This parameter ensures that the instance never uses more than the defined amount of resource."; + type uint64; + } + + leaf reserve { + description + "Defines the guaranteed minimum reservation. + If needed, the machine will definitely get allocated the reserved amount of resources."; + type uint64; + } + + leaf shares { + description + "Number of shares allocated. + Specifies the proportional weighted share for the domain. + If this element is omitted, the service defaults to the OS provided defaults"; + type uint64; + } + } + + grouping extended-mem-quota { + container mem-quota { + description + "Memory quota describes the memory resource allocation policy. + Limit and Reserve values are defined in MB"; + uses allocation-properties; + } + } + + grouping extended-vif-quota { + container vif-quota { + description + "Virtual interfaces quota describes the virtual interface bandwidth resource allocation policy. + Limit and Reserve values are defined in Mbps"; + uses allocation-properties; + } + } + + grouping extended-disk-io-quota { + container disk-io-quota { + description + "Disk IO quota describes the disk IO operations resource allocation policy. + Limit and Reserve values are defined in IOPS"; + uses allocation-properties; + } + } + + grouping extended-cpu-quota { + container cpu-quota { + description + "CPU quota describes the CPU resource allocation policy. + Limit and Reserve values are defined in MHz"; + uses allocation-properties; + } + } + + grouping extended-cpu-policy { + leaf thread-policy { + description + "CPU thread pinning policy describes how to + place the guest CPUs when the host supports + hyper threads: + AVOID : Avoids placing a guest on a host + with threads. + SEPARATE: Places vCPUs on separate cores, + and avoids placing two vCPUs on + two threads of same core. + ISOLATE : Places each vCPU on a different core, + and places no vCPUs from a different + guest on the same core. + PREFER : Attempts to place vCPUs on threads + of the same core."; + type enumeration { + enum AVOID; + enum SEPARATE; + enum ISOLATE; + enum PREFER; + } + } + } + + grouping extended-mempage-size { + leaf mempage-size { + description + "Memory page allocation size. If a VM requires + hugepages, it should choose LARGE or SIZE_2MB + or SIZE_1GB. If the VM prefers hugepages it + should choose PREFER_LARGE. + LARGE : Require hugepages (either 2MB or 1GB) + SMALL : Doesn't require hugepages + SIZE_2MB : Requires 2MB hugepages + SIZE_1GB : Requires 1GB hugepages + PREFER_LARGE : Application prefers hugepages"; + type enumeration { + enum LARGE; + enum SMALL; + enum SIZE_2MB; + enum SIZE_1GB; + enum PREFER_LARGE; + } + } + } + grouping extended-numa { + container numa-node-policy { + description + "This policy defines NUMA topology of the + guest. Specifically identifies if the guest + should be run on a host with one NUMA + node or multiple NUMA nodes. As an example + a guest might need 8 VCPUs and 4 GB of + memory. However, it might need the VCPUs + and memory distributed across multiple + NUMA nodes. In this scenario, NUMA node + 1 could run with 6 VCPUs and 3GB, and + NUMA node 2 could run with 2 VCPUs and + 1GB."; + + leaf node-cnt { + description + "The number of NUMA nodes to expose to the VM."; + type uint16; + } + + leaf mem-policy { + description + "This policy specifies how the memory should + be allocated in a multi-node scenario. + STRICT : The memory must be allocated + strictly from the memory attached + to the NUMA node. + PREFERRED : The memory should be allocated + preferentially from the memory + attached to the NUMA node"; + type enumeration { + enum STRICT; + enum PREFERRED; + } + } + + list node { + key id; + leaf id { + description + "NUMA node identification. Typically + it's 0 or 1"; + type uint64; + } + + list vcpu { + key "id"; + description + "List of VCPUs to allocate on + this NUMA node."; + leaf id { + type uint64; + description + "List of VCPUs ids to allocate on + this NUMA node"; + } + } + + leaf memory-mb { + description + "Memory size expressed in MB + for this NUMA node."; + type uint64; + } + + choice om-numa-type { + description + "OpenMANO Numa type selection"; + + case cores { + leaf num-cores { + type uint8; + } + } + + case paired-threads { + container paired-threads { + leaf num-paired-threads { + type uint8; + } + + list paired-thread-ids { + description + "List of thread pairs to use in case of paired-thread NUMA"; + max-elements 16; + key thread-a; + + leaf thread-a { + type uint8; + } + + leaf thread-b { + type uint8; + } + } + } + } + case threads { + leaf num-threads { + type uint8; + } + } + } + } + } + } + + augment "/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-memory" { + uses extended-numa; + uses extended-mempage-size; + uses extended-mem-quota; + } + + augment "/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-cpu/vnfd:pinning" { + uses extended-cpu-policy; + } + + augment "/vnfd:vnfd/vnfd:virtual-compute-desc/vnfd:virtual-cpu" { + uses extended-cpu-quota; + } + + augment "/vnfd:vnfd/vnfd:virtual-storage-desc" { + uses extended-disk-io-quota; + } + + augment "/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:virtual-network-interface-requirement" { + uses extended-vif-quota; + } +} \ No newline at end of file diff --git a/augments/vnfd/interface.yang b/augments/vnfd/interface.yang new file mode 100644 index 0000000..a33eed1 --- /dev/null +++ b/augments/vnfd/interface.yang @@ -0,0 +1,58 @@ +/* + Copyright 2020 Whitestack LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +module interface { + yang-version 1.1; + namespace "urn:etsi:osm:yang:augments:interface"; + prefix "interface"; + + import etsi-nfv-vnfd { + prefix vnfd; + } + + import common-augments { + prefix common; + } + + grouping extended-interface { + description + "List of Interfaces (external and internal) for the VNF"; + + leaf position { + description + "Explicit Position of the interface within the list"; + type uint32; + } + + leaf mac-address { + description + "MAC address of the interface. + Some VNFs require a specific MAC address to be configured + in the interface. While this is not recommended at all in + NFV environments, this parameter exists to allow those + scenarios. + This parameter will be likely deprecated in the future."; + type string; + } + + uses common:virtual-interface; + } + + augment "/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:virtual-network-interface-requirement" { + uses extended-interface; + } +} \ No newline at end of file diff --git a/augments/vnfd/kdu.yang b/augments/vnfd/kdu.yang new file mode 100644 index 0000000..0cad701 --- /dev/null +++ b/augments/vnfd/kdu.yang @@ -0,0 +1,165 @@ +/* + Copyright 2020 Whitestack LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +module kdu { + yang-version 1.1; + namespace "urn:etsi:osm:yang:augments:kdu"; + prefix "kdu"; + + import etsi-nfv-vnfd { + prefix vnfd; + } + + import common-augments { + prefix common; + } + + grouping extended-ext-cpd { + leaf k8s-cluster-net { + description + "Reference to the K8s cluster network + to which CPs instantiated from this external CP + Descriptor (CPD) connect."; + type leafref { + path "/vnfd:vnfd/kdu:k8s-cluster/kdu:nets/kdu:id"; + } + } + } + + grouping extended-kdu-configuration { + list kdu-configuration { + key "id"; + leaf id { + description + "Internal identifier for the KDU configuration"; + type string; + } + uses common:vnfc-configuration; + uses common:vdu-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; + } + } + } + } + + 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 + "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 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; + } + } + } + } + + 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 diff --git a/augments/vnfd/mgmt-interface.yang b/augments/vnfd/mgmt-interface.yang new file mode 100644 index 0000000..b4353d0 --- /dev/null +++ b/augments/vnfd/mgmt-interface.yang @@ -0,0 +1,40 @@ +/* + Copyright 2020 Whitestack LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +module mgmt-interface { + yang-version 1.1; + namespace "urn:etsi:osm:yang:augments:mgmt-interface"; + prefix "mgmt-interface"; + + import etsi-nfv-vnfd { + prefix vnfd; + } + + grouping extended-mgmt-interface { + leaf mgmt-cp { + description + "Connection point over which the VNF is managed."; + type leafref { + path "/vnfd:vnfd/vnfd:ext-cpd/vnfd:id"; + } + } + } + + augment "/vnfd:vnfd" { + uses extended-mgmt-interface; + } +} \ No newline at end of file diff --git a/augments/vnfd/scaling.yang b/augments/vnfd/scaling.yang new file mode 100644 index 0000000..049ebc7 --- /dev/null +++ b/augments/vnfd/scaling.yang @@ -0,0 +1,169 @@ +/* + Copyright 2020 Whitestack LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +module scaling { + yang-version 1.1; + namespace "urn:etsi:osm:yang:augments:scaling"; + prefix "scaling"; + + import etsi-nfv-vnfd { + prefix vnfd; + } + + import common-augments { + prefix common; + } + + import day1-2 { + prefix day1-2; + } + + grouping extended-scaling { + list scaling-policy { + + key "name"; + + leaf name { + description + "Name of the scaling policy"; + type string; + } + + leaf scaling-type { + description + "Type of scaling"; + type common:scaling-policy-type; + } + + leaf enabled { + description + "Specifies if the scaling policy can be applied"; + type boolean; + default true; + } + + leaf scale-in-operation-type { + description + "Operation to be applied to check between scaling criterias to + check if the scale in threshold condition has been met. + Defaults to AND"; + type common:scaling-criteria-operation; + default AND; + } + + leaf scale-out-operation-type { + description + "Operation to be applied to check between scaling criterias to + check if the scale out threshold condition has been met. + Defauls to OR"; + type common:scaling-criteria-operation; + default OR; + } + + leaf threshold-time { + description + "The duration for which the criteria must hold true"; + type uint32; + mandatory true; + } + + leaf cooldown-time { + description + "The duration after a scaling-in/scaling-out action has been + triggered, for which there will be no further optional"; + type uint32; + mandatory true; + } + + list scaling-criteria { + description + "list of conditions to be met for generating scaling + requests"; + key "name"; + + leaf name { + type string; + } + + leaf scale-in-threshold { + description + "Value below which scale-in requests are generated"; + type decimal64{ + fraction-digits 10; + } + } + + leaf scale-in-relational-operation { + description + "The relational operator used to compare the monitoring param + against the scale-in-threshold."; + type common:relational-operation-type; + default LE; + } + + leaf scale-out-threshold { + description + "Value above which scale-out requests are generated"; + type decimal64{ + fraction-digits 10; + } + } + + leaf scale-out-relational-operation { + description + "The relational operator used to compare the monitoring param + against the scale-out-threshold."; + type common:relational-operation-type; + default GE; + } + + leaf vnf-monitoring-param-ref { + description + "Reference to the VNF level monitoring parameter + that is aggregated"; + type leafref { + path "/vnfd:vnfd/vnfd:df/vnfd:monitoring-parameter/vnfd:id"; + } + } + } + } + + list scaling-config-action { + description + "List of scaling config actions"; + key "trigger"; + + leaf trigger { + description + "scaling trigger"; + type common:scaling-trigger; + } + + leaf vnf-config-primitive-name-ref { + description + "Reference to the VNF config primitive"; + type leafref { + path "/vnfd:vnfd/day1-2:vnf-configuration/day1-2:config-primitive/day1-2:name"; + } + } + } + } + + augment "/vnfd:vnfd/vnfd:df/vnfd:scaling-aspect" { + uses extended-scaling; + } +} \ No newline at end of file diff --git a/augments/vnfd/various.yang b/augments/vnfd/various.yang new file mode 100644 index 0000000..23f86ca --- /dev/null +++ b/augments/vnfd/various.yang @@ -0,0 +1,120 @@ +/* + Copyright 2020 Whitestack LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +module various { + yang-version 1.1; + namespace "urn:etsi:osm:yang:augments:various"; + prefix "various"; + + import etsi-nfv-vnfd { + prefix vnfd; + } + + grouping extended-vld { + container provider-network { + description + "Container for the provider network."; + leaf physical-network { + description + "Name of the physical network on which the provider + network is built."; + type string; + } + + leaf segmentation_id { + description + "ID of segregated virtual networks"; + type uint32; + } + } + } + + grouping extended-security-group { + leaf security-group { + description + "Name of the security group"; + type string; + } + } + + grouping extended-cpd { + leaf port-security-enabled { + description + "Enables the port security for the port."; + type boolean; + default true; + } + } + + grouping extended-vdu { + leaf pdu-type { + description + "Type of PDU. If this field exists, the deployment unit must be + understood as a PDU, not as a VDU. This field is used to identify + the category of PDU instances to be used at instantiation time. For + the instantiation to be successful, there must be available + PDU instances of this type in the selected datacenter."; + type string; + } + + container supplemental-boot-data { + leaf boot-data-drive { + description + "Some VIMs implement additional drives to host config-files or meta-data"; + type boolean; + default false; + } + } + } + + grouping extended-device-bus { + leaf device-bus { + description + "Type of disk-bus on which this disk is exposed to guest"; + type enumeration { + enum ide; + enum usb; + enum virtio; + enum scsi; + } + } + } + + augment "/vnfd:vnfd/vnfd:int-virtual-link-desc" { + uses extended-vld; + } + + augment "/vnfd:vnfd/vnfd:df/vnfd:virtual-link-profile/vnfd:virtual-link-protocol-data/vnfd:l3-protocol-data" { + uses extended-security-group; + } + + augment "/vnfd:vnfd/vnfd:ext-cpd" { + uses extended-cpd; + } + + augment "/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd" { + uses extended-cpd; + } + + augment "/vnfd:vnfd/vnfd:vdu" { + uses extended-vdu; + } + + augment "/vnfd:vnfd/vnfd:virtual-storage-desc" { + uses extended-device-bus; + } +} \ No newline at end of file diff --git a/augments/vnfd/vip.yang b/augments/vnfd/vip.yang new file mode 100644 index 0000000..1db62eb --- /dev/null +++ b/augments/vnfd/vip.yang @@ -0,0 +1,63 @@ +/* + Copyright 2020 Whitestack LLC + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or + implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +module vip { + yang-version 1.1; + namespace "urn:etsi:osm:yang:augments:vip"; + prefix "vip"; + + import etsi-nfv-vnfd { + prefix vnfd; + } + + grouping extended-vip { + list vip { + description + "Paired interfaces from different VDUs that share a Virtual IP"; + + key "name"; + leaf name { + description + "Name of the Virtual IP"; + type string; + } + + list paired-interfaces { + key "vdu-id-ref"; + leaf vdu-id-ref { + description + "Reference to the VDU"; + type leafref { + path "/vnfd:vnfd/vnfd:vdu/vnfd:id"; + } + } + + leaf interface-ref { + description + "Reference to the interface"; + type leafref { + path "/vnfd:vnfd/vnfd:vdu/vnfd:int-cpd/vnfd:virtual-network-interface-requirement/vnfd:name"; + } + } + } + } + } + + augment "/vnfd:vnfd" { + uses extended-vip; + } +} \ No newline at end of file diff --git a/patch/deref_warnings.patch b/patch/deref_warnings.patch new file mode 100644 index 0000000..457b73a --- /dev/null +++ b/patch/deref_warnings.patch @@ -0,0 +1,86 @@ +# +# Copyright 2019 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +--- /tmp/sol006_model/src/yang/etsi-nfv-ns.yang 2019-12-04 13:56:05.510072421 +0000 ++++ /tmp/sol006_model/src/yang/etsi-nfv-ns_new.yang 2019-12-04 13:59:32.675856579 +0000 +@@ -434,8 +434,8 @@ + mandatory "true"; + container vnf-profile { + leaf vnf-profile-id { +- must ". = deref(../../vnfd-profile-id)" { +- } ++ // must ". = deref(../../vnfd-profile-id)" { ++ // } + type leafref { + path "../../../../../nsd/df/vnf-profile/id"; + } +@@ -443,8 +443,8 @@ + } + container pnf-profile { + leaf pnf-profile-id { +- must ". = deref(../../pnfd-profile-id)" { +- } ++ // must ". = deref(../../pnfd-profile-id)" { ++ // } + type leafref { + path "../../../../../nsd/df/pnf-profile/id"; + } +@@ -452,8 +452,8 @@ + } + container ns-profile { + leaf ns-profile-id { +- must ". = deref(../../ns-profile-id)" { +- } ++ // must ". = deref(../../ns-profile-id)" { ++ // } + type leafref { + path "../../../../../nsd/df/ns-profile/id"; + } +@@ -469,8 +469,8 @@ + choice constituent-cpd-id { + container vnf { + leaf vnfd-id { +- must ". = deref(../../vnfd-profile-id)/../vnfd-id" { +- } ++ // must ". = deref(../../vnfd-profile-id)/../vnfd-id" { ++ // } + type leafref { + path "../../../../../vnfd/id"; + } +@@ -483,8 +483,8 @@ + } + container pnf { + leaf pnfd-id { +- must ". = deref(../../pnfd-profile-id)/../pnfd-id" { +- } ++ // must ". = deref(../../pnfd-profile-id)/../pnfd-id" { ++ // } + type leafref { + path "../../../../../pnfd/id"; + } +@@ -497,9 +497,9 @@ + } + container ns { + leaf nsd-id { +- must ". = deref(../../nested-ns-profile-id)/" + +- "../nsd-id" { +- } ++ // must ". = deref(../../nested-ns-profile-id)/" + ++ // "../nsd-id" { ++ // } + + type leafref { + path "../../../../../nsd/id"; diff --git a/patch/nested_workaround.patch b/patch/nested_workaround.patch new file mode 100644 index 0000000..68f3fb1 --- /dev/null +++ b/patch/nested_workaround.patch @@ -0,0 +1,36 @@ +# +# Copyright 2019 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +--- /tmp/sol006_model/src/yang/etsi-nfv-ns.yang 2019-12-04 14:26:39.453144459 +0000 ++++ /tmp/sol006_model/src/yang/etsi-nfv-ns_new.yang 2019-12-04 14:28:34.659419362 +0000 +@@ -159,7 +159,7 @@ + "GS NFV IFA014: Section 6.2.3.2 Sapd information element"; + } + +- choice associated-cpd-id { ++ //choice associated-cpd-id { + container vnf { + leaf vnfd-id { + mandatory true; +@@ -209,7 +209,7 @@ + } + } + } +- } ++ //} + } + } + diff --git a/tools/Dockerfile b/tools/Dockerfile new file mode 100644 index 0000000..c7fdce4 --- /dev/null +++ b/tools/Dockerfile @@ -0,0 +1,30 @@ +# Copyright 2019 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +FROM alpine + +WORKDIR /src + +RUN apk update && apk add --update --no-cache git bash util-linux grep +RUN git clone https://osm.etsi.org/gerrit/osm/RO.git +RUN git clone https://osm.etsi.org/gerrit/osm/devops.git +RUN git clone https://osm.etsi.org/gerrit/osm/LCM.git +RUN git clone https://osm.etsi.org/gerrit/osm/NBI.git +RUN git clone https://osm.etsi.org/gerrit/osm/POL.git +RUN wget https://raw.githubusercontent.com/gdbtek/linux-cookbooks/master/libraries/util.bash + +COPY /src /src + +RUN /bin/bash scanModules.sh \ No newline at end of file diff --git a/tools/src/scanModules.sh b/tools/src/scanModules.sh new file mode 100644 index 0000000..200c63e --- /dev/null +++ b/tools/src/scanModules.sh @@ -0,0 +1,46 @@ +#!/bin/bash +# Copyright 2019 Whitestack LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +. ./util.bash --source-only + +VNFD="vnfd-catalog" +NSD="nsd-catalog" + +> search_results.txt +> statistics.txt +echo "(pattern),(version),RO,devops,NBI,POL,LCM" &> statistics.txt + +MODULES=("RO" "devops" "NBI" "POL" "LCM") + +grep -r --exclude=*.txt $VNFD . &>> search_results.txt +grep -r --exclude=*.txt $NSD . &>> search_results.txt + +generateStatistics(){ #1: $VNFD or $NSD, 2: commit tag + STATISTICS="$1,$2" + for i in "${MODULES[@]}" + do + STATISTICS="$STATISTICS,$(grep -F ./$i/ search_results.txt | grep $1 | wc -l)" + done + echo $STATISTICS &>>statistics.txt +} + +generateStatistics $VNFD "latest" +generateStatistics $NSD "latest" + +COLOR='\033[0;31m' +echo -e "${COLOR}-- Number of ocurrences of a pattern in each module for a specific version --" + +printTable ',' "$(cat statistics.txt)" true diff --git a/tox.ini b/tox.ini index ed1ef21..2a96a59 100644 --- a/tox.ini +++ b/tox.ini @@ -1,19 +1,16 @@ -# Copyright 2019 ETSI OSM +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at # -# All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. +# http://www.apache.org/licenses/LICENSE-2.0 # +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or +# implied. +# See the License for the specific language governing permissions and +# limitations under the License. + [tox] envlist = py3 toxworkdir={homedir}/.tox @@ -31,6 +28,13 @@ commands = flake8 setup.py [testenv:build] +basepython = python +deps = stdeb + setuptools-version-command + setuptools == 44.0.0 +commands = python setup.py --command-packages=stdeb.command bdist_deb + +[testenv:build3] basepython = python3 deps = stdeb setuptools-version-command