Commit 0463e048 authored by Mahesh Jethanandani's avatar Mahesh Jethanandani

Address bug#224

parent fb9620e7
Pipeline #1231 passed with stage
in 0 seconds
......@@ -78,11 +78,11 @@
<num-virtual-cpu>16</num-virtual-cpu>
</virtual-cpu>
</virtual-compute-desc>
<virtual-storage-descriptor>
<virtual-storage-desc>
<id>root</id>
<type-of-storage>root-storage</type-of-storage>
<size-of-storage>10</size-of-storage>
</virtual-storage-descriptor>
</virtual-storage-desc>
<sw-image-desc>
<id>CP</id>
<name>CP</name>
......@@ -116,17 +116,13 @@
<int-virtual-link-desc>
<id>internal-vl</id>
<connectivity-type>
<layer-protocol>
<protocol>ipv4</protocol>
</layer-protocol>
<layer-protocol>ipv4</layer-protocol>
</connectivity-type>
</int-virtual-link-desc>
<int-virtual-link-desc>
<id>mgmt</id>
<connectivity-type>
<layer-protocol>
<protocol>ipv4</protocol>
</layer-protocol>
<layer-protocol>ipv4</layer-protocol>
</connectivity-type>
</int-virtual-link-desc>
<ext-cpd>
......
<nsd xmlns="urn:etsi:nfv:yang:etsi-nfv-nsd">
<vnfd>
<id>ASA</id>
<provider>My Company</provider>
<product-name>My Company ASAv</product-name>
<software-version>9.8</software-version>
<version>9.8</version>
<vnfm-info>My Company Vnfm</vnfm-info>
<vdu>
<id>firewall</id>
<name>Firewall VDU</name>
<int-cpd>
<id>inside</id>
<layer-protocol xmlns:nfv="urn:etsi:nfv:yang:etsi-nfv-descriptors">nfv:ethernet</layer-protocol>
</int-cpd>
<int-cpd>
<id>management</id>
<layer-protocol xmlns:nfv="urn:etsi:nfv:yang:etsi-nfv-descriptors">nfv:ethernet</layer-protocol>
</int-cpd>
<int-cpd>
<id>outside</id>
<layer-protocol xmlns:nfv="urn:etsi:nfv:yang:etsi-nfv-descriptors">nfv:ethernet</layer-protocol>
</int-cpd>
<virtual-compute-desc>asa-vcd</virtual-compute-desc>
<virtual-storage-desc>asa-vsd</virtual-storage-desc>
<sw-image-desc>asa-image</sw-image-desc>
</vdu>
<virtual-compute-desc>
<id>asa-vcd</id>
<virtual-memory>
<size>4.0</size>
</virtual-memory>
<virtual-cpu>
<num-virtual-cpu>2</num-virtual-cpu>
</virtual-cpu>
</virtual-compute-desc>
<virtual-storage-desc>
<id>asa-vsd</id>
<type-of-storage xmlns:nfv="urn:etsi:nfv:yang:etsi-nfv-descriptors">nfv:root-storage</type-of-storage>
<size-of-storage>0</size-of-storage>
</virtual-storage-desc>
<sw-image-desc>
<id>asa-image</id>
<name>ASA image</name>
<version>1.1</version>
<checksum>
<algorithm xmlns:nfv="urn:etsi:nfv:yang:etsi-nfv-descriptors">nfv:sha-224</algorithm>
<hash>deadbeef</hash>
</checksum>
<container-format>bare</container-format>
<disk-format>qcow2</disk-format>
<min-ram>2.0</min-ram>
<size>1</size>
<image>http://www.cisco.com/asa.qcow2</image>
</sw-image-desc>
<ext-cpd>
<id>inside</id>
<int-cpd>
<vdu-id>firewall</vdu-id>
<cpd>inside</cpd>
</int-cpd>
<layer-protocol xmlns:nfv="urn:etsi:nfv:yang:etsi-nfv-descriptors">nfv:ethernet</layer-protocol>
</ext-cpd>
<ext-cpd>
<id>management</id>
<int-cpd>
<vdu-id>firewall</vdu-id>
<cpd>management</cpd>
</int-cpd>
<layer-protocol xmlns:nfv="urn:etsi:nfv:yang:etsi-nfv-descriptors">nfv:ethernet</layer-protocol>
</ext-cpd>
<ext-cpd>
<id>outside</id>
<int-cpd>
<vdu-id>firewall</vdu-id>
<cpd>outside</cpd>
</int-cpd>
<layer-protocol xmlns:nfv="urn:etsi:nfv:yang:etsi-nfv-descriptors">nfv:ethernet</layer-protocol>
</ext-cpd>
<df>
<id>normal</id>
<vdu-profile>
<id>firewall</id>
<min-number-of-instances>1</min-number-of-instances>
<max-number-of-instances>2</max-number-of-instances>
</vdu-profile>
<instantiation-level>
<id>double</id>
<vdu-level>
<vdu-id>firewall</vdu-id>
<number-of-instances>2</number-of-instances>
</vdu-level>
</instantiation-level>
<instantiation-level>
<id>single</id>
<vdu-level>
<vdu-id>firewall</vdu-id>
<number-of-instances>1</number-of-instances>
</vdu-level>
</instantiation-level>
<default-instantiation-level>single</default-instantiation-level>
</df>
</vnfd>
<nsd>
<id>firewall-nsd</id>
<vnfd-id>ASA</vnfd-id>
<sapd>
<id>inside</id>
</sapd>
<sapd>
<id>management</id>
</sapd>
<sapd>
<id>outside</id>
</sapd>
<df>
<id>firewall</id>
<vnf-profile>
<id>firewall</id>
<vnfd-id>ASA</vnfd-id>
<flavour-id>normal</flavour-id>
<instantiation-level>single</instantiation-level>
<min-number-of-instances>1</min-number-of-instances>
<max-number-of-instances>1</max-number-of-instances>
</vnf-profile>
<ns-instantiation-level>
<id>single</id>
<vnf-to-level-mapping>
<vnf-profile-id>firewall</vnf-profile-id>
<number-of-instances>1</number-of-instances>
</vnf-to-level-mapping>
</ns-instantiation-level>
</df>
<?xml version="1.0" encoding="UTF-8"?>
<config xmlns="urn:ietf:params:xml:ns:netconf:base:1.0">
<nfv xmlns="urn:etsi:nfv:yang:etsi-nfv-descriptors">
<vnfd>
<id>ASA</id>
<provider>My Company</provider>
<product-name>My Company ASAv</product-name>
<software-version>9.8</software-version>
<version>9.8</version>
<vnfm-info>My Company Vnfm</vnfm-info>
<vdu>
<id>firewall</id>
<name>Firewall VDU</name>
<int-cpd>
<id>inside</id>
<layer-protocol>ethernet</layer-protocol>
</int-cpd>
<int-cpd>
<id>management</id>
<layer-protocol>ethernet</layer-protocol>
</int-cpd>
<int-cpd>
<id>outside</id>
<layer-protocol>ethernet</layer-protocol>
</int-cpd>
<virtual-compute-desc>asa-vcd</virtual-compute-desc>
<virtual-storage-desc>asa-vsd</virtual-storage-desc>
<sw-image-desc>asa-image</sw-image-desc>
</vdu>
<virtual-compute-desc>
<id>asa-vcd</id>
<virtual-memory>
<size>4.0</size>
</virtual-memory>
<virtual-cpu>
<num-virtual-cpu>2</num-virtual-cpu>
</virtual-cpu>
</virtual-compute-desc>
<virtual-storage-desc>
<id>asa-vsd</id>
<type-of-storage>root-storage</type-of-storage>
<size-of-storage>0</size-of-storage>
</virtual-storage-desc>
<sw-image-desc>
<id>asa-image</id>
<name>ASA image</name>
<version>1.1</version>
<checksum>
<algorithm>sha-224</algorithm>
<hash>deadbeef</hash>
</checksum>
<container-format>bare</container-format>
<disk-format>qcow2</disk-format>
<min-disk>1</min-disk>
<min-ram>2.0</min-ram>
<size>1</size>
<image>http://mycompany.images.com/asa.qcow2</image>
</sw-image-desc>
<ext-cpd>
<id>inside</id>
<int-cpd>
<vdu-id>firewall</vdu-id>
<cpd>inside</cpd>
</int-cpd>
<layer-protocol>ethernet</layer-protocol>
</ext-cpd>
<ext-cpd>
<id>management</id>
<int-cpd>
<vdu-id>firewall</vdu-id>
<cpd>management</cpd>
</int-cpd>
<layer-protocol>ethernet</layer-protocol>
</ext-cpd>
<ext-cpd>
<id>outside</id>
<int-cpd>
<vdu-id>firewall</vdu-id>
<cpd>outside</cpd>
</int-cpd>
<layer-protocol>ethernet</layer-protocol>
</ext-cpd>
<df>
<id>normal</id>
<vdu-profile>
<id>firewall</id>
<min-number-of-instances>1</min-number-of-instances>
<max-number-of-instances>2</max-number-of-instances>
</vdu-profile>
<instantiation-level>
<id>double</id>
<vdu-level>
<vdu-id>firewall</vdu-id>
<number-of-instances>2</number-of-instances>
</vdu-level>
</instantiation-level>
<instantiation-level>
<id>single</id>
<vdu-level>
<vdu-id>firewall</vdu-id>
<number-of-instances>1</number-of-instances>
</vdu-level>
</instantiation-level>
<default-instantiation-level>single</default-instantiation-level>
<lcm-operations-configuration>
<scale-vnf-to-level-op-config>
<arbitrary-target-levels-supported>true</arbitrary-target-levels-supported>
</scale-vnf-to-level-op-config>
<terminate-vnf-op-config>
<min-graceful-termination>1</min-graceful-termination>
</terminate-vnf-op-config>
<operate-vnf-op-config>
<min-graceful-stop-timeout>1</min-graceful-stop-timeout>
</operate-vnf-op-config>
</lcm-operations-configuration>
</df>
</vnfd>
</nfv>
<nsd xmlns="urn:etsi:nfv:yang:etsi-nfv-nsd">
<nsd>
<id>firewall-nsd</id>
<vnfd-id>ASA</vnfd-id>
<sapd>
<id>inside</id>
</sapd>
<sapd>
<id>management</id>
</sapd>
<sapd>
<id>outside</id>
</sapd>
<df>
<id>firewall</id>
<vnf-profile>
<id>firewall</id>
<vnfd-id>ASA</vnfd-id>
<flavour-id>normal</flavour-id>
<instantiation-level>single</instantiation-level>
<min-number-of-instances>1</min-number-of-instances>
<max-number-of-instances>1</max-number-of-instances>
</vnf-profile>
<ns-instantiation-level>
<id>single</id>
<vnf-to-level-mapping>
<vnf-profile-id>firewall</vnf-profile-id>
<number-of-instances>1</number-of-instances>
</vnf-to-level-mapping>
</ns-instantiation-level>
</df>
</nsd>
</nsd>
</nsd>
</config>
......@@ -48,6 +48,7 @@
</checksum>
<container-format>bare</container-format>
<disk-format>qcow2</disk-format>
<min-disk>1</min-disk>
<min-ram>2.0</min-ram>
<size>1</size>
<image>http://www.cisco.com/asa.qcow2</image>
......
......@@ -97,7 +97,7 @@ submodule etsi-nfv-ns {
leaf-list vnfd-id {
type leafref {
path "../../vnfd/id";
path "/nfv:nfv/nfv:vnfd/nfv:id";
}
description
"References the VNFD of a constituent VNF.";
......@@ -108,7 +108,7 @@ submodule etsi-nfv-ns {
leaf-list pnfd-id {
type leafref {
path "../../pnfd/id";
path "/nfv:nfv/nfv:pnfd/nfv:id";
}
description
"References the PNFD of a constituent PNF.";
......@@ -164,7 +164,7 @@ submodule etsi-nfv-ns {
leaf vnfd-id {
mandatory true;
type leafref {
path "../../../../vnfd/id";
path "/nfv:nfv/nfv:vnfd/nfv:id";
}
must "boolean(../../../vnfd-id[.=current()])";
}
......@@ -172,7 +172,7 @@ submodule etsi-nfv-ns {
leaf ext-cpd-id {
mandatory true;
type leafref {
path "deref(../vnfd-id)/../ext-cpd/id";
path "deref(../vnfd-id)/../nfv:ext-cpd/nfv:id";
}
}
}
......@@ -181,7 +181,7 @@ submodule etsi-nfv-ns {
leaf pnfd-id {
mandatory true;
type leafref {
path "../../../../pnfd/id";
path "/nfv:nfv/nfv:pnfd/nfv:id";
}
must "boolean(../pnfd-id[.=current()])";
}
......@@ -189,7 +189,7 @@ submodule etsi-nfv-ns {
leaf ext-cpd-id {
mandatory true;
type leafref {
path "deref(../pnfd-id)/../ext-cpd/id";
path "deref(../pnfd-id)/../nfv:ext-cpd/nfv:id";
}
}
}
......@@ -472,12 +472,12 @@ submodule etsi-nfv-ns {
must ". = deref(../../vnfd-profile-id)/../vnfd-id" {
}
type leafref {
path "../../../../../vnfd/id";
path "/nfv:nfv/nfv:vnfd/nfv:id";
}
}
leaf cpd-id {
type leafref {
path "deref(../vnfd-id)/../ext-cpd/id";
path "deref(../vnfd-id)/../nfv:ext-cpd/nfv:id";
}
}
}
......@@ -486,12 +486,12 @@ submodule etsi-nfv-ns {
must ". = deref(../../pnfd-profile-id)/../pnfd-id" {
}
type leafref {
path "../../../../../pnfd/id";
path "/nfv:nfv/nfv:pnfd/nfv:id";
}
}
leaf pnf-cpd-id {
type leafref {
path "deref(../pnfd-id)/../ext-cpd/id";
path "deref(../pnfd-id)/../nfv:ext-cpd/nfv:id";
}
}
}
......@@ -642,6 +642,7 @@ submodule etsi-nfv-ns {
leaf-list autoscale-rule {
type string;
}
list lifecycle-management-script {
key "event";
leaf event {
......@@ -721,7 +722,7 @@ submodule etsi-nfv-ns {
leaf vnfd-id {
mandatory true;
type leafref {
path "../../../../vnfd/id";
path "/nfv:nfv/nfv:vnfd/nfv:id";
}
description
"References a VNFD.";
......@@ -733,7 +734,7 @@ submodule etsi-nfv-ns {
leaf flavour-id {
mandatory true;
type leafref {
path "deref(../vnfd-id)/../df/id";
path "deref(../vnfd-id)/../nfv:df/nfv:id";
}
description
"Identifies a flavour within the VNFD.";
......@@ -745,7 +746,8 @@ submodule etsi-nfv-ns {
leaf instantiation-level {
mandatory true;
type leafref {
path "deref(../flavour-id)/../instantiation-level/id";
path "deref(../flavour-id)/../nfv:instantiation-level/" +
"nfv:id";
}
description
"Identifier of the instantiation level of the VNF DF
......@@ -845,7 +847,7 @@ submodule etsi-nfv-ns {
leaf constituent-cpd-id {
type leafref {
path "deref(../../../vnfd-id)/../ext-cpd/id";
path "deref(../../../vnfd-id)/../nfv:ext-cpd/nfv:id";
}
description
"A reference to the descriptor of a connection point
......@@ -879,7 +881,7 @@ submodule etsi-nfv-ns {
leaf pnfd-id {
type leafref {
path "../../../../pnfd/id";
path "/nfv:nfv/nfv:pnfd/nfv:id";
}
description
"References a PNFD.";
......@@ -935,7 +937,7 @@ submodule etsi-nfv-ns {
leaf constituent-cpd-id {
type leafref {
path "deref(../../../pnfd-id)/../ext-cpd/id";
path "deref(../../../pnfd-id)/../nfv:ext-cpd/nfv:id";
}
description
"A reference to the descriptor of a connection point
......@@ -1506,7 +1508,7 @@ submodule etsi-nfv-ns {
container vnf-indicator-info {
leaf vnfd-id {
type leafref {
path "../../../../../vnfd/id";
path "/nfv:nfv/nfv:vnfd/nfv:id";
}
description
"Identifies a VNFD.";
......@@ -1518,7 +1520,7 @@ submodule etsi-nfv-ns {
leaf vnf-indicator {
mandatory true;
type leafref {
path "deref(../vnfd-id)/../indicator/id";
path "deref(../vnfd-id)/../nfv:indicator/nfv:id";
}
description
"Identifies a VNF indicator within the VNFD.";
......
......@@ -20,19 +20,6 @@ module etsi-nfv-nsd {
}
container nsd {
list vnfd {
key "id";
description
"A VNF Descriptor (VNFD) is a deployment template which
describes a VNF in terms of deployment and operational
behaviour requirements. It also contains connectivity,
interface and virtualised resource requirements";
reference
"GS NFV-IFA011: Section 7.1.2, VNFD information element";
uses vnf:vnfd;
}
list nsd {
key "id";
max-elements 1;
......@@ -45,18 +32,5 @@ module etsi-nfv-nsd {
"GS NFV-IFA014: Section 6.2.2, Network Service Descriptor
information element";
}
list pnfd {
key "id";
description
"The Pnfd information element is a deployment template
enabling on-boarding PNFs and referencing them from an
NSD. It focuses on connectivity aspects only.";
reference
"GS NFV-IFA014: Section 6.6.2, Pnfd information element.";
uses vnf:pnfd;
}
}
}
......@@ -236,7 +236,7 @@ submodule etsi-nfv-vnf {
leaf int-virtual-link-desc {
type leafref {
path "../../../int-virtual-link-desc/id";
path "/nfv:nfv/nfv:vnfd/nfv:int-virtual-link-desc/nfv:id";
}
description
"Reference of the internal VLD which this internal CPD
......@@ -259,7 +259,7 @@ submodule etsi-nfv-vnf {
leaf nicio-requirements {
type leafref {
path "../../../virtual-compute-desc/id";
path "/nfv:nfv/nfv:vnfd/nfv:virtual-compute-desc/nfv:id";
}
description
"This references (couples) the CPD with any logical node I/O
......@@ -1221,7 +1221,7 @@ submodule etsi-nfv-vnf {
Descriptor (CPD) connect. Either intVirtualLinkDesc or
intCpd shall be present.";
type leafref {
path "../../int-virtual-link-desc/id";
path "/nfv:nfv/nfv:vnfd/nfv:int-virtual-link-desc/nfv:id";
}
}
......@@ -1243,7 +1243,7 @@ submodule etsi-nfv-vnf {
leaf nicio-requirements {
type leafref {
path "../../virtual-compute-desc/id";
path "/nfv:nfv/nfv:vnfd/nfv:virtual-compute-desc/nfv:id";
}
description
"This references (couples) the CPD with any logical node I/O
......@@ -1374,7 +1374,7 @@ submodule etsi-nfv-vnf {
leaf id {
type leafref {
path "../../../int-virtual-link-desc/id";
path "/nfv:nfv/nfv:vnfd/nfv:int-virtual-link-desc/nfv:id";
}
description
"Uniquely identifies a Vnf VLD.";
......@@ -1386,7 +1386,7 @@ submodule etsi-nfv-vnf {
leaf flavour {
type leafref {
path "deref(../../../ext-cpd/int-virtual-link-desc)" +
"/../flavour/id";
"/../nfv:flavour/nfv:id";
}
description
"Identifies a flavour within the VnfVirtualLinkDesc.";
......@@ -2713,7 +2713,7 @@ submodule etsi-nfv-vnf {
leaf-list virtual-link-desc {
type leafref {
path "../../int-virtual-link-desc/id";
path "/nfv:nfv/nfv:vnfd/nfv:int-virtual-link-desc/nfv:id";
}
description
"References to VnfVirtualLinkDesc that are part of this
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment