Loading example-data/nfv-vnf-pkg.xml 0 → 100644 +90 −0 Original line number Diff line number Diff line <pkg xmlns="urn:etsi:nfv:yang:etsi-nfv-pkg"> <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> <layer-protocol xmlns:nfv="urn:etsi:nfv:yang:etsi-nfv-descriptors">nfv:ethernet</layer-protocol> </ext-cpd> <ext-cpd> <id>management</id> <layer-protocol xmlns:nfv="urn:etsi:nfv:yang:etsi-nfv-descriptors">nfv:ethernet</layer-protocol> </ext-cpd> <ext-cpd> <id>outside</id> <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> </pkg> example-data/nfv.xml +8 −16 Original line number Diff line number Diff line Loading @@ -34,11 +34,11 @@ <num-virtual-cpu>2</num-virtual-cpu> </virtual-cpu> </virtual-compute-desc> <virtual-storage-descriptor> <virtual-storage-desc> <id>asa-vsd</id> <type-of-storage>root-storage</type-of-storage> <size-of-storage>0</size-of-storage> </virtual-storage-descriptor> </virtual-storage-desc> <sw-image-desc> <id>asa-image</id> <name>ASA image</name> Loading Loading @@ -136,11 +136,11 @@ <num-virtual-cpu>2</num-virtual-cpu> </virtual-cpu> </virtual-compute-desc> <virtual-storage-descriptor> <virtual-storage-desc> <id>csr-vsd</id> <type-of-storage>root-storage</type-of-storage> <size-of-storage>0</size-of-storage> </virtual-storage-descriptor> </virtual-storage-desc> <sw-image-desc> <id>csr-image</id> <name>CSR image</name> Loading Loading @@ -256,9 +256,7 @@ <virtual-link-desc> <id>fw2dpi</id> <connectivity-type> <layer-protocol> <protocol>ethernet</protocol> </layer-protocol> <layer-protocol>ethernet</layer-protocol> </connectivity-type> <df> <id>normal</id> Loading @@ -271,9 +269,7 @@ <virtual-link-desc> <id>mgmt</id> <connectivity-type> <layer-protocol> <protocol>ipv4</protocol> </layer-protocol> <layer-protocol>ipv4</layer-protocol> </connectivity-type> <df> <id>normal</id> Loading @@ -286,9 +282,7 @@ <virtual-link-desc> <id>r2fw</id> <connectivity-type> <layer-protocol> <protocol>ethernet</protocol> </layer-protocol> <layer-protocol>ethernet</layer-protocol> </connectivity-type> <df> <id>normal</id> Loading Loading @@ -511,9 +505,7 @@ <virtual-link-desc> <id>r2fw</id> <connectivity-type> <layer-protocol> <protocol>ipv4</protocol> </layer-protocol> <layer-protocol>ipv4</layer-protocol> </connectivity-type> <df> <id>r2fw</id> Loading run-test.sh +9 −2 Original line number Diff line number Diff line Loading @@ -7,17 +7,24 @@ set -e source /opt/confd/confdrc cd src echo "Testing compilation" CONFD_OPTS="--fail-on-warnings" CONFD_OPTS="" echo "Testing compilations of pkg." confdc -c $CONFD_OPTS -o /opt/confd/etc/confd/etsi-nfv-pkg.fxs etsi-nfv-pkg.yang echo "Testing compilations of descriptors." confdc -c $CONFD_OPTS -o /opt/confd/etc/confd/etsi-nfv-descriptors.fxs etsi-nfv-descriptors.yang echo "Starting ConfD" confd echo "Loading Data" echo "Loading Data for pkg" confd_load -l -m nfv-vnf-pkg.xml echo "Loading Data for descriptors" confd_load -l -m nfv.xml # Don't do this in the actual test, just waste of cycles # echo "Stopping ConfD" # confd --stop src/yang/etsi-nfv-common.yang +8 −20 Original line number Diff line number Diff line Loading @@ -3,6 +3,9 @@ submodule etsi-nfv-common { belongs-to etsi-nfv-descriptors { prefix nfv; } organization "European Telecommunications Standards Institute (ETSI)"; description "Common data types for ETSI data models."; Loading Loading @@ -316,14 +319,10 @@ submodule etsi-nfv-common { grouping connectivity-type { container connectivity-type { list layer-protocol { key "protocol"; leaf protocol { leaf-list layer-protocol { type identityref { base layer-protocol; } } description "Identifies the protocols that the VL uses (Ethernet, MPLS, ODU2, IPV4, IPV6, Pseudo-Wire). The top layer Loading Loading @@ -634,17 +633,6 @@ submodule etsi-nfv-common { reference "GS NFV IFA011: Section 7.1.6.3 Cpd information element"; } leaf security-group-rule-id { type leafref { path "/nfv/vnfd/security-group-rule/id"; } description "Reference of the security group rules bound to this CPD."; reference "GS NFV IFA011: Section 7.1.6.3 Cpd information element"; } } grouping security-group-rule { Loading src/yang/etsi-nfv-descriptors.yang +13 −1 Original line number Diff line number Diff line Loading @@ -22,7 +22,19 @@ module etsi-nfv-descriptors { } container nfv { 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 vnfd; } uses nsd; uses pnfd; } Loading Loading
example-data/nfv-vnf-pkg.xml 0 → 100644 +90 −0 Original line number Diff line number Diff line <pkg xmlns="urn:etsi:nfv:yang:etsi-nfv-pkg"> <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> <layer-protocol xmlns:nfv="urn:etsi:nfv:yang:etsi-nfv-descriptors">nfv:ethernet</layer-protocol> </ext-cpd> <ext-cpd> <id>management</id> <layer-protocol xmlns:nfv="urn:etsi:nfv:yang:etsi-nfv-descriptors">nfv:ethernet</layer-protocol> </ext-cpd> <ext-cpd> <id>outside</id> <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> </pkg>
example-data/nfv.xml +8 −16 Original line number Diff line number Diff line Loading @@ -34,11 +34,11 @@ <num-virtual-cpu>2</num-virtual-cpu> </virtual-cpu> </virtual-compute-desc> <virtual-storage-descriptor> <virtual-storage-desc> <id>asa-vsd</id> <type-of-storage>root-storage</type-of-storage> <size-of-storage>0</size-of-storage> </virtual-storage-descriptor> </virtual-storage-desc> <sw-image-desc> <id>asa-image</id> <name>ASA image</name> Loading Loading @@ -136,11 +136,11 @@ <num-virtual-cpu>2</num-virtual-cpu> </virtual-cpu> </virtual-compute-desc> <virtual-storage-descriptor> <virtual-storage-desc> <id>csr-vsd</id> <type-of-storage>root-storage</type-of-storage> <size-of-storage>0</size-of-storage> </virtual-storage-descriptor> </virtual-storage-desc> <sw-image-desc> <id>csr-image</id> <name>CSR image</name> Loading Loading @@ -256,9 +256,7 @@ <virtual-link-desc> <id>fw2dpi</id> <connectivity-type> <layer-protocol> <protocol>ethernet</protocol> </layer-protocol> <layer-protocol>ethernet</layer-protocol> </connectivity-type> <df> <id>normal</id> Loading @@ -271,9 +269,7 @@ <virtual-link-desc> <id>mgmt</id> <connectivity-type> <layer-protocol> <protocol>ipv4</protocol> </layer-protocol> <layer-protocol>ipv4</layer-protocol> </connectivity-type> <df> <id>normal</id> Loading @@ -286,9 +282,7 @@ <virtual-link-desc> <id>r2fw</id> <connectivity-type> <layer-protocol> <protocol>ethernet</protocol> </layer-protocol> <layer-protocol>ethernet</layer-protocol> </connectivity-type> <df> <id>normal</id> Loading Loading @@ -511,9 +505,7 @@ <virtual-link-desc> <id>r2fw</id> <connectivity-type> <layer-protocol> <protocol>ipv4</protocol> </layer-protocol> <layer-protocol>ipv4</layer-protocol> </connectivity-type> <df> <id>r2fw</id> Loading
run-test.sh +9 −2 Original line number Diff line number Diff line Loading @@ -7,17 +7,24 @@ set -e source /opt/confd/confdrc cd src echo "Testing compilation" CONFD_OPTS="--fail-on-warnings" CONFD_OPTS="" echo "Testing compilations of pkg." confdc -c $CONFD_OPTS -o /opt/confd/etc/confd/etsi-nfv-pkg.fxs etsi-nfv-pkg.yang echo "Testing compilations of descriptors." confdc -c $CONFD_OPTS -o /opt/confd/etc/confd/etsi-nfv-descriptors.fxs etsi-nfv-descriptors.yang echo "Starting ConfD" confd echo "Loading Data" echo "Loading Data for pkg" confd_load -l -m nfv-vnf-pkg.xml echo "Loading Data for descriptors" confd_load -l -m nfv.xml # Don't do this in the actual test, just waste of cycles # echo "Stopping ConfD" # confd --stop
src/yang/etsi-nfv-common.yang +8 −20 Original line number Diff line number Diff line Loading @@ -3,6 +3,9 @@ submodule etsi-nfv-common { belongs-to etsi-nfv-descriptors { prefix nfv; } organization "European Telecommunications Standards Institute (ETSI)"; description "Common data types for ETSI data models."; Loading Loading @@ -316,14 +319,10 @@ submodule etsi-nfv-common { grouping connectivity-type { container connectivity-type { list layer-protocol { key "protocol"; leaf protocol { leaf-list layer-protocol { type identityref { base layer-protocol; } } description "Identifies the protocols that the VL uses (Ethernet, MPLS, ODU2, IPV4, IPV6, Pseudo-Wire). The top layer Loading Loading @@ -634,17 +633,6 @@ submodule etsi-nfv-common { reference "GS NFV IFA011: Section 7.1.6.3 Cpd information element"; } leaf security-group-rule-id { type leafref { path "/nfv/vnfd/security-group-rule/id"; } description "Reference of the security group rules bound to this CPD."; reference "GS NFV IFA011: Section 7.1.6.3 Cpd information element"; } } grouping security-group-rule { Loading
src/yang/etsi-nfv-descriptors.yang +13 −1 Original line number Diff line number Diff line Loading @@ -22,7 +22,19 @@ module etsi-nfv-descriptors { } container nfv { 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 vnfd; } uses nsd; uses pnfd; } Loading