Commit f20483aa authored by Mahesh Jethanandani's avatar Mahesh Jethanandani

Merge branch 'master' into 'bug#227'

# Conflicts:
#   run-test.sh
#   src/yang/etsi-nfv-ns.yang
#   src/yang/etsi-nfv-vnf.yang
parents a576567f 1aa76d6b
Pipeline #848 passed with stage
in 0 seconds
......@@ -11,8 +11,21 @@ IMG_NAME="sol006"
VERSION=latest
IMG="$IMG_NAME:$VERSION"
CMT=$(git rev-parse --short HEAD)
docker build --tag "$IMG" .
docker run "$IMG"
echo "Building HTML tree"
docker run -v"$(pwd)/src/yang/:/yang/" mjethanandani/pyang \
"/bin/sh" -c "cd /yang/ && pyang -f jstree -p /yang/ \
/yang/etsi-nfv.yang > etsi-nfv.html"
sed -r -i 's|<a href=\"http://www.tail-f.com">|<a href="http://etsi.org">|g' src/yang/etsi-nfv.html
sed -r -i 's|data\:image/gif\;base64,R0lGODlhS.*RCAA7|https://www.etsi.org/images/ETSILogoTwitter.png\" height=\"100|g' src/yang/etsi-nfv.html
sed -r -i "s|<div class=\"app\">|<p>Commit: <a href=\"https://forge.etsi.org/gitlab/nfv/SOL006/commit/${CMT}\">$CMT</a>, Build:<a href=\"$BUILD_URL\">$BUILD_NUMBER</a></p><div class=\"app\">|g" src/yang/etsi-nfv.html
exit $?
<nfv xmlns="urn:etsi:nfv:yang:etsi-nfv-descriptors">
<vnfd>
<id>complex-vnf</id>
<provider>My Company</provider>
<product-name>complex-vnf</product-name>
<software-version>1.0</software-version>
<version>1.0</version>
<vnfm-info>netconf</vnfm-info>
<vdu>
<id>control-plane-active</id>
<name>control-plane-active</name>
<int-cpd>
<id>internal</id>
<int-virtual-link-desc>internal-vl</int-virtual-link-desc>
<layer-protocol>ipv4</layer-protocol>
</int-cpd>
<int-cpd>
<id>mgmt</id>
<int-virtual-link-desc>mgmt</int-virtual-link-desc>
<layer-protocol>ipv4</layer-protocol>
</int-cpd>
<virtual-compute-desc>CP</virtual-compute-desc>
<virtual-storage-desc>root</virtual-storage-desc>
<sw-image-desc>CP</sw-image-desc>
</vdu>
<vdu>
<id>control-plane-standby</id>
<name>control-plane-standby</name>
<int-cpd>
<id>internal</id>
<int-virtual-link-desc>internal-vl</int-virtual-link-desc>
<layer-protocol>ipv4</layer-protocol>
</int-cpd>
<int-cpd>
<id>mgmt</id>
<int-virtual-link-desc>mgmt</int-virtual-link-desc>
<layer-protocol>ipv4</layer-protocol>
</int-cpd>
<virtual-compute-desc>CP</virtual-compute-desc>
<virtual-storage-desc>root</virtual-storage-desc>
<sw-image-desc>CP</sw-image-desc>
</vdu>
<vdu>
<id>data-plane</id>
<name>data-plane</name>
<int-cpd>
<id>in</id>
<layer-protocol>ipv4</layer-protocol>
</int-cpd>
<int-cpd>
<id>internal</id>
<int-virtual-link-desc>internal-vl</int-virtual-link-desc>
<layer-protocol>ipv4</layer-protocol>
</int-cpd>
<int-cpd>
<id>out</id>
<layer-protocol>ipv4</layer-protocol>
</int-cpd>
<virtual-compute-desc>DP</virtual-compute-desc>
<virtual-storage-desc>root</virtual-storage-desc>
<sw-image-desc>DP</sw-image-desc>
</vdu>
<virtual-compute-desc>
<id>CP</id>
<virtual-memory>
<size>16.0</size>
</virtual-memory>
<virtual-cpu>
<num-virtual-cpu>8</num-virtual-cpu>
</virtual-cpu>
</virtual-compute-desc>
<virtual-compute-desc>
<id>DP</id>
<virtual-memory>
<size>32.0</size>
</virtual-memory>
<virtual-cpu>
<num-virtual-cpu>16</num-virtual-cpu>
</virtual-cpu>
</virtual-compute-desc>
<virtual-storage-descriptor>
<id>root</id>
<type-of-storage>root-storage</type-of-storage>
<size-of-storage>10</size-of-storage>
</virtual-storage-descriptor>
<sw-image-desc>
<id>CP</id>
<name>CP</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/control-plane.qcow2</image>
</sw-image-desc>
<sw-image-desc>
<id>DP</id>
<name>DP</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/data-plane.qcow2</image>
</sw-image-desc>
<int-virtual-link-desc>
<id>internal-vl</id>
<connectivity-type>
<layer-protocol>
<protocol>ipv4</protocol>
</layer-protocol>
</connectivity-type>
</int-virtual-link-desc>
<int-virtual-link-desc>
<id>mgmt</id>
<connectivity-type>
<layer-protocol>
<protocol>ipv4</protocol>
</layer-protocol>
</connectivity-type>
</int-virtual-link-desc>
<ext-cpd>
<id>in</id>
<int-cpd>
<vdu-id>data-plane</vdu-id>
<cpd>in</cpd>
</int-cpd>
<layer-protocol>ipv4</layer-protocol>
</ext-cpd>
<ext-cpd>
<id>mgmt</id>
<int-virtual-link-desc>mgmt</int-virtual-link-desc>
<layer-protocol>ipv4</layer-protocol>
</ext-cpd>
<ext-cpd>
<id>out</id>
<int-cpd>
<vdu-id>data-plane</vdu-id>
<cpd>out</cpd>
</int-cpd>
<layer-protocol>ipv4</layer-protocol>
</ext-cpd>
<df>
<id>gold</id>
<vdu-profile>
<id>control-plane-active</id>
<min-number-of-instances>1</min-number-of-instances>
<max-number-of-instances>1</max-number-of-instances>
<affinity-or-anti-affinity-group>
<id>control-plane</id>
</affinity-or-anti-affinity-group>
</vdu-profile>
<vdu-profile>
<id>control-plane-standby</id>
<min-number-of-instances>1</min-number-of-instances>
<max-number-of-instances>1</max-number-of-instances>
<affinity-or-anti-affinity-group>
<id>control-plane</id>
</affinity-or-anti-affinity-group>
</vdu-profile>
<vdu-profile>
<id>data-plane</id>
<min-number-of-instances>2</min-number-of-instances>
<max-number-of-instances>8</max-number-of-instances>
</vdu-profile>
<instantiation-level>
<id>il-1</id>
<vdu-level>
<vdu-id>control-plane-active</vdu-id>
<number-of-instances>1</number-of-instances>
</vdu-level>
<vdu-level>
<vdu-id>control-plane-standby</vdu-id>
<number-of-instances>1</number-of-instances>
</vdu-level>
<vdu-level>
<vdu-id>data-plane</vdu-id>
<number-of-instances>2</number-of-instances>
</vdu-level>
</instantiation-level>
<instantiation-level>
<id>il-2</id>
<vdu-level>
<vdu-id>control-plane-active</vdu-id>
<number-of-instances>1</number-of-instances>
</vdu-level>
<vdu-level>
<vdu-id>control-plane-standby</vdu-id>
<number-of-instances>1</number-of-instances>
</vdu-level>
<vdu-level>
<vdu-id>data-plane</vdu-id>
<number-of-instances>4</number-of-instances>
</vdu-level>
</instantiation-level>
<default-instantiation-level>il-1</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>
<affinity-or-anti-affinity-group>
<id>control-plane</id>
<type>anti-affinity</type>
<scope>nfvi-node</scope>
</affinity-or-anti-affinity-group>
</df>
<df>
<id>silver</id>
<vdu-profile>
<id>control-plane-active</id>
<min-number-of-instances>1</min-number-of-instances>
<max-number-of-instances>1</max-number-of-instances>
<affinity-or-anti-affinity-group>
<id>control-plane</id>
</affinity-or-anti-affinity-group>
</vdu-profile>
<vdu-profile>
<id>control-plane-standby</id>
<min-number-of-instances>1</min-number-of-instances>
<max-number-of-instances>1</max-number-of-instances>
<affinity-or-anti-affinity-group>
<id>control-plane</id>
</affinity-or-anti-affinity-group>
</vdu-profile>
<vdu-profile>
<id>data-plane</id>
<min-number-of-instances>1</min-number-of-instances>
<max-number-of-instances>4</max-number-of-instances>
</vdu-profile>
<instantiation-level>
<id>il-1</id>
<vdu-level>
<vdu-id>control-plane-active</vdu-id>
<number-of-instances>1</number-of-instances>
</vdu-level>
<vdu-level>
<vdu-id>control-plane-standby</vdu-id>
<number-of-instances>1</number-of-instances>
</vdu-level>
<vdu-level>
<vdu-id>data-plane</vdu-id>
<number-of-instances>1</number-of-instances>
</vdu-level>
</instantiation-level>
<instantiation-level>
<id>il-2</id>
<vdu-level>
<vdu-id>control-plane-active</vdu-id>
<number-of-instances>1</number-of-instances>
</vdu-level>
<vdu-level>
<vdu-id>control-plane-standby</vdu-id>
<number-of-instances>1</number-of-instances>
</vdu-level>
<vdu-level>
<vdu-id>data-plane</vdu-id>
<number-of-instances>2</number-of-instances>
</vdu-level>
</instantiation-level>
<default-instantiation-level>il-1</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>
<affinity-or-anti-affinity-group>
<id>control-plane</id>
<type>anti-affinity</type>
<scope>nfvi-node</scope>
</affinity-or-anti-affinity-group>
</df>
</vnfd>
</nfv>
......@@ -49,9 +49,10 @@
</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>
<image>http://mycompany.images.com/asa.qcow2</image>
</sw-image-desc>
<ext-cpd>
<id>inside</id>
......@@ -99,6 +100,17 @@
</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>
<vnfd>
......@@ -151,9 +163,10 @@
</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/csr.qcow2</image>
<image>http://mycompany.images.com/csr.qcow2</image>
</sw-image-desc>
<ext-cpd>
<id>left</id>
......@@ -201,6 +214,17 @@
</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>
<nsd>
......
......@@ -33,6 +33,8 @@ confd_load -l -m nfv-nsd.xml
echo "Loading Data for descriptors"
confd_load -l -m nfv.xml
echo "Loading data for the complex Vnfd example"
confd_load -l -m complex-vnfd.xml
# Don't do this in the actual test, just waste of cycles
......
......@@ -531,7 +531,7 @@ submodule etsi-nfv-common {
when "../type='mac-address'";
leaf mac-address-assignment {
type boolean;
default true;
mandatory true;
description
"Specify if the MAC address assignment is the
responsibility of management and orchestration function
......@@ -557,7 +557,7 @@ submodule etsi-nfv-common {
when "../type='ip-address'";
leaf ip-address-assignment {
type boolean;
default "true";
mandatory true;
description
"Specify if the address assignment is the responsibility
of management and orchestration function or not. If it
......@@ -570,7 +570,7 @@ submodule etsi-nfv-common {
leaf floating-ip-activated {
type boolean;
default "true";
mandatory true;
description
"Specify if the floating IP scheme is activated on the CP
or not.";
......
......@@ -1004,20 +1004,20 @@ submodule etsi-nfv-vnf {
the underlying disk image.";
}
leaf min-disk {
type uint64;
units "GB";
default 0;
description
"The minimal disk size requirement for this software
image. The value of the 'size of storage' attribute
of the VirtualStorageDesc referencing this
SwImageDesc shall not be smaller than the value of
minDisk.";
reference
"GS NFV IFA011: Section 7.1.6.5, SwImageDesc
information element.";
}
leaf min-disk {
type uint64;
units "GB";
mandatory true;
description
"The minimal disk size requirement for this software
image. The value of the 'size of storage' attribute
of the VirtualStorageDesc referencing this
SwImageDesc shall not be smaller than the value of
minDisk.";
reference
"GS NFV IFA011: Section 7.1.6.5, SwImageDesc
information element.";
}
leaf min-ram {
type decimal64 {
......@@ -2648,6 +2648,17 @@ submodule etsi-nfv-vnf {
leaf key {
type string;
description
"Includes a VNF LCM script (e.g. written in a DSL as
specified in requirement VNF_PACK.LCM.001) triggered to
react to one of the events listed in the event
attribute.
The string value specified here is a path to a file in
the VNF package.";
reference
"GS NFV IFA011: Section 7.1.13 LifeCycleManagementScript
information element";
}
leaf value {
......
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