Commit f20483aa authored by jethanandani's avatar jethanandani
Browse files

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
Loading
Loading
Loading
Loading
Loading
+13 −0
Original line number Diff line number Diff line
@@ -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 $?
+296 −0
Original line number Diff line number Diff line
<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>
+26 −2
Original line number Diff line number Diff line
@@ -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>
+2 −0
Original line number Diff line number Diff line
@@ -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
+3 −3
Original line number Diff line number Diff line
@@ -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.";
Loading