summaryrefslogtreecommitdiffstats
path: root/sdc-os-chef
diff options
context:
space:
mode:
authorYuli Shlosberg <ys9693@att.com>2017-09-12 14:11:48 +0300
committerMichael Lando <ml636r@att.com>2017-09-20 13:22:07 +0300
commit9dde926417f80d93f4159be8164ed5b3d8790a75 (patch)
tree0df8a81a29b85c66c1e18dbedf8bf5b66526bf8c /sdc-os-chef
parent0ad3c80822671529393e551bbb7b4a69dbd8550e (diff)
Build sanity docker execute automation
Change-Id: Iab282ea167d12fba4a3f425a5d300397ab435b44 Issue-Id: SDC-315 Signed-off-by: Michael Lando <ml636r@att.com>
Diffstat (limited to 'sdc-os-chef')
-rw-r--r--sdc-os-chef/pom.xml561
-rwxr-xr-xsdc-os-chef/scripts/docker_run.sh16
-rw-r--r--sdc-os-chef/sdc-cassandra/chef-repo/cookbooks/cassandra-actions/attributes/default.rb3
-rw-r--r--sdc-os-chef/sdc-sanity/Dockerfile7
-rw-r--r--sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/Files/VNFs/infra.zipbin0 -> 4155 bytes
-rw-r--r--sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/Files/VNFs/vbng.zipbin0 -> 3704 bytes
-rw-r--r--sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/Files/VNFs/vbrgemu.zipbin0 -> 3325 bytes
-rw-r--r--sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/Files/VNFs/vgmux.zipbin0 -> 3536 bytes
-rw-r--r--sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/Files/VNFs/vgw.zipbin0 -> 3469 bytes
-rw-r--r--sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/conf/attsdc-packages.yaml12
-rw-r--r--sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/conf/credentials.yaml48
-rw-r--r--sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/conf/log4j.properties34
-rw-r--r--sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/startTest.sh129
-rw-r--r--sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/recipes/SDC_Simulator_3_logback.rb10
-rw-r--r--sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/recipes/SDC_Simulator_4_locate_keystore.rb16
-rw-r--r--sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/recipes/SDC_Simulator_5_create_jetty_modules.rb14
-rw-r--r--sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/recipes/sanityTests_1_cleanup_jettydir.rb49
-rw-r--r--sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/recipes/sanityTests_2_setup_configuration.rb43
-rw-r--r--sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/recipes/sanityTests_3_sanity_execution.rb13
-rw-r--r--sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/templates/default/BE-titan.properties.erb1
-rw-r--r--sdc-os-chef/sdc-sanity/chef-solo/roles/sanityTests.json23
-rw-r--r--sdc-os-chef/sdc-sanity/chef-solo/solo.json4
-rw-r--r--sdc-os-chef/sdc-sanity/startup.sh18
23 files changed, 733 insertions, 268 deletions
diff --git a/sdc-os-chef/pom.xml b/sdc-os-chef/pom.xml
index f7e1eaca78..1e24e26d72 100644
--- a/sdc-os-chef/pom.xml
+++ b/sdc-os-chef/pom.xml
@@ -1,43 +1,45 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
+ xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
- <modelVersion>4.0.0</modelVersion>
+ <modelVersion>4.0.0</modelVersion>
- <artifactId>sdc-os-chef</artifactId>
+ <artifactId>sdc-os-chef</artifactId>
- <parent>
- <groupId>org.openecomp.sdc</groupId>
- <artifactId>sdc-main</artifactId>
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>sdc-main</artifactId>
<version>1.2.0-SNAPSHOT</version>
- </parent>
+ </parent>
- <properties>
- <docker.tag>${project.version}-${maven.build.timestamp}</docker.tag>
- <docker.latest.tag>${project.version}-latest</docker.latest.tag>
- </properties>
+ <properties>
+ <docker.tag>${project.version}-${maven.build.timestamp}</docker.tag>
+ <docker.latest.tag>${project.version}-latest</docker.latest.tag>
+ </properties>
- <build>
- <plugins>
- <plugin>
- <artifactId>maven-clean-plugin</artifactId>
- <version>3.0.0</version>
- <executions>
- <execution>
- <id>clean.tosca.chef.os.folder</id>
- <phase>clean</phase>
- <goals>
- <goal>clean</goal>
- </goals>
- <configuration>
- <filesets>
- <fileset>
- <directory>${project.basedir}\sdc-cassandra\chef-repo\cookbooks\cassandra-actions\attributes\</directory>
- <followSymlinks>false</followSymlinks>
- <includes>
- <include>**/default.rb</include>
- </includes>
- </fileset>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-clean-plugin</artifactId>
+ <version>3.0.0</version>
+ <executions>
+ <execution>
+ <id>clean.tosca.chef.os.folder</id>
+ <phase>clean</phase>
+ <goals>
+ <goal>clean</goal>
+ </goals>
+ <configuration>
+ <filesets>
+ <fileset>
+ <directory>
+ ${project.basedir}\sdc-cassandra\chef-repo\cookbooks\cassandra-actions\attributes\
+ </directory>
+ <followSymlinks>false</followSymlinks>
+ <includes>
+ <include>**/default.rb</include>
+ </includes>
+ </fileset>
<!-- static configuration files -->
<fileset>
<directory>${project.parent.basedir}/sdc-os-chef/sdc-backend/chef-repo/cookbooks/sdc-catalog-be/files/default</directory>
@@ -48,77 +50,83 @@
<include>logback.xml</include>
</includes>
</fileset>
- </filesets>
- </configuration>
- </execution>
- </executions>
- </plugin>
- <plugin>
- <groupId>ru.yaal.maven</groupId>
- <artifactId>write-text-files-maven-plugin</artifactId>
- <version>1.1</version>
- <configuration>
- <charset>UTF-8</charset>
- <files>
- <file>
- <path>${project.basedir}\sdc-cassandra\chef-repo\cookbooks\cassandra-actions\attributes\default.rb</path>
- <lines>
- <line>normal['version'] = "${parsedVersion.majorVersion}.${parsedVersion.minorVersion}.${parsedVersion.incrementalVersion}"</line>
- </lines>
- </file>
- </files>
- </configuration>
- <executions>
- <execution>
- <id>write-text-files</id>
- <phase>prepare-package</phase>
- <goals>
- <goal>write-text-files</goal>
- </goals>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
+ </filesets>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>ru.yaal.maven</groupId>
+ <artifactId>write-text-files-maven-plugin</artifactId>
+ <version>1.1</version>
+ <configuration>
+ <charset>UTF-8</charset>
+ <files>
+ <file>
+ <path>
+ ${project.basedir}\sdc-cassandra\chef-repo\cookbooks\cassandra-actions\attributes\default.rb
+ </path>
+ <lines>
+ <line>normal['version'] =
+ "${parsedVersion.majorVersion}.${parsedVersion.minorVersion}.${parsedVersion.incrementalVersion}"
+ </line>
+ </lines>
+ </file>
+ </files>
+ </configuration>
+ <executions>
+ <execution>
+ <id>write-text-files</id>
+ <phase>prepare-package</phase>
+ <goals>
+ <goal>write-text-files</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
- <profiles>
- <profile>
- <id>docker-staging</id>
- <properties>
- <docker.tag>${project.version}-STAGING-${maven.build.timestamp}</docker.tag>
- <docker.latest.tag>${project.version}-STAGING-latest</docker.latest.tag>
- </properties>
- </profile>
+ <profiles>
+ <profile>
+ <id>docker-staging</id>
+ <properties>
+ <docker.tag>${project.version}-STAGING-${maven.build.timestamp}</docker.tag>
+ <docker.latest.tag>${project.version}-STAGING-latest</docker.latest.tag>
+ </properties>
+ </profile>
- <profile>
- <id>docker</id>
- <activation>
- <activeByDefault>false</activeByDefault>
- </activation>
- <build>
- <plugins>
- <plugin>
- <artifactId>maven-resources-plugin</artifactId>
- <version>3.0.2</version>
- <executions>
- <execution>
- <id>copy-resources-apidocs</id>
- <phase>validate</phase>
- <goals>
- <goal>copy-resources</goal>
- </goals>
- <configuration>
- <outputDirectory>${basedir}/sdc-backend</outputDirectory>
- <resources>
- <resource>
- <directory>${project.parent.basedir}/openecomp-be/tools/swagger-ui/api-docs</directory>
- <includes>
- <include>api-docs.war</include>
- </includes>
- </resource>
- </resources>
- </configuration>
- </execution>
+ <profile>
+ <id>docker</id>
+ <activation>
+ <activeByDefault>false</activeByDefault>
+ </activation>
+ <build>
+ <plugins>
+ <plugin>
+ <artifactId>maven-resources-plugin</artifactId>
+ <version>3.0.2</version>
+ <executions>
+ <execution>
+ <id>copy-resources-apidocs</id>
+ <phase>validate</phase>
+ <goals>
+ <goal>copy-resources</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>${basedir}/sdc-backend</outputDirectory>
+ <resources>
+ <resource>
+ <directory>
+ ${project.parent.basedir}/openecomp-be/tools/swagger-ui/api-docs
+ </directory>
+ <includes>
+ <include>api-docs.war</include>
+ </includes>
+ </resource>
+ </resources>
+ </configuration>
+ </execution>
<execution>
<id>copy-static-configuration-files</id>
@@ -142,185 +150,224 @@
</configuration>
</execution>
- <execution>
- <id>copy-resources-be</id>
- <phase>validate</phase>
- <goals>
- <goal>copy-resources</goal>
- </goals>
- <configuration>
- <outputDirectory>${basedir}/sdc-backend</outputDirectory>
- <resources>
- <resource>
- <directory>${project.parent.basedir}/openecomp-be/api/openecomp-sdc-rest-webapp/onboarding-rest-war/target</directory>
- <includes>
- <include>onboarding-be-${project.version}.war</include>
- </includes>
- </resource>
- </resources>
- </configuration>
- </execution>
- <execution>
- <id>copy-resources-fe</id>
- <phase>validate</phase>
- <goals>
- <goal>copy-resources</goal>
- </goals>
- <configuration>
- <outputDirectory>${basedir}/sdc-frontend</outputDirectory>
- <resources>
- <resource>
- <directory>${project.parent.basedir}/openecomp-ui/target</directory>
- <includes>
- <include>onboarding-fe-${project.version}.war</include>
- </includes>
- </resource>
- </resources>
- </configuration>
- </execution>
- </executions>
- </plugin>
-
+ <execution>
+ <id>copy-resources-be</id>
+ <phase>validate</phase>
+ <goals>
+ <goal>copy-resources</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>${basedir}/sdc-backend</outputDirectory>
+ <resources>
+ <resource>
+ <directory>
+ ${project.parent.basedir}/openecomp-be/api/openecomp-sdc-rest-webapp/onboarding-rest-war/target
+ </directory>
+ <includes>
+ <include>onboarding-be-${project.version}.war</include>
+ </includes>
+ </resource>
+ </resources>
+ </configuration>
+ </execution>
+ <execution>
+ <id>copy-resources-fe</id>
+ <phase>validate</phase>
+ <goals>
+ <goal>copy-resources</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>${basedir}/sdc-frontend</outputDirectory>
+ <resources>
+ <resource>
+ <directory>${project.parent.basedir}/openecomp-ui/target</directory>
+ <includes>
+ <include>onboarding-fe-${project.version}.war</include>
+ </includes>
+ </resource>
+ </resources>
+ </configuration>
+ </execution>
+ <execution>
+ <id>copy-tests-suites</id>
+ <phase>validate</phase>
+ <goals>
+ <goal>copy-resources</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/testSuites</outputDirectory>
+ <resources>
+ <resource>
+ <directory>${project.parent.basedir}/test-apis-ci/src/main/resources/ci/testSuites</directory>
+ <includes>
+ <include>*</include>
+ </includes>
+ </resource>
+ </resources>
+ </configuration>
+ </execution>
+ <execution>
+ <id>copy-resources-test-apis-ci</id>
+ <phase>validate</phase>
+ <goals>
+ <goal>copy-resources</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>${basedir}/sdc-sanity</outputDirectory>
+ <resources>
+ <resource>
+ <directory>${project.parent.basedir}/test-apis-ci/target</directory>
+ <includes>
+ <include>test-apis-ci-${project.version}-jar-with-dependencies.jar</include>
+ </includes>
+ </resource>
+ </resources>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
- <plugin>
- <groupId>io.fabric8</groupId>
- <artifactId>docker-maven-plugin</artifactId>
- <version>0.22.1</version>
+ <plugin>
+ <groupId>io.fabric8</groupId>
+ <artifactId>docker-maven-plugin</artifactId>
+ <version>0.19.1</version>
- <configuration>
- <verbose>false</verbose>
- <apiVersion>1.23</apiVersion>
+ <configuration>
+ <verbose>true</verbose>
+ <apiVersion>1.23</apiVersion>
- <images>
+ <images>
- <!-- Build backend image -->
- <image>
- <name>openecomp/sdc-backend</name>
- <alias>sdc-backend</alias>
- <build>
- <cleanup>try</cleanup>
- <dockerFileDir>${project.basedir}/sdc-backend</dockerFileDir>
- <tags>
- <tag>${docker.tag}</tag>
- <tag>${docker.latest.tag}</tag>
- <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag>
- </tags>
- </build>
- </image>
+ <!-- Build backend image -->
+ <image>
+ <name>openecomp/sdc-backend</name>
+ <alias>sdc-backend</alias>
+ <build>
+ <cleanup>try</cleanup>
+ <dockerFileDir>${project.basedir}/sdc-backend</dockerFileDir>
+ <tags>
+ <tag>${docker.tag}</tag>
+ <tag>${docker.latest.tag}</tag><tag>$sedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag>
+ <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag>
+ </tags>
+ </build>
+ </image>
- <!-- Build frontend image -->
- <image>
- <name>openecomp/sdc-frontend</name>
- <alias>sdc-frontend</alias>
- <build>
- <cleanup>try</cleanup>
- <dockerFileDir>${project.basedir}/sdc-frontend</dockerFileDir>
- <tags>
- <tag>${docker.tag}</tag>
- <tag>${docker.latest.tag}</tag>
- <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag>
- </tags>
- </build>
- </image>
+ <!-- Build frontend image -->
+ <image>
+ <name>openecomp/sdc-frontend</name>
+ <alias>sdc-frontend</alias>
+ <build>
+ <cleanup>try</cleanup>
+ <dockerFileDir>${project.basedir}/sdc-frontend</dockerFileDir>
+ <tags>
+ <tag>${docker.tag}</tag>
+ <tag>${docker.latest.tag}</tag>
+ <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag>
+ </tags>
+ </build>
+ </image>
- <!-- Build elastic search image -->
- <image>
- <name>openecomp/sdc-elasticsearch</name>
- <alias>sdc-elasticsearch</alias>
- <build>
- <cleanup>try</cleanup>
- <dockerFileDir>${project.basedir}/sdc-elasticsearch</dockerFileDir>
- <tags>
- <tag>${docker.tag}</tag>
- <tag>${docker.latest.tag}</tag>
- <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag>
- </tags>
- </build>
- </image>
+ <!-- Build elastic search image -->
+ <image>
+ <name>openecomp/sdc-elasticsearch</name>
+ <alias>sdc-elasticsearch</alias>
+ <build>
+ <cleanup>try</cleanup>
+ <dockerFileDir>${project.basedir}/sdc-elasticsearch</dockerFileDir>
+ <tags>
+ <tag>${docker.tag}</tag>
+ <tag>${docker.latest.tag}</tag>
+ <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag>
+ </tags>
+ </build>
+ </image>
- <!-- Build kibana image -->
- <image>
- <name>openecomp/sdc-kibana</name>
- <alias>sdc-kibana</alias>
- <build>
- <cleanup>try</cleanup>
- <dockerFileDir>${project.basedir}/sdc-kibana</dockerFileDir>
- <tags>
- <tag>${docker.tag}</tag>
- <tag>${docker.latest.tag}</tag>
- <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag>
- </tags>
- </build>
- </image>
+ <!-- Build kibana image -->
+ <image>
+ <name>openecomp/sdc-kibana</name>
+ <alias>sdc-kibana</alias>
+ <build>
+ <cleanup>try</cleanup>
+ <dockerFileDir>${project.basedir}/sdc-kibana</dockerFileDir>
+ <tags>
+ <tag>${docker.tag}</tag>
+ <tag>${docker.latest.tag}</tag>
+ <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag>
+ </tags>
+ </build>
+ </image>
- <!-- Build cassandra image -->
- <image>
- <name>openecomp/sdc-cassandra</name>
- <alias>sdc-cassandra</alias>
- <build>
- <cleanup>try</cleanup>
- <dockerFileDir>${project.basedir}/sdc-cassandra</dockerFileDir>
- <tags>
- <tag>${docker.tag}</tag>
- <tag>${docker.latest.tag}</tag>
- <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag>
- </tags>
- </build>
- </image>
+ <!-- Build cassandra image -->
+ <image>
+ <name>openecomp/sdc-cassandra</name>
+ <alias>sdc-cassandra</alias>
+ <build>
+ <cleanup>try</cleanup>
+ <dockerFileDir>${project.basedir}/sdc-cassandra</dockerFileDir>
+ <tags>
+ <tag>${docker.tag}</tag>
+ <tag>${docker.latest.tag}</tag>
+ <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag>
+ </tags>
+ </build>
+ </image>
- <!-- Build sanity image -->
- <!-- <image>
- <name>openecomp/sdc-sanity</name>
- <alias>sdc-sanity</alias>
- <build>
- <cleanup>try</cleanup>
- <dockerFileDir>${project.basedir}/sdc-sanity</dockerFileDir>
- <tags>
- <tag>${docker.tag}</tag>
- <tag>${docker.latest.tag}</tag>
- <tag>1.1-STAGING-latest</tag>
- </tags>
- </build>
- </image> -->
+ <!-- Build sanity image -->
+ <image>
+ <name>openecomp/sdc-sanity</name>
+ <alias>sdc-sanity</alias>
+ <build>
+ <cleanup>try</cleanup>
+ <dockerFileDir>${project.basedir}/sdc-sanity</dockerFileDir>
+ <tags>
+ <tag>${docker.tag}</tag>
+ <tag>${docker.latest.tag}</tag>
+ <tag>1.1-STAGING-latest</tag>
+ </tags>
+ </build>
+ </image>
- </images>
- </configuration>
- <executions>
- <execution>
+ </images>
+ </configuration>
+ <executions>
+ <execution>
<id>clean-images</id>
<phase>pre-clean</phase>
<goals>
- <goal>remove</goal>
+ <goal>remove</goal>
</goals>
<configuration>
- <removeAll>true</removeAll>
+ <removeAll>true</removeAll>
+ <image>openecomp/sdc-backend,openecomp/sdc-frontend,openecomp/sdc-elasticsearch,openecomp/sdc-kibana,openecomp/sdc-sanity<!-- ,openecomp/sdc-sanity --></image>
</configuration>
- </execution>
+ </execution>
- <execution>
- <id>generate-images</id>
- <phase>package</phase>
- <goals>
- <goal>build</goal>
- </goals>
- </execution>
+ <execution>
+ <id>generate-images</id>
+ <phase>package</phase>
+ <goals>
+ <goal>build</goal>
+ </goals>
+ </execution>
- <execution>
+ <execution>
<id>push-images</id>
<phase>deploy</phase>
<goals>
- <goal>build</goal>
- <goal>push</goal>
+ <goal>build</goal>
+ <goal>push</goal>
</goals>
<configuration>
- <image>openecomp/sdc-backend,openecomp/sdc-frontend,openecomp/sdc-elasticsearch,openecomp/sdc-kibana,openecomp/sdc-cassandra<!--,openecomp/sdc-sanity--></image>
+ <image>
+ openecomp/sdc-backend,openecomp/sdc-frontend,openecomp/sdc-elasticsearch,openecomp/sdc-kibana,openecomp/sdc-sanity<!-- ,openecomp/sdc-sanity --></image>
</configuration>
- </execution>
- </executions>
- </plugin>
- </plugins>
- </build>
- </profile>
- </profiles>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+ </profile>
+ </profiles>
</project>
diff --git a/sdc-os-chef/scripts/docker_run.sh b/sdc-os-chef/scripts/docker_run.sh
index c79dad2d56..d645f94b93 100755
--- a/sdc-os-chef/scripts/docker_run.sh
+++ b/sdc-os-chef/scripts/docker_run.sh
@@ -2,7 +2,7 @@
function usage {
- echo "usage: docker_run.sh [ -r|--release <RELEASE-NAME> ] [ -e|--environment <ENV-NAME> ] [ -p|--port <Docker-hub-port>] [ -l|--local <Run-without-pull>] [ -h|--help ]"
+ echo "usage: docker_run.sh [ -r|--release <RELEASE-NAME> ] [ -e|--environment <ENV-NAME> ] [ -p|--port <Docker-hub-port>] [ -l|--local <Run-without-pull>] [ -s|--skipTests <Run-without-sanityDocker>] [ -h|--help ]"
}
@@ -25,6 +25,7 @@ function dir_perms {
RELEASE=latest
LOCAL=false
+SKIPTESTS=false
[ -f /opt/config/env_name.txt ] && DEP_ENV=$(cat /opt/config/env_name.txt) || DEP_ENV=__ENV-NAME__
[ -f /opt/config/nexus_username.txt ] && NEXUS_USERNAME=$(cat /opt/config/nexus_username.txt) || NEXUS_USERNAME=release
[ -f /opt/config/nexus_password.txt ] && NEXUS_PASSWD=$(cat /opt/config/nexus_password.txt) || NEXUS_PASSWD=sfWU3DFVdBr7GVxB85mTYgAW
@@ -48,6 +49,10 @@ while [ "$1" != "" ]; do
shift
LOCAL=true
;;
+ -s | --skipTests )
+ shift
+ SKIPTESTS=true
+ ;;
-h | --help )
usage
exit
@@ -157,3 +162,12 @@ if [ $? -ne 0 ]; then
exit 1
fi
+# sanityDocker
+echo "docker run sdc-frontend..."
+if [ ${SKIPTESTS} = false ]; then
+echo "Triger sanity docker, please wait..."
+ if [ ${LOCAL} = false ]; then
+ docker pull ${PREFIX}/sdc-sanity:${RELEASE}
+ fi
+ docker run --detach --name sdc-sanity --env HOST_IP=${IP} --env ENVNAME="${DEP_ENV}" --env http_proxy=${http_proxy} --env https_proxy=${https_proxy} --env no_proxy=${no_proxy} --log-driver=json-file --log-opt max-size=100m --log-opt max-file=10 --ulimit memlock=-1:-1 --memory 512m --memory-swap=512m --ulimit nofile=4096:100000 --volume /etc/localtime:/etc/localtime:ro --volume /data/logs/sdc-sanity/target:/var/lib/tests/target --volume /data/logs/sdc-sanity/ExtentReport:/var/lib/tests/ExtentReport --volume /data/environments:/root/chef-solo/environments --publish 9560:9560 ${PREFIX}/sdc-sanity:${RELEASE}
+fi
diff --git a/sdc-os-chef/sdc-cassandra/chef-repo/cookbooks/cassandra-actions/attributes/default.rb b/sdc-os-chef/sdc-cassandra/chef-repo/cookbooks/cassandra-actions/attributes/default.rb
index c7f408f294..dac5853353 100644
--- a/sdc-os-chef/sdc-cassandra/chef-repo/cookbooks/cassandra-actions/attributes/default.rb
+++ b/sdc-os-chef/sdc-cassandra/chef-repo/cookbooks/cassandra-actions/attributes/default.rb
@@ -1 +1,2 @@
-normal['version'] = "1.1.0"
+normal['version'] =
+ "1.1.0"
diff --git a/sdc-os-chef/sdc-sanity/Dockerfile b/sdc-os-chef/sdc-sanity/Dockerfile
index ea137b401b..38bf26641e 100644
--- a/sdc-os-chef/sdc-sanity/Dockerfile
+++ b/sdc-os-chef/sdc-sanity/Dockerfile
@@ -4,6 +4,13 @@ COPY chef-solo /root/chef-solo/
COPY chef-repo/cookbooks/. /root/chef-solo/cookbooks/
+
+ENV TESTS_BASE /var/lib/tests
+RUN mkdir -p "$TESTS_BASE"
+WORKDIR $TESTS_BASE
+
+ADD test-apis-ci-*.jar ${TESTS_BASE}/
+
COPY startup.sh /root/
RUN chmod 770 /root/startup.sh
diff --git a/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/Files/VNFs/infra.zip b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/Files/VNFs/infra.zip
new file mode 100644
index 0000000000..09eb9cd648
--- /dev/null
+++ b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/Files/VNFs/infra.zip
Binary files differ
diff --git a/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/Files/VNFs/vbng.zip b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/Files/VNFs/vbng.zip
new file mode 100644
index 0000000000..ab5163d9ed
--- /dev/null
+++ b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/Files/VNFs/vbng.zip
Binary files differ
diff --git a/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/Files/VNFs/vbrgemu.zip b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/Files/VNFs/vbrgemu.zip
new file mode 100644
index 0000000000..28c69a570f
--- /dev/null
+++ b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/Files/VNFs/vbrgemu.zip
Binary files differ
diff --git a/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/Files/VNFs/vgmux.zip b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/Files/VNFs/vgmux.zip
new file mode 100644
index 0000000000..56de952150
--- /dev/null
+++ b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/Files/VNFs/vgmux.zip
Binary files differ
diff --git a/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/Files/VNFs/vgw.zip b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/Files/VNFs/vgw.zip
new file mode 100644
index 0000000000..7a14718c2c
--- /dev/null
+++ b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/Files/VNFs/vgw.zip
Binary files differ
diff --git a/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/conf/attsdc-packages.yaml b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/conf/attsdc-packages.yaml
new file mode 100644
index 0000000000..5d1a3e1537
--- /dev/null
+++ b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/conf/attsdc-packages.yaml
@@ -0,0 +1,12 @@
+packages:
+ - org.openecomp.sdc.ci.tests.execute.general
+ - org.openecomp.sdc.ci.tests.execute.user
+ - org.openecomp.sdc.ci.tests.execute.property
+ - org.openecomp.sdc.ci.tests.execute.lifecycle
+ - org.openecomp.sdc.ci.tests.execute.resource
+ - org.openecomp.sdc.ci.tests.execute.service
+ - org.openecomp.sdc.ci.tests.execute.artifacts
+ - org.openecomp.sdc.ci.tests.execute.imports
+ - org.openecomp.sdc.ci.tests.execute.category
+ - org.openecomp.sdc.ci.tests.execute.distribution
+ - org.openecomp.sdc.ci.tests.execute.product \ No newline at end of file
diff --git a/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/conf/credentials.yaml b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/conf/credentials.yaml
new file mode 100644
index 0000000000..ab37f7bee8
--- /dev/null
+++ b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/conf/credentials.yaml
@@ -0,0 +1,48 @@
+ designer: {
+ username: cs0008,
+ password: 123123a,
+ firstname: ASDC,
+ lastname: KASPIN
+ }
+ admin: {
+ username: jh0003,
+ password: 123123a,
+ firstname: ASDC,
+ lastname: KASPIN
+ }
+ ops: {
+ username: af0006,
+ password: 123123a,
+ firstname: ASDC,
+ lastname: KASPIN
+ }
+ tester: {
+ username: kb0004,
+ password: 123123a,
+ firstname: ASDC,
+ lastname: KASPIN
+ }
+ governor: {
+ username: ah0002,
+ password: 123123a,
+ firstname: ASDC,
+ lastname: KASPIN
+ }
+ product_strategist: {
+ username: m99126,
+ password: 1910-FruitGum,
+ firstname: ASDC,
+ lastname: KASPIN
+ }
+ product_manager: {
+ username: m99127,
+ password: 747-Airplane,
+ firstname: ASDC,
+ lastname: KASPIN
+ }
+ product_local: {
+ username: pm0001,
+ password: 123123a,
+ firstname: ASDC,
+ lastname: KASPIN
+ } \ No newline at end of file
diff --git a/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/conf/log4j.properties b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/conf/log4j.properties
new file mode 100644
index 0000000000..d313e92b55
--- /dev/null
+++ b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/conf/log4j.properties
@@ -0,0 +1,34 @@
+# Define the root logger with appender file
+log4j.rootLogger = INFO, FILE, stdout
+
+# Define the file appender
+log4j.appender.FILE=org.apache.log4j.RollingFileAppender
+log4j.appender.FILE.File=${targetlog}logs/ci-log.out
+
+# Define the layout for file appender
+log4j.appender.FILE.layout=org.apache.log4j.PatternLayout
+log4j.appender.FILE.layout.conversionPattern=%d{yyyy-MM-dd HH:mm:ss} %5p [%10c] : %m%n
+
+# Set the maximum file size before rollover
+log4j.appender.FILE.maxFileSize=5MB
+
+# Set the the backup index
+log4j.appender.FILE.maxBackupIndex=10
+
+
+#############################################################
+
+# Direct log messages to stdout
+log4j.appender.stdout=org.apache.log4j.ConsoleAppender
+log4j.appender.stdout.Target=System.out
+log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
+#log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n
+log4j.appender.stdout.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %5p %10c:%L - %m%n
+
+log4j.logger.org.apache.cassandra.service.StorageProxy=INFO
+log4j.logger.com.thinkaurelius.titan.diskstorage.cassandra.CassandraTransaction=INFO, FILE, stdout
+
+log4j.logger.org.openecomp.sdc.ci.tests.utils=INFO, FILE, stdout
+log4j.additivity.org.openecomp.sdc.ci.tests.utils=false
+
+
diff --git a/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/startTest.sh b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/startTest.sh
new file mode 100644
index 0000000000..933f9af6e4
--- /dev/null
+++ b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/files/default/startTest.sh
@@ -0,0 +1,129 @@
+#!/bin/bash
+REMOTE_DEBUG=false
+RERUN=false
+JAVA_OPTION=""
+debug_port=8000
+TEST_SUITES=testSuites
+fileName=testng-failed.xml
+
+function help_usage ()
+{
+ echo
+ echo "$0 (<jar_file_name> <suite file name>) [-r/rerun <true/false> -d/debug <true/false>]"
+ echo "nohup ./startTest.sh ui-ci-1707.0.5-SNAPSHOT-jar-with-dependencies.jar extendedSanity.xml -r false -d true &"
+ echo "by default rerun is true and remote debug is false."
+ echo
+ exit 2
+}
+
+function isBoolean ()
+{
+ PARAM_NAME=$1
+ VALUE=$2
+ if [[ ${VALUE} != "true" ]] && [[ ${VALUE} != "false" ]]; then
+ echo "Valid parameter" ${PARAM_NAME} "values are: true/false"
+ help_usage
+ fi
+}
+
+function prepareFailedXmlFile ()
+{
+ echo "1="$1 "2="$2 "fileName="${fileName}
+ PATTERN=`grep -w "test name=" ${FULL_PATH}/${TEST_SUITES}/$2 | awk -F'"' '{print $2}'`
+ sed '/<test name="'${PATTERN}'"/,/<!-- '${PATTERN}' --/d' $1 > ${FULL_PATH}/${TEST_SUITES}/${fileName}
+ sed -i 's/thread-count="[0-9]\+"/thread-count="1"/g' ${FULL_PATH}/${TEST_SUITES}/${fileName}
+}
+
+#main
+[ $# -lt 2 ] && help_usage
+
+JAR_FILE=$1
+SUITE_FILE=$2
+
+while [ $# -ne 0 ]; do
+ case $1 in
+ -r|rerun)
+ RERUN=$2
+ isBoolean $1 ${RERUN}
+ shift 1
+ shift 1
+ ;;
+ -d|debug)
+ REMOTE_DEBUG=$2
+ isBoolean $1 ${REMOTE_DEBUG}
+ shift 1
+ shift 1
+ ;;
+ *)
+ shift 1
+ ;;
+ esac
+done
+
+CURRENT_DIR=`pwd`
+BASEDIR=$(dirname $0)
+
+if [ ${BASEDIR:0:1} = "/" ]
+then
+ FULL_PATH=$BASEDIR
+else
+ FULL_PATH=$CURRENT_DIR/$BASEDIR
+fi
+LOGS_PROP_FILE=file:${FULL_PATH}/conf/log4j.properties
+#############################################
+TARGET_DIR=${FULL_PATH}/target
+CONF_FILE=${FULL_PATH}/conf/sdc.yaml
+
+DEBUG=true
+MainClass=org.openecomp.sdc.ci.tests.run.StartTest
+
+TESTS_DIR=/opt/app/sdc/ci/resources/tests
+COMPONENTS_DIR=/opt/app/sdc/ci/resources/components
+
+
+TARGET_LOG_DIR="${TARGET_DIR}/"
+
+######ADD USERS################
+
+BE_IP=`cat conf/attsdc.yaml | grep catalogBeHost| awk '{print $2}'`
+
+
+if [ ${REMOTE_DEBUG} == "true" ]; then
+ echo "Debug mode, Listen on port $debug_port";
+ JAVA_OPTION="-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=${debug_port}" ;
+fi
+
+cmd="java $JAVA_OPTION -DdisplayException=true -Dtargetlog=${TARGET_LOG_DIR} -Dfilepath=${FILES_TEST} -Dconfig.resource=${CONF_FILE} -Ddebug=${DEBUG} -Dlog4j.configuration=${LOGS_PROP_FILE} -cp $JAR_FILE ${MainClass} $SUITE_FILE &"
+
+
+if [ $DEBUG == "true" ]
+then
+ $cmd
+else
+ $cmd >> /dev/null
+fi
+
+if [ ${RERUN} == "true" ]; then
+ if [ -f ${TARGET_DIR}/${fileName} ]; then
+ echo "Prepare" ${TARGET_DIR}/${fileName} "file to rerun all failed tests ...";
+ prepareFailedXmlFile ${TARGET_DIR}/${fileName} $SUITE_FILE;
+ SUITE_FILE=${fileName};
+ cmd="java $JAVA_OPTION -DdisplayException=true -Dtargetlog=${TARGET_LOG_DIR} -Dfilepath=${FILES_TEST} -Dconfig.resource=${CONF_FILE} -Ddebug=${DEBUG} -Dlog4j.configuration=${LOGS_PROP_FILE} -cp $JAR_FILE ${MainClass} $SUITE_FILE &"
+ $cmd;
+ fi
+fi
+
+status=`echo $?`
+
+source ExtentReport/versions.info
+now=$(date +'%Y-%m-%d_%H_%M')
+REPORT_NAME=${now}
+VERSION=${osVersion}
+
+
+
+echo "##################################################"
+echo "################# status is ${status} #################"
+echo "##################################################"
+
+exit $status \ No newline at end of file
diff --git a/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/recipes/SDC_Simulator_3_logback.rb b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/recipes/SDC_Simulator_3_logback.rb
new file mode 100644
index 0000000000..0d9282b28a
--- /dev/null
+++ b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/recipes/SDC_Simulator_3_logback.rb
@@ -0,0 +1,10 @@
+jetty_base="/var/lib/jetty"
+
+
+cookbook_file "logback.xml" do
+ path "#{jetty_base}/config/sdc-simulator/logback.xml"
+ source "logback.xml"
+ owner "jetty"
+ group "jetty"
+ mode "0755"
+end \ No newline at end of file
diff --git a/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/recipes/SDC_Simulator_4_locate_keystore.rb b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/recipes/SDC_Simulator_4_locate_keystore.rb
new file mode 100644
index 0000000000..3bb482d89a
--- /dev/null
+++ b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/recipes/SDC_Simulator_4_locate_keystore.rb
@@ -0,0 +1,16 @@
+jetty_base="/var/lib/jetty"
+
+directory "Jetty_etcdir_creation" do
+ path "/#{jetty_base}/etc"
+ owner 'jetty'
+ group 'jetty'
+ mode '0755'
+ action :create
+end
+
+cookbook_file "/#{jetty_base}/etc/keystore" do
+ source "keystore"
+ owner "jetty"
+ group "jetty"
+ mode 0755
+end \ No newline at end of file
diff --git a/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/recipes/SDC_Simulator_5_create_jetty_modules.rb b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/recipes/SDC_Simulator_5_create_jetty_modules.rb
new file mode 100644
index 0000000000..38b87fa65d
--- /dev/null
+++ b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/recipes/SDC_Simulator_5_create_jetty_modules.rb
@@ -0,0 +1,14 @@
+jetty_base="/var/lib/jetty"
+jetty_home="/usr/local/jetty"
+
+###### create Jetty modules
+bash "create-jetty-modules" do
+cwd "#{jetty_base}"
+code <<-EOH
+ cd "#{jetty_base}"
+ java -jar "/#{jetty_home}"/start.jar --add-to-start=deploy
+ java -jar "/#{jetty_home}"/start.jar --add-to-startd=http,https,logging,setuid
+EOH
+not_if "ls /#{jetty_base}/start.d/https.ini"
+end
+
diff --git a/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/recipes/sanityTests_1_cleanup_jettydir.rb b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/recipes/sanityTests_1_cleanup_jettydir.rb
new file mode 100644
index 0000000000..112cc4c2e7
--- /dev/null
+++ b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/recipes/sanityTests_1_cleanup_jettydir.rb
@@ -0,0 +1,49 @@
+tests_base="/var/lib/tests"
+
+ remote_directory '/var/lib/tests/testSuites' do
+ source 'testSuites'
+ owner 'root'
+ group 'root'
+ mode '0755'
+ action :create
+ end
+
+ remote_directory '/var/lib/tests/Files' do
+ source 'Files'
+ owner 'root'
+ group 'root'
+ mode '0755'
+ action :create
+ end
+
+ remote_directory '/var/lib/tests/conf' do
+ source 'conf'
+ owner 'root'
+ group 'root'
+ mode '0755'
+ action :create
+ end
+
+ directory "create_target_dir" do
+ path "/var/lib/tests/target"
+ owner 'root'
+ group 'root'
+ mode '0755'
+ action :create
+ end
+
+ directory "create_ExtentReport_dir" do
+ path "/var/lib/tests/ExtentReport"
+ owner 'root'
+ group 'root'
+ mode '0755'
+ action :create
+ end
+
+ cookbook_file '/var/lib/tests/startTest.sh' do
+ source 'startTest.sh'
+ owner 'root'
+ group 'root'
+ mode '0755'
+ action :create
+ end \ No newline at end of file
diff --git a/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/recipes/sanityTests_2_setup_configuration.rb b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/recipes/sanityTests_2_setup_configuration.rb
new file mode 100644
index 0000000000..cf6875746e
--- /dev/null
+++ b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/recipes/sanityTests_2_setup_configuration.rb
@@ -0,0 +1,43 @@
+tests_base="/var/lib/tests"
+
+template "sdc-yaml-config" do
+ path "#{tests_base}/conf/sdc.yaml"
+ source "sdc-sanity.yaml.erb"
+ owner "root"
+ group "root"
+ mode "0755"
+ variables ({
+ :target_path => "#{tests_base}/target",
+ :catalogBE_ip => node['Nodes']['BE'],
+ :catalogBE_port => node['BE'][:http_port],
+ :webportal_ip => node['Nodes']['FE'],
+ :webportal_port => node['FE'][:http_port],
+ :titan_file => "#{tests_base}/conf/titan.properties",
+ :tests_base_ci => "#{tests_base}/CI/tests",
+ :components_path => "#{tests_base}/CI/components",
+ :importResourceConfigDir => "#{tests_base}/CI/importResource",
+ :importTypesDir => "#{tests_base}/CI/importTypesTest",
+ :importResourceTestsConfigDir => "#{tests_base}/CI/importResourceTests",
+ :ConfigurationFile => "#{tests_base}/conf/configuration.yaml",
+ :errorConfigurationFile => "#{tests_base}/conf/error-configuration.yaml",
+ :CASSANDRA_IP => node['Nodes']['CS'],
+ :CASSANDRA_PWD => node['cassandra'][:cassandra_password],
+ :CASSANDRA_USR => node['cassandra'][:cassandra_user]
+ })
+end
+
+replication_factor=1
+template "titan.properties" do
+ path "/#{tests_base}/conf/titan.properties"
+ source "BE-titan.properties.erb"
+ owner "root"
+ group "root"
+ mode "0755"
+ variables({
+ :CASSANDRA_IP => node['Nodes']['CS'],
+ :CASSANDRA_PWD => node['cassandra'][:cassandra_password],
+ :CASSANDRA_USR => node['cassandra'][:cassandra_user],
+ :rep_factor => replication_factor,
+ :DC_NAME => node['cassandra'][:cluster_name]+node.chef_environment
+ })
+end \ No newline at end of file
diff --git a/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/recipes/sanityTests_3_sanity_execution.rb b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/recipes/sanityTests_3_sanity_execution.rb
new file mode 100644
index 0000000000..6f10a33dd6
--- /dev/null
+++ b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/recipes/sanityTests_3_sanity_execution.rb
@@ -0,0 +1,13 @@
+tests_base="/var/lib/tests"
+ci_test_suite="onap.xml"
+
+bash "run asdc ci sanity tests" do
+cwd "#{tests_base}"
+code <<-EOH
+ cd "#{tests_base}"
+ jar_file=`ls test-apis*-jar-with-dependencies.jar`
+ ./startTest.sh $jar_file #{ci_test_suite}
+ echo "return code from startTest.sh = [$?]"
+EOH
+timeout 72000
+end \ No newline at end of file
diff --git a/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/templates/default/BE-titan.properties.erb b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/templates/default/BE-titan.properties.erb
index 27386d47ef..a42c7bf206 100644
--- a/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/templates/default/BE-titan.properties.erb
+++ b/sdc-os-chef/sdc-sanity/chef-repo/cookbooks/sdc-sanity/templates/default/BE-titan.properties.erb
@@ -4,6 +4,7 @@ storage.port=9160
storage.username=<%= @CASSANDRA_USR %>
storage.password=<%= @CASSANDRA_PWD %>
storage.connection-timeout=10000
+storage.cassandra.keyspace=sdctitan
storage.cassandra.ssl.enabled=false
storage.cassandra.ssl.truststore.location=/var/lib/jetty/config/.truststore
diff --git a/sdc-os-chef/sdc-sanity/chef-solo/roles/sanityTests.json b/sdc-os-chef/sdc-sanity/chef-solo/roles/sanityTests.json
new file mode 100644
index 0000000000..74f12c7cc6
--- /dev/null
+++ b/sdc-os-chef/sdc-sanity/chef-solo/roles/sanityTests.json
@@ -0,0 +1,23 @@
+{
+ "name": "sanityTests",
+ "description": "Execute sanity tests",
+ "json_class": "Chef::Role",
+ "default_attributes": {
+
+ },
+ "override_attributes": {
+
+ },
+ "chef_type": "role",
+ "run_list": [
+ "recipe[sdc-sanity::sanityTests_1_cleanup_jettydir]",
+ "recipe[sdc-sanity::sanityTests_2_setup_configuration]",
+ "recipe[sdc-sanity::sanityTests_3_sanity_execution]"
+// "recipe[sdc-simulator::SDC_Simulator_3_logback]",
+// "recipe[sdc-simulator::SDC_Simulator_4_locate_keystore]",
+// "recipe[sdc-simulator::SDC_Simulator_5_create_jetty_modules]"
+ ],
+ "env_run_lists": {
+ }
+}
+
diff --git a/sdc-os-chef/sdc-sanity/chef-solo/solo.json b/sdc-os-chef/sdc-sanity/chef-solo/solo.json
index 5bd228127d..6487d4cc4e 100644
--- a/sdc-os-chef/sdc-sanity/chef-solo/solo.json
+++ b/sdc-os-chef/sdc-sanity/chef-solo/solo.json
@@ -1,4 +1,6 @@
{
- "run_list": [ "recipe[sdc-sanity::setup_sanity]" ]
+ "run_list": [
+ "role[sanityTests]"
+ ]
}
diff --git a/sdc-os-chef/sdc-sanity/startup.sh b/sdc-os-chef/sdc-sanity/startup.sh
index 374a0e8c34..d4316c383f 100644
--- a/sdc-os-chef/sdc-sanity/startup.sh
+++ b/sdc-os-chef/sdc-sanity/startup.sh
@@ -6,13 +6,15 @@ chef-solo -c solo.rb -E ${CHEFNAME}
rc=$?
-if [[ $rc != 0 ]]; then
- echo "Sanity failed !!!"
- exit $rc
-else
- echo "completed successfully :-)"
- exit 0
-fi
+#if [[ $rc != 0 ]]; then
+# echo "Sanity failed !!!"
+# exit $rc
+#else
+# echo "completed successfully :-)"
+# exit 0
+#fi
-#/docker-entrypoint.sh
+while true; do sleep 2; done
+
+##/docker-entrypoint.sh
6 2737 2738 2739 2740 2741 2742 2743 2744 2745 2746 2747 2748 2749 2750 2751 2752 2753 2754 2755 2756 2757 2758 2759 2760 2761 2762 2763 2764 2765 2766 2767 2768 2769 2770 2771 2772 2773 2774 2775 2776 2777 2778 2779 2780 2781 2782 2783 2784 2785 2786 2787 2788 2789 2790 2791 2792 2793 2794 2795 2796 2797 2798 2799 2800 2801 2802 2803 2804 2805 2806 2807 2808 2809 2810 2811 2812 2813 2814 2815 2816 2817 2818 2819 2820 2821 2822 2823 2824 2825 2826 2827 2828 2829 2830 2831 2832 2833 2834 2835 2836 2837 2838 2839 2840 2841 2842 2843 2844 2845 2846 2847 2848 2849 2850 2851 2852 2853 2854 2855 2856 2857 2858 2859 2860 2861 2862 2863 2864 2865 2866 2867 2868 2869 2870 2871 2872 2873 2874 2875 2876 2877 2878 2879 2880 2881 2882 2883 2884 2885 2886 2887 2888 2889 2890 2891 2892 2893 2894 2895 2896 2897 2898 2899 2900 2901 2902 2903 2904 2905 2906 2907 2908 2909 2910 2911 2912 2913 2914 2915 2916 2917 2918 2919 2920 2921 2922 2923 2924 2925 2926 2927 2928 2929 2930 2931 2932 2933 2934 2935 2936 2937 2938 2939 2940 2941 2942 2943 2944 2945 2946 2947 2948 2949 2950 2951 2952 2953 2954 2955 2956 2957 2958 2959 2960 2961 2962 2963 2964 2965 2966 2967 2968 2969 2970 2971 2972 2973 2974 2975 2976 2977 2978 2979 2980 2981 2982 2983 2984 2985 2986 2987 2988 2989 2990 2991 2992 2993 2994 2995 2996 2997 2998 2999 3000 3001 3002 3003 3004 3005 3006 3007 3008 3009 3010 3011 3012 3013 3014 3015 3016 3017 3018 3019 3020 3021 3022 3023 3024 3025 3026 3027 3028 3029 3030 3031 3032 3033 3034 3035 3036 3037 3038 3039 3040 3041 3042 3043 3044 3045 3046 3047 3048 3049 3050 3051 3052 3053 3054 3055 3056 3057 3058 3059 3060 3061 3062 3063 3064 3065 3066 3067 3068 3069 3070 3071 3072 3073 3074 3075 3076 3077 3078 3079 3080 3081 3082 3083 3084 3085 3086 3087 3088 3089 3090 3091 3092 3093 3094 3095 3096 3097 3098 3099 3100 3101 3102 3103 3104 3105 3106 3107 3108 3109 3110 3111 3112 3113 3114 3115 3116 3117 3118 3119 3120 3121 3122 3123 3124 3125 3126 3127 3128 3129 3130 3131 3132 3133 3134 3135 3136 3137 3138 3139 3140 3141 3142 3143 3144 3145 3146 3147 3148 3149 3150 3151 3152 3153 3154 3155 3156 3157 3158 3159 3160 3161 3162 3163 3164 3165 3166 3167 3168 3169 3170 3171 3172 3173 3174 3175 3176 3177 3178 3179 3180 3181 3182 3183 3184 3185 3186 3187 3188 3189 3190 3191 3192 3193 3194 3195 3196 3197 3198 3199 3200 3201 3202 3203 3204 3205 3206 3207 3208 3209 3210 3211 3212 3213 3214 3215 3216 3217 3218 3219 3220 3221 3222 3223 3224 3225 3226 3227 3228 3229 3230 3231 3232 3233 3234 3235 3236 3237 3238 3239 3240 3241 3242 3243 3244 3245 3246 3247 3248 3249 3250 3251 3252 3253 3254 3255 3256 3257 3258 3259 3260 3261 3262 3263 3264 3265 3266 3267 3268 3269 3270 3271 3272 3273 3274 3275 3276 3277 3278 3279 3280 3281 3282 3283 3284 3285 3286 3287 3288 3289 3290 3291 3292 3293 3294 3295 3296 3297 3298 3299 3300 3301 3302 3303 3304 3305 3306 3307 3308 3309 3310 3311 3312 3313 3314 3315 3316 3317 3318 3319 3320 3321 3322 3323 3324 3325 3326 3327 3328 3329 3330 3331 3332 3333 3334 3335 3336 3337 3338 3339 3340 3341 3342 3343 3344 3345 3346 3347 3348 3349 3350 3351 3352 3353 3354 3355 3356 3357 3358 3359 3360 3361 3362 3363 3364 3365 3366 3367 3368 3369 3370 3371 3372 3373 3374 3375 3376 3377 3378 3379 3380 3381 3382 3383 3384 3385 3386 3387 3388 3389 3390 3391 3392 3393 3394 3395 3396 3397 3398 3399 3400 3401 3402 3403 3404 3405 3406 3407 3408 3409 3410 3411 3412 3413 3414 3415 3416 3417 3418 3419 3420 3421 3422 3423 3424 3425 3426 3427 3428 3429 3430 3431 3432 3433 3434 3435 3436 3437 3438 3439 3440 3441 3442 3443 3444 3445 3446 3447 3448 3449 3450 3451 3452 3453 3454 3455 3456 3457 3458 3459 3460 3461 3462 3463 3464 3465 3466 3467 3468 3469 3470 3471 3472 3473 3474 3475 3476 3477 3478 3479 3480 3481 3482 3483 3484 3485 3486 3487 3488 3489 3490 3491 3492 3493 3494 3495 3496 3497 3498 3499 3500 3501 3502 3503 3504 3505 3506 3507 3508 3509 3510 3511 3512 3513 3514 3515 3516 3517 3518 3519 3520 3521 3522 3523 3524 3525 3526 3527 3528 3529 3530 3531 3532 3533 3534 3535 3536 3537 3538 3539 3540 3541 3542 3543 3544 3545 3546 3547 3548 3549 3550 3551 3552 3553 3554 3555 3556 3557 3558 3559 3560 3561 3562 3563 3564 3565 3566 3567 3568 3569 3570 3571 3572 3573 3574 3575 3576 3577 3578 3579 3580 3581 3582 3583 3584 3585
tosca_definitions_version: tosca_simple_yaml_1_0_0
metadata:
  template_name: Main
imports:
- openecomp_heat_index:
    file: openecomp-heat/_index.yml
- GlobalSubstitutionTypes:
    file: GlobalSubstitutionTypesServiceTemplate.yaml
topology_template:
  inputs:
    vlc4_Internal2_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to vlc4_Internal2
      default: 00:80:37:0E:04:12
    sctp-a-egress_rule_application:
      hidden: false
      immutable: false
      type: string
      description: application for the SecurityGroup
      default: any
    sctp-b-ipv6-ingress-src_start_port:
      hidden: false
      immutable: false
      type: float
      description: IPV6 start port
      default: 0
      constraints:
      - in_range:
        - 0
        - 65535
    ncb1_Internal2_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to ncb1_Internal2
      default: 00:80:37:0E:09:12
    sctp-a-ipv6-ingress_ethertype:
      hidden: false
      immutable: false
      type: string
      description: IPV6 ethertype
      default: IPv4
    gpb8_Internal1_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to gpb8_Internal1
      default: 00:80:37:0E:10:22
    sctp-a-ingress_rule_protocol:
      hidden: false
      immutable: false
      type: string
      description: protocol for the SecurityGroup
      default: any
    sctp-b-display_name:
      hidden: false
      immutable: false
      type: string
      description: display_name for the SecurityGroup
      default: epc-sctp-b-ipv4v6-sec-group
    sctp-a-ingress_ethertype:
      hidden: false
      immutable: false
      type: string
      description: ethertype for the SecurityGroup
      default: IPv4
    sctp-a-egress-src_start_port:
      hidden: false
      immutable: false
      type: float
      description: start_port for the SecurityGroup
      default: 0
      constraints:
      - in_range:
        - 0
        - 65535
    ncb_flavor_name:
      hidden: false
      immutable: false
      type: string
      description: Flavor to use for servers ncb
      default: nv.c8r32d1
    vlc3_Internal1_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to vlc3_Internal1
      default: 00:80:37:0E:03:12
    Internal2_net_cidr:
      hidden: false
      immutable: false
      type: string
      description: CIDR for internal-2 network
      default: 169.255.0.0
    sctp-a-egress-dst_start_port:
      hidden: false
      immutable: false
      type: float
      description: start_port for the SecurityGroup
      default: 0
      constraints:
      - in_range:
        - 0
        - 65535
    sctp-a-egress_ethertype:
      hidden: false
      immutable: false
      type: string
      description: ethertype for the SecurityGroup
      default: IPv4
    gpb4_Internal2_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to gpb4_Internal2
      default: 00:80:37:0E:0C:22
    sctp-b-ipv6-egress_rule_application:
      hidden: false
      immutable: false
      type: string
      description: IPV6 Rule-application
      default: any
    vlc8_Internal1_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to vlc8_Internal1
      default: 00:80:37:0E:08:12
    sctp-b-ipv6-ingress-src_end_port:
      hidden: false
      immutable: false
      type: float
      description: IPV6 ending port for destination
      default: 65535
      constraints:
      - in_range:
        - 0
        - 65535
    fsb2_Internal1_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to fsb2_Internal1
      default: 00:80:37:0E:0D:12
    sctp-b-name:
      hidden: false
      immutable: false
      type: string
      description: name for the SecurityGroup
      default: epc-sctp-b-ipv4v6-sec-group
    sctp-b-ipv6-egress_ethertype:
      hidden: false
      immutable: false
      type: string
      description: IPV6 ethertype
      default: IPv4
    internal_net_id_1:
      hidden: false
      immutable: false
      type: string
      description: UUID of Internal2_net
      default: e3397c69-a942-49aa-81cb-fb91ff34abc8
    sctp-a-egress_dst_subnet_prefix:
      hidden: false
      immutable: false
      type: string
      description: ip_prefix for the SecurityGroup
      default: 0.0.0.0
    internal_net_id_0:
      hidden: false
      immutable: false
      type: string
      description: UUID of Internal1_net
      default: 871de971-22ac-47b6-befb-50e7d4cb67ea
    sctp_b_net_fqdn:
      hidden: false
      immutable: false
      type: string
      description: Network FQDN SCTPB
      default: default-domain:vMME-24474-Ericsson-WTC-Lab-vLCP1-4:vMME-24474-Ericsson-WTC-Lab-vLCP1-4_gn_SCTPB_net_1
    sctp-a-ipv6-ingress_rule_application:
      hidden: false
      immutable: false
      type: string
      description: IPV6 Rule-application
      default: any
    sctp-b-ipv6-ingress_src_subnet_prefix_len:
      hidden: false
      immutable: false
      type: string
      description: IPV6 subnet prefix length
      default: '0'
    ncb_name_1:
      hidden: false
      immutable: false
      type: string
      description: Name of ncb2
      default: zrdm3mmex59ncb002
    ncb_name_0:
      hidden: false
      immutable: false
      type: string
      description: Name of ncb1
      default: zrdm3mmex59ncb001
    vlc_st_virtualization_type:
      hidden: false
      immutable: false
      type: string
      description: Indicates virtualization type
      default: virtual-machine
    vlc2_Internal1_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to vlc2_Internal1
      default: 00:80:37:0E:02:12
    sctp-b-ingress-dst_start_port:
      hidden: false
      immutable: false
      type: float
      description: start_port for the SecurityGroup
      default: 0
      constraints:
      - in_range:
        - 0
        - 65535
    sctp-a-display_name:
      hidden: false
      immutable: false
      type: string
      description: display_name for the SecurityGroup
      default: epc-sctp-a-ipv4v6-sec-group
    sctp-b-ingress_rule_application:
      hidden: false
      immutable: false
      type: string
      description: application for the SecurityGroup
      default: any
    int2_sec_group_name:
      hidden: false
      immutable: false
      type: string
      description: SecurityGroup name for internal-2
      default: int2-sec-group
    gpb5_Internal2_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to gpb5_Internal2
      default: 00:80:37:0E:0D:22
    sctp-a-egress-dst_subnet_prefix_v6:
      hidden: false
      immutable: false
      type: string
      description: dst subnet
      default: '::'
    OS::stack_name:
      type: string
      required: false
    sctp-b-egress-src_end_port:
      hidden: false
      immutable: false
      type: float
      description: end_port for the SecurityGroup
      default: 65535
      constraints:
      - in_range:
        - 0
        - 65535
    Internal2_shared:
      hidden: false
      immutable: false
      type: string
      description: Whether Shared or private internal-2 network
      default: false
    sctp-a-ipv6-egress_rule_protocol:
      hidden: false
      immutable: false
      type: string
      description: IPV6 Rule-protocol
      default: any
    Internal2_rpf:
      hidden: false
      immutable: false
      type: string
      description: Reverse Path Forwarding Enabled/Disabled internal-2 network
      default: disable
    vlc5_Internal2_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to vlc5_Internal2
      default: 00:80:37:0E:05:12
    sctp-a-ipv6-egress_src_end_port:
      hidden: false
      immutable: false
      type: string
      description: IPV6 end port
      default: 65535
    Internal1_forwarding_mode:
      hidden: false
      immutable: false
      type: string
      description: L2 or L3 forwarding mode for internal-1 network
      default: l2
    gpb3_Internal1_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to gpb3_Internal1
      default: 00:80:37:0E:0B:22
    vip_oam_management_v4_ip:
      hidden: false
      immutable: false
      type: string
      description: IP address of OAM service IP address to be provisioned in A&AI
      default: 107.239.72.176
    vmi_oam_preference_primary:
      hidden: false
      immutable: false
      type: float
      description: Preference for primary interface/port
      default: 200
    sctp-b-src_subnet_prefix_v6:
      hidden: false
      immutable: false
      type: string
      description: ip_prefix for the SecurityGroup
      default: '::'
    sctp-a-egress_dst_subnet_prefix_len:
      hidden: false
      immutable: false
      type: float
      description: ip_prefix_len for the SecurityGroup
      default: '0'
      constraints:
      - in_range:
        - 0
        - 32
    security_group_sctp_b_id:
      hidden: false
      immutable: false
      type: string
      description: Security Group UUID for output
      default: 92a4ae54-1733-4d03-b488-f178bb9f7b82
    Internal2_forwarding_mode:
      hidden: false
      immutable: false
      type: string
      description: L2 or L3 forwarding mode for internal-2 network
      default: l2
    sctp-a-ipv6-egress_dst_end_port:
      hidden: false
      immutable: false
      type: string
      description: IPV6 end port
      default: 65535
    sctp-b-egress-dst_subnet_prefix_v6:
      hidden: false
      immutable: false
      type: string
      description: dst subnet
      default: '::'
    sctp-b-egress_dst_subnet_prefix:
      hidden: false
      immutable: false
      type: string
      description: ip_prefix for the SecurityGroup
      default: 0.0.0.0
    security_group_oam_id:
      hidden: false
      immutable: false
      type: string
      description: Security Group UUID for output
      default: 4ae4aa74-3e8e-4f2b-8b5f-a8bd262da96b
    gpb2_Internal1_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to gpb2_Internal1
      default: 00:80:37:0E:0A:22
    security_group_int1_id:
      hidden: false
      immutable: false
      type: string
      description: UUID of Internal1_net security group
      default: 94c62578-835d-4801-9372-70a2cfb22683
    sctp-a-egress_action:
      hidden: false
      immutable: false
      type: string
      description: simple_action for the SecurityGroup
      default: pass
    oam_net_fqdn:
      hidden: false
      immutable: false
      type: string
      description: Network FQDN OAM
      default: default-domain:vMME-24474-Ericsson-WTC-Lab-vLCP1-4:vMME-24474-Ericsson-WTC-Lab-vLCP1-4_OAM_net_1
    ncb2_Internal2_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to ncb2_Internal2
      default: 00:80:37:0E:0F:12
    vlc_st_interface_type_sctp_a:
      hidden: false
      immutable: false
      type: string
      description: service_interface_type for the ServiceTemplate
      default: left
    gpb3_Internal2_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to gpb3_Internal2
      default: 00:80:37:0E:0B:22
    vlc_st_interface_type_sctp_b:
      hidden: false
      immutable: false
      type: string
      description: service_interface_type for the ServiceTemplate
      default: right
    gpb1_Internal2_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to gpb1_Internal2
      default: 00:80:37:0E:09:22
    oam_net_name:
      hidden: false
      immutable: false
      type: string
      description: Network Name OAM
      default: vMME-24474-Ericsson-WTC-Lab-vLCP1-4_OAM_net_1
    sctp-b-ingress-src_start_port:
      hidden: false
      immutable: false
      type: float
      description: start_port for the SecurityGroup
      default: 0
      constraints:
      - in_range:
        - 0
        - 65535
    fsb1_Internal1_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to fsb1_Internal1
      default: 00:80:37:0E:0B:12
    sctp-b-ingress_dst_addresses:
      hidden: false
      immutable: false
      type: string
      description: security_group for the SecurityGroup
      default: local
    vlc_st_interface_type_oam:
      hidden: false
      immutable: false
      type: string
      description: service_interface_type for the ServiceTemplate
      default: management
    shc_monitor_type:
      hidden: false
      immutable: false
      type: string
      description: health check
      default: PING
    oam_sec_group_name:
      hidden: false
      immutable: false
      type: string
      description: SecurityGroup name for OAM
      default: oam-sec-group
    Internal2_net_gateway:
      hidden: false
      immutable: false
      type: string
      description: gateway for internal-2 network
      default: 169.255.0.3
    evac_policy:
      hidden: false
      immutable: false
      type: string
      description: CMHA Policy
      default: Evacuate
    server_group_id_0:
      hidden: false
      immutable: false
      type: string
      description: ID of Anti-Affinity Policy-based Server Group
      default: ec99a73d-38f8-4280-8103-ba8ee584629f
    vlc8_Internal2_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to vlc8_Internal2
      default: 00:80:37:0E:08:12
    sctp-b-ipv6-egress_rule_protocol:
      hidden: false
      immutable: false
      type: string
      description: IPV6 Rule-protocol
      default: any
    gtp_sec_group_name:
      hidden: false
      immutable: false
      type: string
      description: SecurityGroup name for GTP
      default: gtp-sec-group
    vlc_sctp_b_v6_ip_2:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc3 SCTPB
      default: fd00:200:200:5:0:0:0:24
    vlc_sctp_b_v6_ip_1:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc2 SCTPB
      default: fd00:200:200:5:0:0:0:17
    sctp-a-ipv6-egress_dst_subnet_prefix:
      hidden: false
      immutable: false
      type: string
      description: IPV6 subnet prefix
      default: 0.0.0.0
    vlc_sctp_b_v6_ip_0:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc1 SCTPB
      default: fd00:200:200:5:0:0:0:16
    vlc4_Internal1_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to vlc4_Internal1
      default: 00:80:37:0E:04:12
    vlc_sctp_b_v6_ip_6:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc7 SCTPB
      default: fd00:200:200:5:0:0:0:28
    vlc_sctp_b_v6_ip_5:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc6 SCTPB
      default: fd00:200:200:5:0:0:0:27
    vlc_sctp_b_v6_ip_4:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc5 SCTPB
      default: fd00:200:200:5:0:0:0:26
    vlc_sctp_b_v6_ip_3:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc4 SCTPB
      default: fd00:200:200:5:0:0:0:25
    sctp_b_net_name:
      hidden: false
      immutable: false
      type: string
      description: Network Name SCTPB
      default: vMME-24474-Ericsson-WTC-Lab-vLCP1-4_gn_SCTPB_net_1
    sctp-b-ipv6-egress_dst_subnet_prefix_len:
      hidden: false
      immutable: false
      type: string
      description: IPV6 subnet prefix
      default: '0'
    sctp-a-egress_rule_protocol:
      hidden: false
      immutable: false
      type: string
      description: protocol for the SecurityGroup
      default: any
    Internal1_shared:
      hidden: false
      immutable: false
      type: string
      description: Whether Shared or private internal-1 network
      default: false
    shc_url_path:
      hidden: false
      immutable: false
      type: string
      description: health check
      default: local-ip
    Internal2_net_cidr_len:
      hidden: false
      immutable: false
      type: string
      description: CIDR length for internal-2 network
      default: 17
    sctp-a-ingress-src_end_port:
      hidden: false
      immutable: false
      type: float
      description: end_port for the SecurityGroup
      default: 65535
      constraints:
      - in_range:
        - 0
        - 65535
    sctp-b-ipv6-ingress_src_subnet_prefix:
      hidden: false
      immutable: false
      type: string
      description: IPV6 subnet prefix
      default: 0.0.0.0
    sctp-a-egress-dst_end_port:
      hidden: false
      immutable: false
      type: float
      description: end_port for the SecurityGroup
      default: 65535
      constraints:
      - in_range:
        - 0
        - 65535
    sctp-a-ingress_action:
      hidden: false
      immutable: false
      type: string
      description: simple_action for the SecurityGroup
      default: pass
    sctp-b-ipv6-ingress_action:
      hidden: false
      immutable: false
      type: string
      description: IPV6 action
      default: pass
    vlc_st_service_type:
      hidden: false
      immutable: false
      type: string
      description: service type
      default: firewall
    sctp-b-ipv6-ingress-dst_start_port:
      hidden: false
      immutable: false
      type: string
      description: IPV6 starting port for destination
      default: 0
    vlc_st_availability_zone:
      hidden: false
      immutable: false
      type: string
      description: Indicates availability zone is enabled
      default: true
    vlc7_Internal1_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to vlc7_Internal1
      default: 00:80:37:0E:07:12
    fsb_volume_image_name_1:
      label: MME_FSB2
      hidden: false
      immutable: false
      type: string
      description: volume name
      default: MME_FSB2_1_3_GA.qcow2
    vlc_oam_ip_6:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc7 OAM
      default: 107.239.72.151
    sctp-a-ipv6-ingress_src_subnet_prefix_len:
      hidden: false
      immutable: false
      type: string
      description: IPV6 subnet prefix length
      default: '0'
    vlc_oam_ip_7:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc8 OAM
      default: 107.239.72.152
    Internal1_allow_transit:
      hidden: false
      immutable: false
      type: string
      description: Allow/disallow transit internal-1 network
      default: true
    vlc_oam_ip_2:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc3 OAM
      default: 107.239.72.157
    vlc_oam_ip_3:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc4 OAM
      default: 107.239.72.158
    vlc_gtp_ip_0:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc1 GTP
      default: 107.243.47.208
    vlc_oam_ip_4:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc5 OAM
      default: 107.239.72.149
    fsb_volume_image_name_0:
      label: MME_FSB1
      hidden: false
      immutable: false
      type: string
      description: volume name
      default: MME_FSB1_1_3_GA.qcow2
    vlc_gtp_ip_1:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc2 GTP
      default: 107.243.47.209
    vlc_oam_ip_5:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc6 OAM
      default: 107.239.72.150
    vlc_gtp_ip_2:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc3 GTP
      default: 107.243.47.216
    vlc_name_6:
      hidden: false
      immutable: false
      type: string
      description: Name of vlc7
      default: zrdm3mmex59vlc007
    vlc_gtp_ip_3:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc4 GTP
      default: 107.243.47.217
    vlc_name_7:
      hidden: false
      immutable: false
      type: string
      description: Name of vlc8
      default: zrdm3mmex59vlc008
    security_group_sctp_a_id:
      hidden: false
      immutable: false
      type: string
      description: Security Group UUID for output
      default: 3cd8a524-77ff-4980-ae2a-d19ba70e0511
    vlc_gtp_ip_4:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc5 GTP
      default: 107.243.47.218
    vlc_gtp_ip_5:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc6 GTP
      default: 107.243.47.219
    vlc_gtp_ip_6:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc7 GTP
      default: 107.243.47.220
    vlc_name_2:
      hidden: false
      immutable: false
      type: string
      description: Name of vlc3
      default: zrdm3mmex59vlc003
    vlc_gtp_ip_7:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc8 GTP
      default: 107.243.47.221
    vlc_name_3:
      hidden: false
      immutable: false
      type: string
      description: Name of vlc4
      default: zrdm3mmex59vlc004
    vlc_name_4:
      hidden: false
      immutable: false
      type: string
      description: Name of vlc5
      default: zrdm3mmex59vlc005
    vlc_name_5:
      hidden: false
      immutable: false
      type: string
      description: Name of vlc6
      default: zrdm3mmex59vlc006
    fsb_volume_id_1:
      hidden: false
      immutable: false
      type: string
      description: ID of Cinder Volume for FSB2
      default: 5bd0560c-bfd0-47dc-a84a-554e2698c925
    sctp-a-ipv6-ingress_action:
      hidden: false
      immutable: false
      type: string
      description: IPV6 action
      default: pass
    vlc_name_0:
      hidden: false
      immutable: false
      type: string
      description: Name of vlc1
      default: zrdm3mmex59vlc001
    vlc_name_1:
      hidden: false
      immutable: false
      type: string
      description: Name of vlc2
      default: zrdm3mmex59vlc002
    vlc_oam_route_prefixes:
      hidden: false
      immutable: false
      type: json
      description: Route prefixes for static routing on OAM
    sctp-b-egress_rule_application:
      hidden: false
      immutable: false
      type: string
      description: application for the SecurityGroup
      default: any
    vlc_oam_ip_0:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc1 OAM
      default: 107.239.72.155
    vlc_oam_ip_1:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc2 OAM
      default: 107.239.72.156
    vlc6_Internal1_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to vlc6_Internal1
      default: 00:80:37:0E:06:12
    fsb_volume_id_0:
      hidden: false
      immutable: false
      type: string
      description: ID of Cinder Volume for FSB1
      default: 27baa6a0-b701-4795-bf5e-4f546b350b1f
    sctp-b-egress-dst_end_port:
      hidden: false
      immutable: false
      type: float
      description: end_port for the SecurityGroup
      default: 65535
      constraints:
      - in_range:
        - 0
        - 65535
    gpb2_Internal2_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to gpb2_Internal2
      default: 00:80:37:0E:0A:22
    sctp-a-ipv6-egress_rule_application:
      hidden: false
      immutable: false
      type: string
      description: IPV6 Rule-application
      default: any
    sctp-b-ipv6-egress_src_start_port:
      hidden: false
      immutable: false
      type: string
      description: IPV6 subnet prefix
      default: 0
    Internal2_allow_transit:
      hidden: false
      immutable: false
      type: string
      description: Allow/disallow transit internal-2 network
      default: true
    fsb_volume_size:
      label: volume size
      hidden: false
      immutable: false
      type: float
      description: volume size 320GB
      default: 320
      constraints:
      - in_range:
        - 0
        - 340
    sctp-b-IPv6_ethertype:
      hidden: false
      immutable: false
      type: string
      description: IPV6 ethertype
      default: IPv6
    gtp_net_fqdn:
      hidden: false
      immutable: false
      type: string
      description: Network FQDN GTP
      default: default-domain:vMME-24474-Ericsson-WTC-Lab-vLCP1-4:vMME-24474-Ericsson-WTC-Lab-vLCP1-4_gn_GTP_net_1
    ncb2_Internal1_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to ncb2_Internal1
      default: 00:80:37:0E:0F:12
    sctp-b-ingress_rule_protocol:
      hidden: false
      immutable: false
      type: string
      description: protocol for the SecurityGroup
      default: any
    sctp-b-ingress_action:
      hidden: false
      immutable: false
      type: string
      description: simple_action for the SecurityGroup
      default: pass
    sctp-b-egress_src_addresses:
      hidden: false
      immutable: false
      type: string
      description: security_group for the SecurityGroup
      default: local
    gpb7_Internal2_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to gpb7_Internal2
      default: 00:80:37:0E:0F:22
    sctp-a-ipv6-ingress-dst_start_port:
      hidden: false
      immutable: false
      type: string
      description: IPV6 starting port for destination
      default: 0
    gtp_net_name:
      hidden: false
      immutable: false
      type: string
      description: Network Name GTP
      default: vMME-24474-Ericsson-WTC-Lab-vLCP1-4_gn_GTP_net_1
    sctp-b-ipv6-ingress_rule_application:
      hidden: false
      immutable: false
      type: string
      description: IPV6 Rule-application
      default: any
    domain_name:
      hidden: false
      immutable: false
      type: string
      description: Unique name of vMME contrail domain
      default: default-domain
    vlc5_Internal1_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to vlc5_Internal1
      default: 00:80:37:0E:05:12
    sctp-a-egress_src_addresses:
      hidden: false
      immutable: false
      type: string
      description: security_group for the SecurityGroup
      default: local
    sctp-b-egress-src_start_port:
      hidden: false
      immutable: false
      type: float
      description: start_port for the SecurityGroup
      default: 0
      constraints:
      - in_range:
        - 0
        - 65535
    shc_enabled:
      hidden: false
      immutable: false
      type: string
      description: health check
      default: true
    sctp-b-ipv6-ingress-dst_end_port:
      hidden: false
      immutable: false
      type: string
      description: IPV6 end port
      default: 65535
    sctp-b-dst_subnet_prefix_v6:
      hidden: false
      immutable: false
      type: string
      description: ip_prefix for the SecurityGroup
      default: '::'
    sctp_a_net_fqdn:
      hidden: false
      immutable: false
      type: string
      description: Network FQDN SCTPA
      default: default-domain:vMME-24474-Ericsson-WTC-Lab-vLCP1-4:vMME-24474-Ericsson-WTC-Lab-vLCP1-4_gn_SCTPA_net_1
    security_group_gtp_id:
      hidden: false
      immutable: false
      type: string
      description: Security Group UUID for output
      default: e8ad3fe2-5f95-43e4-bbcc-da97b1c22588
    sctp-a-ipv6-ingress_src_subnet_prefix:
      hidden: false
      immutable: false
      type: string
      description: IPV6 subnet prefix
      default: 0.0.0.0
    fsb_name_1:
      hidden: false
      immutable: false
      type: string
      description: Name of fsb1
      default: zrdm3mmex59fsb002
    sctp-b-egress-dst_start_port:
      hidden: false
      immutable: false
      type: float
      description: start_port for the SecurityGroup
      default: 0
      constraints:
      - in_range:
        - 0
        - 65535
    fsb_name_0:
      hidden: false
      immutable: false
      type: string
      description: Name of fsb1
      default: zrdm3mmex59fsb001
    sctp_a_net_name:
      hidden: false
      immutable: false
      type: string
      description: Network Name SCTPA
      default: vMME-24474-Ericsson-WTC-Lab-vLCP1-4_gn_SCTPA_net_1
    sctp-b-egress_dst_subnet_prefix_len:
      hidden: false
      immutable: false
      type: float
      description: ip_prefix_len for the SecurityGroup
      default: '0'
      constraints:
      - in_range:
        - 0
        - 32
    gpb1_Internal1_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to gpb1_Internal1
      default: 00:80:37:0E:09:22
    sctp-a-ingress-dst_start_port:
      hidden: false
      immutable: false
      type: float
      description: start_port for the SecurityGroup
      default: 0
      constraints:
      - in_range:
        - 0
        - 65535
    fsb1_Internal2_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to fsb1_Internal2
      default: 00:80:37:0E:0B:12
    vlc_st_service_mode:
      hidden: false
      immutable: false
      type: string
      description: service mode
      default: in-network-nat
    sctp-a-ipv6-egress_ethertype:
      hidden: false
      immutable: false
      type: string
      description: IPV6 ethertype
      default: IPv4
    sctp-a-egress-src_end_port:
      hidden: false
      immutable: false
      type: float
      description: end_port for the SecurityGroup
      default: 65535
      constraints:
      - in_range:
        - 0
        - 65535
    sctp-b-egress_action:
      hidden: false
      immutable: false
      type: string
      description: simple_action for the SecurityGroup
      default: pass
    sctp-a-ingress-src_subnet_prefix_len:
      hidden: false
      immutable: false
      type: float
      description: ip_prefix_len for the SecurityGroup
      default: '0'
      constraints:
      - in_range:
        - 0
        - 32
    sctp-a-ipv6-ingress-src_start_port:
      hidden: false
      immutable: false
      type: float
      description: IPV6 start port
      default: 0
      constraints:
      - in_range:
        - 0
        - 65535
    vf_module_id:
      hidden: false
      immutable: false
      type: string
      description: the vf_module_id for this instance. UUID provided by ECOMP
      default: TWO
    Internal1_net_cidr:
      hidden: false
      immutable: false
      type: string
      description: CIDR for internal-1 network
      default: 169.253.0.0
    fsb_flavor_name:
      hidden: false
      immutable: false
      type: string
      description: Flavor to use for servers  fsb1
      default: nv.c8r32d1
    sctp_rule_protocol:
      hidden: false
      immutable: false
      type: string
      description: protocol for the SecurityGroup
      default: 132
    vnf_name:
      hidden: false
      immutable: false
      type: string
      description: the vnf_name for this instance. provided by ECOMP
      default: zrdm3mmex59
    sctp-a-IPv6_ethertype:
      hidden: false
      immutable: false
      type: string
      description: IPV6 ethertype
      default: IPv6
    vlc_sctp_b_v6_ip_7:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc8 SCTPB
      default: fd00:200:200:5:0:0:0:29
    vlc6_Internal2_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to vlc6_Internal2
      default: 00:80:37:0E:06:12
    sctp-b-ingress-dst_end_port:
      hidden: false
      immutable: false
      type: float
      description: end_port for the SecurityGroup
      default: 65535
      constraints:
      - in_range:
        - 0
        - 65535
    vlc7_Internal2_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to vlc7_Internal2
      default: 00:80:37:0E:07:12
    sctp-a-ipv6-ingress-src_end_port:
      hidden: false
      immutable: false
      type: float
      description: IPV6 ending port for destination
      default: 65535
      constraints:
      - in_range:
        - 0
        - 65535
    vlc_flavor_name:
      hidden: false
      immutable: false
      type: string
      description: Flavor to use for servers vlc
      default: nd.c16r64d1
    sctp-b-ipv6-egress_src_addresses:
      hidden: false
      immutable: false
      type: string
      description: IPV6 source
      default: local
    vlc_st_interface_type_int1:
      hidden: false
      immutable: false
      type: string
      description: service_interface_type for the ServiceTemplate
      default: other1
    availability_zone_0:
      hidden: false
      immutable: false
      type: string
      description: cluster for spawnning fsb instances
      default: rdm3-kvm-az02
    service_instance_id_0:
      hidden: false
      immutable: false
      type: string
      description: UUID of service instance for vLCs
      default: 77c67cc8-d15f-47bc-aeb1-8d65d09e917a
    availability_zone_1:
      hidden: false
      immutable: false
      type: string
      description: cluster for spawnning ncb instances
      default: rdm3-kvm-az02
    vlc_st_interface_type_int2:
      hidden: false
      immutable: false
      type: string
      description: service_interface_type for the ServiceTemplate
      default: other2
    sctp-a-ipv6-egress-dst_start_port:
      hidden: false
      immutable: false
      type: string
      description: IPV6 start port
      default: 0
    sctp-a-ipv6-egress_dst_subnet_prefix_len:
      hidden: false
      immutable: false
      type: string
      description: IPV6 subnet prefix
      default: '0'
    vlc_sctp_a_ip_0:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc1 SCTPA
      default: 107.243.47.144
    vlc_sctp_b_route_prefixes:
      hidden: false
      immutable: false
      type: json
      description: Route prefixes for static routing on SCTPB
    vlc1_Internal1_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to vlc1_Internal1
      default: 00:80:37:0E:01:12
    sctp-b-ipv6-egress_src_end_port:
      hidden: false
      immutable: false
      type: string
      description: IPV6 end port
      default: 65535
    sctp-a-ipv6-egress_src_addresses:
      hidden: false
      immutable: false
      type: string
      description: IPV6 source
      default: local
    vlc_sctp_a_ip_7:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc8 SCTPA
      default: 107.243.47.157
    sctp-a-ingress-src_subnet_prefix_v6:
      hidden: false
      immutable: false
      type: string
      description: src subnet
      default: '::'
    vlc_sctp_a_ip_6:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc7 SCTPA
      default: 107.243.47.156
    vlc_sctp_a_ip_5:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc6 SCTPA
      default: 107.243.47.155
    sctp-a-ingress-dst_end_port:
      hidden: false
      immutable: false
      type: float
      description: end_port for the SecurityGroup
      default: 65535
      constraints:
      - in_range:
        - 0
        - 65535
    vlc_sctp_a_ip_4:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc5 SCTPA
      default: 107.243.47.154
    vlc_sctp_a_ip_3:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc4 SCTPA
      default: 107.243.47.153
    vlc_sctp_a_ip_2:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc3 SCTPA
      default: 107.243.47.152
    vlc_sctp_a_ip_1:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc2 SCTPA
      default: 107.243.47.145
    gpb6_Internal2_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to gpb6_Internal2
      default: 00:80:37:0E:0E:22
    security_group_int2_id:
      hidden: false
      immutable: false
      type: string
      description: UUID of Internal1_net security group
      default: 1361f069-baf2-4b76-b321-7f68ba26c369
    Internal2_dhcp:
      hidden: false
      immutable: false
      type: string
      description: Whether DHCP/static IP addressing on internal-2 network
      default: false
    sctp-a-dst_subnet_prefix_v6:
      hidden: false
      immutable: false
      type: string
      description: ip_prefix for the SecurityGroup
      default: '::'
    pxe_image_name:
      hidden: false
      immutable: false
      type: string
      description: Name of image to use for server ncb
      default: MME_PXE-Boot_1_3_GA.qcow2
    vlc_st_interface_type_gtp:
      hidden: false
      immutable: false
      type: string
      description: service_interface_type for the ServiceTemplate
      default: other0
    ncb1_Internal1_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to ncb1_Internal1
      default: 00:80:37:0E:09:12
    vlc_gtp_route_prefixes:
      hidden: false
      immutable: false
      type: json
      description: Route prefixes for static routing on GTP
    int1_sec_group_name:
      hidden: false
      immutable: false
      type: string
      description: SecurityGroup name for internal-1
      default: int1-sec-group
    vmi_oam_preference_secondary:
      hidden: false
      immutable: false
      type: float
      description: Preference for secondary interface/port
      default: 100
    Internal1_dhcp:
      hidden: false
      immutable: false
      type: string
      description: Whether DHCP/static IP addressing on internal-1 network
      default: false
    fsb2_Internal2_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to fsb2_Internal2
      default: 00:80:37:0E:0D:12
    Internal1_net_cidr_len:
      hidden: false
      immutable: false
      type: string
      description: CIDR length for internal-1 network
      default: 17
    sctp-a-ingress_dst_addresses:
      hidden: false
      immutable: false
      type: string
      description: security_group for the SecurityGroup
      default: local
    sctp-b-ingress-src_subnet_prefix_len:
      hidden: false
      immutable: false
      type: float
      description: ip_prefix_len for the SecurityGroup
      default: '0'
      constraints:
      - in_range:
        - 0
        - 32
    fsb_oam_ip_1:
      hidden: false
      immutable: false
      type: string
      description: IP address of OAM vNIC for FSB2
      default: 107.239.72.154
    fsb_oam_ip_0:
      hidden: false
      immutable: false
      type: string
      description: IP address of OAM vNIC for FSB1
      default: 107.239.72.153
    shc_timeout:
      hidden: false
      immutable: false
      type: string
      description: health check
      default: 5
    vlc_st_version:
      hidden: false
      immutable: false
      type: string
      description: Indicates service version
      default: 2
    sctp-a-src_subnet_prefix_v6:
      hidden: false
      immutable: false
      type: string
      description: ip_prefix for the SecurityGroup
      default: '::'
    sctp-a-ingress_rule_application:
      hidden: false
      immutable: false
      type: string
      description: application for the SecurityGroup
      default: any
    sctp-b-egress_ethertype:
      hidden: false
      immutable: false
      type: string
      description: ethertype for the SecurityGroup
      default: IPv4
    sctp-a-ipv6-egress_src_start_port:
      hidden: false
      immutable: false
      type: string
      description: IPV6 subnet prefix
      default: 0
    instance_ip_family_v6:
      hidden: false
      immutable: false
      type: string
      description: Ipv6 instance type
      default: v6
    sctp-b-ingress-src_subnet_prefix_v6:
      hidden: false
      immutable: false
      type: string
      description: src subnet
      default: '::'
    gpb8_Internal2_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to gpb8_Internal2
      default: 00:80:37:0E:10:22
    gpb4_Internal1_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to gpb4_Internal1
      default: 00:80:37:0E:0C:22
    sctp-a-ipv6-ingress-dst_end_port:
      hidden: false
      immutable: false
      type: string
      description: IPV6 end port
      default: 65535
    Internal1_net_gateway:
      hidden: false
      immutable: false
      type: string
      description: gateway for internal-1 network
      default: 169.253.0.3
    sctp-b-ipv6-egress-dst_start_port:
      hidden: false
      immutable: false
      type: string
      description: IPV6 start port
      default: 0
    gpb_name_7:
      hidden: false
      immutable: false
      type: string
      description: Name of gpb8
      default: zrdm3mmex59gpb0016
    gpb_name_6:
      hidden: false
      immutable: false
      type: string
      description: Name of gpb7
      default: zrdm3mmex59gpb0015
    gpb_name_5:
      hidden: false
      immutable: false
      type: string
      description: Name of gpb6
      default: zrdm3mmex59gpb0014
    gpb_name_4:
      hidden: false
      immutable: false
      type: string
      description: Name of gpb5
      default: zrdm3mmex59gpb0013
    gpb_name_3:
      hidden: false
      immutable: false
      type: string
      description: Name of gpb4
      default: zrdm3mmex59gpb0012
    sctp-a-ipv6-ingress_dst_addresses:
      hidden: false
      immutable: false
      type: string
      description: IPV6 destination
      default: local
    gpb_name_2:
      hidden: false
      immutable: false
      type: string
      description: Name of gpb3
      default: zrdm3mmex59gpb0011
    shc_delay:
      hidden: false
      immutable: false
      type: string
      description: health check
      default: 3
    gpb_name_1:
      hidden: false
      immutable: false
      type: string
      description: Name of gpb2
      default: zrdm3mmex59gpb0010
    sctp-b-ipv6-egress_action:
      hidden: false
      immutable: false
      type: string
      description: IPV6 action
      default: pass
    vlc3_Internal2_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to vlc3_Internal2
      default: 00:80:37:0E:03:12
    gpb_name_0:
      hidden: false
      immutable: false
      type: string
      description: Name of gpb1
      default: zrdm3mmex59gpb009
    sctp-a-ipv6-egress_action:
      hidden: false
      immutable: false
      type: string
      description: IPV6 action
      default: pass
    gpb5_Internal1_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to gpb5_Internal1
      default: 00:80:37:0E:0D:22
    sctp-b-ipv6-ingress_rule_protocol:
      hidden: false
      immutable: false
      type: string
      description: IPV6 Rule-protocol
      default: any
    shc_max_retries:
      hidden: false
      immutable: false
      type: string
      description: health check
      default: 2
    fsb_volume_type:
      label: volume type
      hidden: false
      immutable: false
      type: string
      description: volume type SolidFire
      default: SF-Default-SSD
    sctp-a-name:
      hidden: false
      immutable: false
      type: string
      description: name for the SecurityGroup
      default: epc-sctp-a-ipv4v6-sec-group
    vlc_sctp_b_ip_5:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc6 SCTPB
      default: 107.243.47.187
    vlc_sctp_b_ip_4:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc5 SCTPB
      default: 107.243.47.186
    vlc_sctp_b_ip_3:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc4 SCTPB
      default: 107.243.47.185
    vlc_sctp_b_ip_2:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc3 SCTPB
      default: 107.243.47.184
    sctp-b-egress_rule_protocol:
      hidden: false
      immutable: false
      type: string
      description: protocol for the SecurityGroup
      default: any
    vnf_id:
      hidden: false
      immutable: false
      type: string
      description: the vf_id for this instance. UUID provided by ECOMP
      default: zrdm3mmex59
    vlc_sctp_b_ip_7:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc8 SCTPB
      default: 107.243.47.189
    vlc_sctp_b_ip_6:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc7 SCTPB
      default: 107.243.47.188
    vlc_sctp_b_ip_1:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc2 SCTPB
      default: 107.243.47.177
    gpb6_Internal1_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to gpb6_Internal1
      default: 00:80:37:0E:0E:22
    sctp-b-ipv6-egress_dst_end_port:
      hidden: false
      immutable: false
      type: string
      description: IPV6 end port
      default: 65535
    vlc_sctp_b_ip_0:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc1 SCTPB
      default: 107.243.47.176
    vlc2_Internal2_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to vlc2_Internal2
      default: 00:80:37:0E:02:12
    sctp-b-ingress-src_subnet_prefix:
      hidden: false
      immutable: false
      type: string
      description: ip_prefix for the SecurityGroup
      default: 0.0.0.0
    gpb_flavor_name:
      hidden: false
      immutable: false
      type: string
      description: Flavor to use for servers gpb
      default: nv.c20r64d1
    vlc_sctp_a_route_prefixes:
      hidden: false
      immutable: false
      type: json
      description: Route prefixes for static routing on SCTPA
    sctp-b-ipv6-ingress_dst_addresses:
      hidden: false
      immutable: false
      type: string
      description: IPV6 destination
      default: local
    sctp-b-ipv6-ingress_ethertype:
      hidden: false
      immutable: false
      type: string
      description: IPV6 ethertype
      default: IPv4
    sctp-b-ipv6-egress_dst_subnet_prefix:
      hidden: false
      immutable: false
      type: string
      description: IPV6 subnet prefix
      default: 0.0.0.0
    sctp-a-ingress-src_subnet_prefix:
      hidden: false
      immutable: false
      type: string
      description: ip_prefix for the SecurityGroup
      default: 0.0.0.0
    vlc1_Internal2_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to vlc1_Internal2
      default: 00:80:37:0E:01:12
    Internal1_rpf:
      hidden: false
      immutable: false
      type: string
      description: Reverse Path Forwarding Enabled/Disabled internal-1 network
      default: disable
    sctp-b-ingress_ethertype:
      hidden: false
      immutable: false
      type: string
      description: ethertype for the SecurityGroup
      default: IPv4
    sctp-b-ingress-src_end_port:
      hidden: false
      immutable: false
      type: float
      description: end_port for the SecurityGroup
      default: 65535
      constraints:
      - in_range:
        - 0
        - 65535
    sctp-a-ipv6-ingress_rule_protocol:
      hidden: false
      immutable: false
      type: string
      description: IPV6 Rule-protocol
      default: any
    vlc_sctp_a_v6_ip_7:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc8 SCTPA
      default: fd00:200:200:4:0:0:0:29
    vlc_sctp_a_v6_ip_6:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc7 SCTPA
      default: fd00:200:200:4:0:0:0:28
    gpb7_Internal1_mac:
      hidden: false
      immutable: false
      type: string
      description: static mac address assigned to gpb7_Internal1
      default: 00:80:37:0E:0F:22
    vlc_sctp_a_v6_ip_5:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc6 SCTPA
      default: fd00:200:200:4:0:0:0:27
    vlc_sctp_a_v6_ip_4:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc5 SCTPA
      default: fd00:200:200:4:0:0:0:26
    vlc_sctp_a_v6_ip_3:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc4 SCTPA
      default: fd00:200:200:4:0:0:0:25
    vlc_sctp_a_v6_ip_2:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc3 SCTPA
      default: fd00:200:200:4:0:0:0:24
    sctp-a-ingress-src_start_port:
      hidden: false
      immutable: false
      type: float
      description: start_port for the SecurityGroup
      default: 0
      constraints:
      - in_range:
        - 0
        - 65535
    vlc_sctp_a_v6_ip_1:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc2 SCTPA
      default: fd00:200:200:4:0:0:0:17
    vlc_sctp_a_v6_ip_0:
      hidden: false
      immutable: false
      type: string
      description: Static IP vlc1 SCTPA
      default: fd00:200:200:4:0:0:0:16
  node_templates:
    abstract_gpb_1:
      type: org.openecomp.resource.abstract.nodes.gpb_1
      directives:
      - substitutable
      properties:
        compute_gpb_name:
        - get_input: gpb_name_1
        vm_flavor_name:
          get_input: gpb_flavor_name
        compute_gpb_scheduler_hints:
        - group:
            get_input: server_group_id_0
        port_gpb2_Internal1_security_groups:
        - - get_input: security_group_int1_id
        compute_gpb_metadata:
        - vf_module_id:
            get_input: vf_module_id
          vnf_id:
            get_input: vnf_id
          vnf_name:
            get_input: vnf_name
        port_gpb2_Internal2_network:
        - get_input: internal_net_id_1
        port_gpb2_Internal1_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: false
          floating_ip_count_required:
            is_required: false
        vm_image_name:
          get_input: pxe_image_name
        port_gpb2_Internal1_replacement_policy:
        - AUTO
        port_gpb2_Internal1_network:
        - get_input: internal_net_id_0
        port_gpb2_Internal2_replacement_policy:
        - AUTO
        port_gpb2_Internal1_mac_requirements:
          mac_count_required:
            is_required: true
        compute_gpb_availability_zone:
        - get_input: availability_zone_1
        port_gpb2_Internal1_mac_address:
          get_input: gpb2_Internal1_mac
        port_gpb2_Internal2_mac_requirements:
          mac_count_required:
            is_required: true
        port_gpb2_Internal2_mac_address:
          get_input: gpb2_Internal1_mac
        port_gpb2_Internal2_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: false
          floating_ip_count_required:
            is_required: false
        port_gpb2_Internal2_security_groups:
        - - get_input: security_group_int2_id
        service_template_filter:
          substitute_service_template: Nested_gpb_1ServiceTemplate.yaml
          count: 1
        index_value:
          get_property:
          - SELF
          - service_template_filter
          - index_value
        vm_type_tag: gpb
        nfc_naming_code: gpb
      requirements:
      - link_gpb_gpb2_Internal1:
          capability: tosca.capabilities.network.Linkable
          node: Internal1_net
          relationship: tosca.relationships.network.LinksTo
      - link_gpb_gpb2_Internal2:
          capability: tosca.capabilities.network.Linkable
          node: Internal2_net
          relationship: tosca.relationships.network.LinksTo
    abstract_gpb_2:
      type: org.openecomp.resource.abstract.nodes.gpb_2
      directives:
      - substitutable
      properties:
        port_gpb3_Internal1_replacement_policy:
        - AUTO
        compute_gpb_name:
        - get_input: gpb_name_2
        port_gpb3_Internal1_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: false
          floating_ip_count_required:
            is_required: false
        port_gpb3_Internal2_replacement_policy:
        - AUTO
        vm_flavor_name:
          get_input: gpb_flavor_name
        port_gpb3_Internal2_security_groups:
        - - get_input: security_group_int2_id
        compute_gpb_scheduler_hints:
        - group:
            get_input: server_group_id_0
        compute_gpb_metadata:
        - vf_module_id:
            get_input: vf_module_id
          vnf_id:
            get_input: vnf_id
          vnf_name:
            get_input: vnf_name
        vm_image_name:
          get_input: pxe_image_name
        port_gpb3_Internal1_security_groups:
        - - get_input: security_group_int1_id
        port_gpb3_Internal2_network:
        - get_input: internal_net_id_1
        compute_gpb_availability_zone:
        - get_input: availability_zone_0
        port_gpb3_Internal1_network:
        - get_input: internal_net_id_0
        port_gpb3_Internal1_mac_requirements:
          mac_count_required:
            is_required: true
        port_gpb3_Internal2_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: false
          floating_ip_count_required:
            is_required: false
        port_gpb3_Internal1_mac_address:
          get_input: gpb3_Internal1_mac
        port_gpb3_Internal2_mac_address:
          get_input: gpb3_Internal1_mac
        port_gpb3_Internal2_mac_requirements:
          mac_count_required:
            is_required: true
        service_template_filter:
          substitute_service_template: Nested_gpb_2ServiceTemplate.yaml
          count: 1
        index_value:
          get_property:
          - SELF
          - service_template_filter
          - index_value
        vm_type_tag: gpb
        nfc_naming_code: gpb
      requirements:
      - link_gpb_gpb3_Internal1:
          capability: tosca.capabilities.network.Linkable
          node: Internal1_net
          relationship: tosca.relationships.network.LinksTo
      - link_gpb_gpb3_Internal2:
          capability: tosca.capabilities.network.Linkable
          node: Internal2_net
          relationship: tosca.relationships.network.LinksTo
    abstract_vlc:
      type: org.openecomp.resource.abstract.nodes.vlc
      directives:
      - substitutable
      properties:
        port_template_VMInt_SCTP_A_vlc_virtual_network_refs:
        - - get_input: sctp_a_net_fqdn
        port_template_VMInt_INT1_vlc_security_group_refs:
        - - get_input: security_group_int1_id
        vm_flavor_name:
          get_input: vlc_flavor_name
        port_template_VMInt_INT2_vlc_port_tuple_refs:
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc4
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc3
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc2
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc1
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc8
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc7
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc6
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc5
        vm_image_name:
          get_input: pxe_image_name
        port_template_VMInt_INT1_vlc_port_tuple_refs:
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc4
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc3
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc2
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc1
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc8
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc7
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc6
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc5
        port_template_VMInt_INT2_vlc_virtual_network_refs:
        - - get_input: internal_net_id_1
        port_template_VMInt_OAM_vlc_virtual_network_refs:
        - - get_input: oam_net_fqdn
        port_template_VMInt_OAM_vlc_port_tuple_refs:
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc4
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc3
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc2
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc1
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc8
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc7
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc6
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc5
        port_template_VMInt_INT2_vlc_virtual_machine_interface_mac_addresses:
        - - get_input: vlc4_Internal2_mac
        - - get_input: vlc3_Internal2_mac
        - - get_input: vlc2_Internal2_mac
        - - get_input: vlc1_Internal2_mac
        - - get_input: vlc8_Internal2_mac
        - - get_input: vlc7_Internal2_mac
        - - get_input: vlc6_Internal2_mac
        - - get_input: vlc5_Internal2_mac
        port_template_VMInt_SCTP_B_vlc_port_tuple_refs:
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc4
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc3
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc2
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc1
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc8
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc7
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc6
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc5
        port_template_VMInt_GTP_vlc_security_group_refs:
        - - get_input: security_group_gtp_id
        compute_vlc_metadata:
        - vf_module_id:
            get_input: vf_module_id
          vnf_id:
            get_input: vnf_id
          vnf_name:
            get_input: vnf_name
        - vf_module_id:
            get_input: vf_module_id
          vnf_id:
            get_input: vnf_id
          vnf_name:
            get_input: vnf_name
        - vf_module_id:
            get_input: vf_module_id
          vnf_id:
            get_input: vnf_id
          vnf_name:
            get_input: vnf_name
        - vf_module_id:
            get_input: vf_module_id
          vnf_id:
            get_input: vnf_id
          vnf_name:
            get_input: vnf_name
        - vf_module_id:
            get_input: vf_module_id
          vnf_id:
            get_input: vnf_id
          vnf_name:
            get_input: vnf_name
        - vf_module_id:
            get_input: vf_module_id
          vnf_id:
            get_input: vnf_id
          vnf_name:
            get_input: vnf_name
        - vf_module_id:
            get_input: vf_module_id
          vnf_id:
            get_input: vnf_id
          vnf_name:
            get_input: vnf_name
        - vf_module_id:
            get_input: vf_module_id
          vnf_id:
            get_input: vnf_id
          vnf_name:
            get_input: vnf_name
        port_template_VMInt_OAM_vlc_security_group_refs:
        - - get_input: security_group_oam_id
        compute_vlc_contrail_service_instance_ind:
        - true
        - true
        - true
        - true
        - true
        - true
        - true
        - true
        port_template_VMInt_GTP_vlc_port_tuple_refs:
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc4
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc3
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc2
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc1
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc8
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc7
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc6
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc5
        port_template_VMInt_SCTP_B_vlc_virtual_network_refs:
        - - get_input: sctp_b_net_fqdn
        port_template_VMInt_INT2_vlc_security_group_refs:
        - - get_input: security_group_int2_id
        port_template_VMInt_SCTP_B_vlc_security_group_refs:
        - - get_input: security_group_sctp_b_id
        port_template_VMInt_INT1_vlc_virtual_network_refs:
        - - get_input: internal_net_id_0
        port_template_VMInt_SCTP_A_vlc_port_tuple_refs:
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc4
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc3
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc2
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc1
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc8
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc7
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc6
        - - UNSUPPORTED_RESOURCE_template_PortTuple_vlc5
        compute_vlc_scheduler_hints:
        - group:
            get_input: server_group_id_0
        - group:
            get_input: server_group_id_0
        - group:
            get_input: server_group_id_0
        - group:
            get_input: server_group_id_0
        - group:
            get_input: server_group_id_0
        - group:
            get_input: server_group_id_0
        - group:
            get_input: server_group_id_0
        - group:
            get_input: server_group_id_0
        compute_vlc_name:
        - get_input: vlc_name_3
        - get_input: vlc_name_2
        - get_input: vlc_name_1
        - get_input: vlc_name_0
        - get_input: vlc_name_7
        - get_input: vlc_name_6
        - get_input: vlc_name_5
        - get_input: vlc_name_4
        port_template_VMInt_SCTP_A_vlc_security_group_refs:
        - - get_input: security_group_sctp_a_id
        compute_vlc_availability_zone:
        - get_input: availability_zone_1
        - get_input: availability_zone_0
        - get_input: availability_zone_1
        - get_input: availability_zone_0
        - get_input: availability_zone_1
        - get_input: availability_zone_0
        - get_input: availability_zone_1
        - get_input: availability_zone_0
        port_template_VMInt_INT1_vlc_virtual_machine_interface_mac_addresses:
        - - get_input: vlc4_Internal1_mac
        - - get_input: vlc3_Internal1_mac
        - - get_input: vlc2_Internal1_mac
        - - get_input: vlc1_Internal1_mac
        - - get_input: vlc8_Internal1_mac
        - - get_input: vlc7_Internal1_mac
        - - get_input: vlc6_Internal1_mac
        - - get_input: vlc5_Internal1_mac
        port_template_VMInt_GTP_vlc_virtual_network_refs:
        - - get_input: gtp_net_fqdn
        service_template_filter:
          substitute_service_template: Nested_vlcServiceTemplate.yaml
          count: 8
        index_value:
          get_property:
          - SELF
          - service_template_filter
          - index_value
        vm_type_tag: vlc
        nfc_naming_code: vlc
      requirements:
      - link_vlc_template_VMInt_INT2_vlc:
          capability: tosca.capabilities.network.Linkable
          node: Internal2_net
          relationship: tosca.relationships.network.LinksTo
      - link_vlc_template_VMInt_INT1_vlc:
          capability: tosca.capabilities.network.Linkable
          node: Internal1_net
          relationship: tosca.relationships.network.LinksTo
    abstract_gpb_7:
      type: org.openecomp.resource.abstract.nodes.gpb_7
      directives:
      - substitutable
      properties:
        compute_gpb_name:
        - get_input: gpb_name_7
        port_gpb8_Internal1_mac_address:
          get_input: gpb8_Internal1_mac
        port_gpb8_Internal2_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: false
          floating_ip_count_required:
            is_required: false
        vm_flavor_name:
          get_input: gpb_flavor_name
        compute_gpb_scheduler_hints:
        - group:
            get_input: server_group_id_0
        compute_gpb_metadata:
        - vf_module_id:
            get_input: vf_module_id
          vnf_id:
            get_input: vnf_id
          vnf_name:
            get_input: vnf_name
        vm_image_name:
          get_input: pxe_image_name
        port_gpb8_Internal2_security_groups:
        - - get_input: security_group_int2_id
        port_gpb8_Internal1_replacement_policy:
        - AUTO
        port_gpb8_Internal2_replacement_policy:
        - AUTO
        compute_gpb_availability_zone:
        - get_input: availability_zone_1
        port_gpb8_Internal1_mac_requirements:
          mac_count_required:
            is_required: true
        port_gpb8_Internal1_network:
        - get_input: internal_net_id_0
        port_gpb8_Internal2_mac_requirements:
          mac_count_required:
            is_required: true
        port_gpb8_Internal1_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: false
          floating_ip_count_required:
            is_required: false
        port_gpb8_Internal1_security_groups:
        - - get_input: security_group_int1_id
        port_gpb8_Internal2_network:
        - get_input: internal_net_id_1
        port_gpb8_Internal2_mac_address:
          get_input: gpb8_Internal1_mac
        service_template_filter:
          substitute_service_template: Nested_gpb_7ServiceTemplate.yaml
          count: 1
        index_value:
          get_property:
          - SELF
          - service_template_filter
          - index_value
        vm_type_tag: gpb
        nfc_naming_code: gpb
      requirements:
      - link_gpb_gpb8_Internal1:
          capability: tosca.capabilities.network.Linkable
          node: Internal1_net
          relationship: tosca.relationships.network.LinksTo
      - link_gpb_gpb8_Internal2:
          capability: tosca.capabilities.network.Linkable
          node: Internal2_net
          relationship: tosca.relationships.network.LinksTo
    abstract_gpb_5:
      type: org.openecomp.resource.abstract.nodes.gpb_5
      directives:
      - substitutable
      properties:
        port_gpb6_Internal1_mac_requirements:
          mac_count_required:
            is_required: true
        compute_gpb_name:
        - get_input: gpb_name_5
        vm_flavor_name:
          get_input: gpb_flavor_name
        compute_gpb_scheduler_hints:
        - group:
            get_input: server_group_id_0
        compute_gpb_metadata:
        - vf_module_id:
            get_input: vf_module_id
          vnf_id:
            get_input: vnf_id
          vnf_name:
            get_input: vnf_name
        port_gpb6_Internal1_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: false
          floating_ip_count_required:
            is_required: false
        vm_image_name:
          get_input: pxe_image_name
        port_gpb6_Internal1_security_groups:
        - - get_input: security_group_int1_id
        port_gpb6_Internal2_network:
        - get_input: internal_net_id_1
        compute_gpb_availability_zone:
        - get_input: availability_zone_1
        port_gpb6_Internal1_network:
        - get_input: internal_net_id_0
        port_gpb6_Internal2_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: false
          floating_ip_count_required:
            is_required: false
        port_gpb6_Internal2_mac_address:
          get_input: gpb6_Internal1_mac
        port_gpb6_Internal1_mac_address:
          get_input: gpb6_Internal1_mac
        port_gpb6_Internal2_mac_requirements:
          mac_count_required:
            is_required: true
        port_gpb6_Internal2_replacement_policy:
        - AUTO
        port_gpb6_Internal1_replacement_policy:
        - AUTO
        port_gpb6_Internal2_security_groups:
        - - get_input: security_group_int2_id
        service_template_filter:
          substitute_service_template: Nested_gpb_5ServiceTemplate.yaml
          count: 1
        index_value:
          get_property:
          - SELF
          - service_template_filter
          - index_value
        vm_type_tag: gpb
        nfc_naming_code: gpb
      requirements:
      - link_gpb_gpb6_Internal1:
          capability: tosca.capabilities.network.Linkable
          node: Internal1_net
          relationship: tosca.relationships.network.LinksTo
      - link_gpb_gpb6_Internal2:
          capability: tosca.capabilities.network.Linkable
          node: Internal2_net
          relationship: tosca.relationships.network.LinksTo
    abstract_gpb_6:
      type: org.openecomp.resource.abstract.nodes.gpb_6
      directives:
      - substitutable
      properties:
        port_gpb7_Internal1_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: false
          floating_ip_count_required:
            is_required: false
        port_gpb7_Internal1_network:
        - get_input: internal_net_id_0
        compute_gpb_name:
        - get_input: gpb_name_6
        port_gpb7_Internal2_network:
        - get_input: internal_net_id_1
        vm_flavor_name:
          get_input: gpb_flavor_name
        port_gpb7_Internal1_replacement_policy:
        - AUTO
        port_gpb7_Internal2_replacement_policy:
        - AUTO
        port_gpb7_Internal2_security_groups:
        - - get_input: security_group_int2_id
        compute_gpb_scheduler_hints:
        - group:
            get_input: server_group_id_0
        compute_gpb_metadata:
        - vf_module_id:
            get_input: vf_module_id
          vnf_id:
            get_input: vnf_id
          vnf_name:
            get_input: vnf_name
        vm_image_name:
          get_input: pxe_image_name
        port_gpb7_Internal2_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: false
          floating_ip_count_required:
            is_required: false
        port_gpb7_Internal1_security_groups:
        - - get_input: security_group_int1_id
        compute_gpb_availability_zone:
        - get_input: availability_zone_0
        port_gpb7_Internal2_mac_address:
          get_input: gpb7_Internal1_mac
        port_gpb7_Internal1_mac_requirements:
          mac_count_required:
            is_required: true
        port_gpb7_Internal1_mac_address:
          get_input: gpb7_Internal1_mac
        port_gpb7_Internal2_mac_requirements:
          mac_count_required:
            is_required: true
        service_template_filter:
          substitute_service_template: Nested_gpb_6ServiceTemplate.yaml
          count: 1
        index_value:
          get_property:
          - SELF
          - service_template_filter
          - index_value
        vm_type_tag: gpb
        nfc_naming_code: gpb
      requirements:
      - link_gpb_gpb7_Internal1:
          capability: tosca.capabilities.network.Linkable
          node: Internal1_net
          relationship: tosca.relationships.network.LinksTo
      - link_gpb_gpb7_Internal2:
          capability: tosca.capabilities.network.Linkable
          node: Internal2_net
          relationship: tosca.relationships.network.LinksTo
    abstract_gpb_3:
      type: org.openecomp.resource.abstract.nodes.gpb_3
      directives:
      - substitutable
      properties:
        compute_gpb_name:
        - get_input: gpb_name_3
        port_gpb4_Internal2_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: false
          floating_ip_count_required:
            is_required: false
        vm_flavor_name:
          get_input: gpb_flavor_name
        port_gpb4_Internal1_mac_address:
          get_input: gpb4_Internal1_mac
        compute_gpb_scheduler_hints:
        - group:
            get_input: server_group_id_0
        port_gpb4_Internal2_mac_requirements:
          mac_count_required:
            is_required: true
        compute_gpb_metadata:
        - vf_module_id:
            get_input: vf_module_id
          vnf_id:
            get_input: vnf_id
          vnf_name:
            get_input: vnf_name
        port_gpb4_Internal2_mac_address:
          get_input: gpb4_Internal1_mac
        vm_image_name:
          get_input: pxe_image_name
        port_gpb4_Internal2_security_groups:
        - - get_input: security_group_int2_id
        compute_gpb_availability_zone:
        - get_input: availability_zone_1
        port_gpb4_Internal2_replacement_policy:
        - AUTO
        port_gpb4_Internal1_replacement_policy:
        - AUTO
        port_gpb4_Internal1_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: false
          floating_ip_count_required:
            is_required: false
        port_gpb4_Internal1_security_groups:
        - - get_input: security_group_int1_id
        port_gpb4_Internal2_network:
        - get_input: internal_net_id_1
        port_gpb4_Internal1_mac_requirements:
          mac_count_required:
            is_required: true
        port_gpb4_Internal1_network:
        - get_input: internal_net_id_0
        service_template_filter:
          substitute_service_template: Nested_gpb_3ServiceTemplate.yaml
          count: 1
        index_value:
          get_property:
          - SELF
          - service_template_filter
          - index_value
        vm_type_tag: gpb
        nfc_naming_code: gpb
      requirements:
      - link_gpb_gpb4_Internal1:
          capability: tosca.capabilities.network.Linkable
          node: Internal1_net
          relationship: tosca.relationships.network.LinksTo
      - link_gpb_gpb4_Internal2:
          capability: tosca.capabilities.network.Linkable
          node: Internal2_net
          relationship: tosca.relationships.network.LinksTo
    abstract_gpb_4:
      type: org.openecomp.resource.abstract.nodes.gpb_4
      directives:
      - substitutable
      properties:
        port_gpb5_Internal2_mac_requirements:
          mac_count_required:
            is_required: true
        port_gpb5_Internal1_security_groups:
        - - get_input: security_group_int1_id
        compute_gpb_name:
        - get_input: gpb_name_4
        vm_flavor_name:
          get_input: gpb_flavor_name
        port_gpb5_Internal1_mac_requirements:
          mac_count_required:
            is_required: true
        compute_gpb_scheduler_hints:
        - group:
            get_input: server_group_id_0
        port_gpb5_Internal2_network:
        - get_input: internal_net_id_1
        compute_gpb_metadata:
        - vf_module_id:
            get_input: vf_module_id
          vnf_id:
            get_input: vnf_id
          vnf_name:
            get_input: vnf_name
        vm_image_name:
          get_input: pxe_image_name
        port_gpb5_Internal1_network:
        - get_input: internal_net_id_0
        port_gpb5_Internal2_mac_address:
          get_input: gpb5_Internal1_mac
        port_gpb5_Internal1_mac_address:
          get_input: gpb5_Internal1_mac
        port_gpb5_Internal1_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: false
          floating_ip_count_required:
            is_required: false
        port_gpb5_Internal2_replacement_policy:
        - AUTO
        compute_gpb_availability_zone:
        - get_input: availability_zone_0
        port_gpb5_Internal1_replacement_policy:
        - AUTO
        port_gpb5_Internal2_security_groups:
        - - get_input: security_group_int2_id
        port_gpb5_Internal2_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: false
          floating_ip_count_required:
            is_required: false
        service_template_filter:
          substitute_service_template: Nested_gpb_4ServiceTemplate.yaml
          count: 1
        index_value:
          get_property:
          - SELF
          - service_template_filter
          - index_value
        vm_type_tag: gpb
        nfc_naming_code: gpb
      requirements:
      - link_gpb_gpb5_Internal1:
          capability: tosca.capabilities.network.Linkable
          node: Internal1_net
          relationship: tosca.relationships.network.LinksTo
      - link_gpb_gpb5_Internal2:
          capability: tosca.capabilities.network.Linkable
          node: Internal2_net
          relationship: tosca.relationships.network.LinksTo
    abstract_gpb:
      type: org.openecomp.resource.abstract.nodes.gpb
      directives:
      - substitutable
      properties:
        port_gpb1_Internal1_security_groups:
        - - get_input: security_group_int1_id
        compute_gpb_name:
        - get_input: gpb_name_0
        port_gpb1_Internal2_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: false
          floating_ip_count_required:
            is_required: false
        vm_flavor_name:
          get_input: gpb_flavor_name
        port_gpb1_Internal1_mac_requirements:
          mac_count_required:
            is_required: true
        compute_gpb_scheduler_hints:
        - group:
            get_input: server_group_id_0
        compute_gpb_metadata:
        - vf_module_id:
            get_input: vf_module_id
          vnf_id:
            get_input: vnf_id
          vnf_name:
            get_input: vnf_name
        vm_image_name:
          get_input: pxe_image_name
        port_gpb1_Internal1_mac_address:
          get_input: gpb1_Internal1_mac
        port_gpb1_Internal2_mac_address:
          get_input: gpb1_Internal1_mac
        port_gpb1_Internal2_mac_requirements:
          mac_count_required:
            is_required: true
        compute_gpb_availability_zone:
        - get_input: availability_zone_0
        port_gpb1_Internal1_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: false
          floating_ip_count_required:
            is_required: false
        port_gpb1_Internal2_security_groups:
        - - get_input: security_group_int2_id
        port_gpb1_Internal1_replacement_policy:
        - AUTO
        port_gpb1_Internal2_replacement_policy:
        - AUTO
        port_gpb1_Internal2_network:
        - get_input: internal_net_id_1
        port_gpb1_Internal1_network:
        - get_input: internal_net_id_0
        service_template_filter:
          substitute_service_template: Nested_gpbServiceTemplate.yaml
          count: 1
        index_value:
          get_property:
          - SELF
          - service_template_filter
          - index_value
        vm_type_tag: gpb
        nfc_naming_code: gpb
      requirements:
      - link_gpb_gpb1_Internal1:
          capability: tosca.capabilities.network.Linkable
          node: Internal1_net
          relationship: tosca.relationships.network.LinksTo
      - link_gpb_gpb1_Internal2:
          capability: tosca.capabilities.network.Linkable
          node: Internal2_net
          relationship: tosca.relationships.network.LinksTo
    Internal1_net:
      type: org.openecomp.resource.vl.nodes.heat.network.contrailV2.VirtualNetwork
      properties:
        network_ipam_refs_data:
        - network_ipam_refs_data_ipam_subnets:
          - network_ipam_refs_data_ipam_subnets_enable_dhcp:
              get_input: Internal1_dhcp
            network_ipam_refs_data_ipam_subnets_default_gateway:
              get_input: Internal1_net_gateway
            network_ipam_refs_data_ipam_subnets_subnet:
              network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
                get_input: Internal1_net_cidr_len
              network_ipam_refs_data_ipam_subnets_subnet_ip_prefix:
                get_input: Internal1_net_cidr
        network_name:
          str_replace:
            template: $VNF_NAME_int_net_1
            params:
              $VNF_NAME:
                get_input: vnf_name
        network_ipam_refs:
        - UNSUPPORTED_RESOURCE_template_NetworkIpam_Internal1
    abstract_fsb:
      type: org.openecomp.resource.abstract.nodes.fsb
      directives:
      - substitutable
      properties:
        port_FSB1_Internal1_mac_address:
          get_input: fsb1_Internal1_mac
        port_FSB_OAM_network_role_tag:
        - oam
        port_FSB1_Internal2_network:
        - Internal2_net
        port_FSB1_Internal1_network:
        - Internal1_net
        vm_flavor_name:
          get_input: fsb_flavor_name
        port_FSB1_Internal2_mac_address:
          get_input: fsb1_Internal1_mac
        port_FSB_OAM_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: true
          floating_ip_count_required:
            is_required: false
        compute_fsb_metadata:
        - vf_module_id:
            get_input: vf_module_id
          vnf_id:
            get_input: vnf_id
          vnf_name:
            get_input: vnf_name
        port_FSB1_Internal1_security_groups:
        - - int1_security_group
        port_FSB1_Internal2_replacement_policy:
        - AUTO
        compute_fsb_scheduler_hints:
        - group: VM_Affinity_group
        port_FSB1_Internal1_replacement_policy:
        - AUTO
        compute_fsb_name:
        - get_input: fsb_name_0
        port_FSB1_Internal1_mac_requirements:
          mac_count_required:
            is_required: true
        port_FSB1_Internal1_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: false
          floating_ip_count_required:
            is_required: false
        port_FSB_OAM_network:
        - get_input: oam_net_name
        port_FSB_OAM_security_groups:
        - - oam_security_group
        port_FSB_OAM_mac_requirements:
          mac_count_required:
            is_required: false
        port_FSB_OAM_replacement_policy:
        - AUTO
        compute_fsb_availability_zone:
        - get_input: availability_zone_0
        port_FSB1_Internal2_security_groups:
        - - int2_security_group
        port_FSB1_Internal2_mac_requirements:
          mac_count_required:
            is_required: true
        port_FSB1_Internal2_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: false
          floating_ip_count_required:
            is_required: false
        port_FSB_OAM_fixed_ips:
        - ip_address:
            get_input: fsb_oam_ip_0
        service_template_filter:
          substitute_service_template: Nested_fsbServiceTemplate.yaml
          count: 1
        index_value:
          get_property:
          - SELF
          - service_template_filter
          - index_value
        vm_type_tag: fsb
        nfc_naming_code: fsb
      requirements:
      - link_fsb_FSB1_Internal1:
          capability: tosca.capabilities.network.Linkable
          node: Internal1_net
          relationship: tosca.relationships.network.LinksTo
      - link_fsb_FSB1_Internal2:
          capability: tosca.capabilities.network.Linkable
          node: Internal2_net
          relationship: tosca.relationships.network.LinksTo
    gtp_security_group:
      type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
      properties:
        name:
          str_replace:
            template: $VNF_NAME_$SECGROUPNAME
            params:
              $SECGROUPNAME:
                get_input: gtp_sec_group_name
              $VNF_NAME:
                get_input: vnf_name
        rules:
        - protocol: tcp
          ethertype: IPv4
          port_range_max: 65535
          remote_ip_prefix: 0.0.0.0/0
          direction: egress
          port_range_min: 1
        - protocol: udp
          ethertype: IPv4
          port_range_max: 65535
          remote_ip_prefix: 0.0.0.0/0
          direction: egress
          port_range_min: 1
        - protocol: icmp
          ethertype: IPv4
          remote_ip_prefix: 0.0.0.0/0
          direction: egress
        - protocol: tcp
          ethertype: IPv4
          port_range_max: 65535
          remote_ip_prefix: 0.0.0.0/0
          direction: ingress
          port_range_min: 1
        - protocol: udp
          ethertype: IPv4
          port_range_max: 65535
          remote_ip_prefix: 0.0.0.0/0
          direction: ingress
          port_range_min: 1
        - protocol: icmp
          ethertype: IPv4
          remote_ip_prefix: 0.0.0.0/0
          direction: ingress
    abstract_ncb_1:
      type: org.openecomp.resource.abstract.nodes.ncb_1
      directives:
      - substitutable
      properties:
        port_NCB2_Internal2_security_groups:
        - - int2_security_group
        port_NCB2_Internal1_replacement_policy:
        - AUTO
        port_NCB2_Internal2_replacement_policy:
        - AUTO
        vm_flavor_name:
          get_input: ncb_flavor_name
        port_NCB2_Internal2_mac_requirements:
          mac_count_required:
            is_required: true
        port_NCB2_Internal1_mac_requirements:
          mac_count_required:
            is_required: true
        vm_image_name:
          get_input: pxe_image_name
        compute_ncb_scheduler_hints:
        - group: VM_Affinity_group
        compute_ncb_availability_zone:
        - get_input: availability_zone_1
        port_NCB2_Internal1_network:
        - Internal1_net
        port_NCB2_Internal2_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: false
          floating_ip_count_required:
            is_required: false
        port_NCB2_Internal1_security_groups:
        - - int1_security_group
        port_NCB2_Internal2_network:
        - Internal2_net
        port_NCB2_Internal1_mac_address:
          get_input: ncb2_Internal1_mac
        port_NCB2_Internal2_mac_address:
          get_input: ncb2_Internal1_mac
        compute_ncb_name:
        - get_input: ncb_name_1
        compute_ncb_metadata:
        - vf_module_id:
            get_input: vf_module_id
          vnf_id:
            get_input: vnf_id
          vnf_name:
            get_input: vnf_name
        port_NCB2_Internal1_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: false
          floating_ip_count_required:
            is_required: false
        service_template_filter:
          substitute_service_template: Nested_ncb_1ServiceTemplate.yaml
          count: 1
        index_value:
          get_property:
          - SELF
          - service_template_filter
          - index_value
        vm_type_tag: ncb
        nfc_naming_code: ncb
      requirements:
      - link_ncb_NCB2_Internal1:
          capability: tosca.capabilities.network.Linkable
          node: Internal1_net
          relationship: tosca.relationships.network.LinksTo
      - link_ncb_NCB2_Internal2:
          capability: tosca.capabilities.network.Linkable
          node: Internal2_net
          relationship: tosca.relationships.network.LinksTo
    abstract_ncb:
      type: org.openecomp.resource.abstract.nodes.ncb
      directives:
      - substitutable
      properties:
        vm_flavor_name:
          get_input: ncb_flavor_name
        port_NCB1_Internal2_mac_requirements:
          mac_count_required:
            is_required: true
        vm_image_name:
          get_input: pxe_image_name
        port_NCB1_Internal2_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: false
          floating_ip_count_required:
            is_required: false
        compute_ncb_scheduler_hints:
        - group: VM_Affinity_group
        port_NCB1_Internal1_security_groups:
        - - int1_security_group
        compute_ncb_availability_zone:
        - get_input: availability_zone_0
        port_NCB1_Internal2_mac_address:
          get_input: ncb1_Internal1_mac
        port_NCB1_Internal1_mac_address:
          get_input: ncb1_Internal1_mac
        port_NCB1_Internal1_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: false
          floating_ip_count_required:
            is_required: false
        port_NCB1_Internal1_mac_requirements:
          mac_count_required:
            is_required: true
        port_NCB1_Internal2_replacement_policy:
        - AUTO
        port_NCB1_Internal1_network:
        - Internal1_net
        port_NCB1_Internal2_security_groups:
        - - int2_security_group
        port_NCB1_Internal1_replacement_policy:
        - AUTO
        compute_ncb_name:
        - get_input: ncb_name_0
        compute_ncb_metadata:
        - vf_module_id:
            get_input: vf_module_id
          vnf_id:
            get_input: vnf_id
          vnf_name:
            get_input: vnf_name
        port_NCB1_Internal2_network:
        - Internal2_net
        service_template_filter:
          substitute_service_template: Nested_ncbServiceTemplate.yaml
          count: 1
        index_value:
          get_property:
          - SELF
          - service_template_filter
          - index_value
        vm_type_tag: ncb
        nfc_naming_code: ncb
      requirements:
      - link_ncb_NCB1_Internal1:
          capability: tosca.capabilities.network.Linkable
          node: Internal1_net
          relationship: tosca.relationships.network.LinksTo
      - link_ncb_NCB1_Internal2:
          capability: tosca.capabilities.network.Linkable
          node: Internal2_net
          relationship: tosca.relationships.network.LinksTo
    int1_security_group:
      type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
      properties:
        name:
          str_replace:
            template: $VNF_NAME_$SECGROUPNAME
            params:
              $SECGROUPNAME:
                get_input: int1_sec_group_name
              $VNF_NAME:
                get_input: vnf_name
        rules:
        - protocol: tcp
          ethertype: IPv4
          port_range_max: 65535
          remote_ip_prefix: 0.0.0.0/0
          direction: egress
          port_range_min: 1
        - protocol: udp
          ethertype: IPv4
          port_range_max: 65535
          remote_ip_prefix: 0.0.0.0/0
          direction: egress
          port_range_min: 1
        - protocol: icmp
          ethertype: IPv4
          remote_ip_prefix: 0.0.0.0/0
          direction: egress
        - protocol: tcp
          ethertype: IPv4
          port_range_max: 65535
          remote_ip_prefix: 0.0.0.0/0
          direction: ingress
          port_range_min: 1
        - protocol: udp
          ethertype: IPv4
          port_range_max: 65535
          remote_ip_prefix: 0.0.0.0/0
          direction: ingress
          port_range_min: 1
        - protocol: icmp
          ethertype: IPv4
          remote_ip_prefix: 0.0.0.0/0
          direction: ingress
      requirements:
      - port:
          capability: attachment_fsb_FSB1_Internal1
          node: abstract_fsb
          relationship: org.openecomp.relationships.AttachesTo
      - port:
          capability: attachment_fsb_FSB2_Internal1
          node: abstract_fsb_1
          relationship: org.openecomp.relationships.AttachesTo
      - port:
          capability: attachment_ncb_NCB1_Internal1
          node: abstract_ncb
          relationship: org.openecomp.relationships.AttachesTo
      - port:
          capability: attachment_ncb_NCB2_Internal1
          node: abstract_ncb_1
          relationship: org.openecomp.relationships.AttachesTo
      - port:
          capability: attachment_gpb_gpb1_Internal1
          node: abstract_gpb
          relationship: org.openecomp.relationships.AttachesTo
      - port:
          capability: attachment_gpb_gpb2_Internal1
          node: abstract_gpb_1
          relationship: org.openecomp.relationships.AttachesTo
      - port:
          capability: attachment_gpb_gpb3_Internal1
          node: abstract_gpb_2
          relationship: org.openecomp.relationships.AttachesTo
      - port:
          capability: attachment_gpb_gpb4_Internal1
          node: abstract_gpb_3
          relationship: org.openecomp.relationships.AttachesTo
      - port:
          capability: attachment_gpb_gpb5_Internal1
          node: abstract_gpb_4
          relationship: org.openecomp.relationships.AttachesTo
      - port:
          capability: attachment_gpb_gpb6_Internal1
          node: abstract_gpb_5
          relationship: org.openecomp.relationships.AttachesTo
      - port:
          capability: attachment_gpb_gpb7_Internal1
          node: abstract_gpb_6
          relationship: org.openecomp.relationships.AttachesTo
      - port:
          capability: attachment_gpb_gpb8_Internal1
          node: abstract_gpb_7
          relationship: org.openecomp.relationships.AttachesTo
    fsb_volume_0:
      type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
      properties:
        image:
          get_input: fsb_volume_image_name_0
        volume_type:
          get_input: fsb_volume_type
        size: '(get_input : fsb_volume_size) * 1024'
        name:
          list_join:
          - _
          - - get_input: OS::stack_name
            - FSB1_Vol_1
    fsb_volume_1:
      type: org.openecomp.resource.vfc.nodes.heat.cinder.Volume
      properties:
        image:
          get_input: fsb_volume_image_name_1
        volume_type:
          get_input: fsb_volume_type
        size: '(get_input : fsb_volume_size) * 1024'
        name:
          list_join:
          - _
          - - get_input: OS::stack_name
            - FSB2_Vol_1
    Internal2_net:
      type: org.openecomp.resource.vl.nodes.heat.network.contrailV2.VirtualNetwork
      properties:
        network_ipam_refs_data:
        - network_ipam_refs_data_ipam_subnets:
          - network_ipam_refs_data_ipam_subnets_enable_dhcp:
              get_input: Internal2_dhcp
            network_ipam_refs_data_ipam_subnets_default_gateway:
              get_input: Internal2_net_gateway
            network_ipam_refs_data_ipam_subnets_subnet:
              network_ipam_refs_data_ipam_subnets_subnet_ip_prefix_len:
                get_input: Internal2_net_cidr_len
              network_ipam_refs_data_ipam_subnets_subnet_ip_prefix:
                get_input: Internal2_net_cidr
        network_name:
          str_replace:
            template: $VNF_NAME_int_net_2
            params:
              $VNF_NAME:
                get_input: vnf_name
        network_ipam_refs:
        - UNSUPPORTED_RESOURCE_template_NetworkIpam_Internal2
    int2_security_group:
      type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
      properties:
        name:
          str_replace:
            template: $VNF_NAME_$SECGROUPNAME
            params:
              $SECGROUPNAME:
                get_input: int2_sec_group_name
              $VNF_NAME:
                get_input: vnf_name
        rules:
        - protocol: tcp
          ethertype: IPv4
          port_range_max: 65535
          remote_ip_prefix: 0.0.0.0/0
          direction: egress
          port_range_min: 1
        - protocol: udp
          ethertype: IPv4
          port_range_max: 65535
          remote_ip_prefix: 0.0.0.0/0
          direction: egress
          port_range_min: 1
        - protocol: 132
          ethertype: IPv4
          port_range_max: 65535
          remote_ip_prefix: 0.0.0.0/0
          direction: egress
          port_range_min: 1
        - protocol: icmp
          ethertype: IPv4
          remote_ip_prefix: 0.0.0.0/0
          direction: egress
        - protocol: tcp
          ethertype: IPv6
          port_range_max: 65535
          remote_ip_prefix: ::/0
          direction: egress
          port_range_min: 1
        - protocol: udp
          ethertype: IPv6
          port_range_max: 65535
          remote_ip_prefix: ::/0
          direction: egress
          port_range_min: 1
        - protocol: 132
          ethertype: IPv6
          port_range_max: 65535
          remote_ip_prefix: ::/0
          direction: egress
          port_range_min: 1
        - protocol: icmp
          ethertype: IPv6
          remote_ip_prefix: ::/0
          direction: egress
        - protocol: tcp
          ethertype: IPv4
          port_range_max: 65535
          remote_ip_prefix: 0.0.0.0/0
          direction: ingress
          port_range_min: 1
        - protocol: udp
          ethertype: IPv4
          port_range_max: 65535
          remote_ip_prefix: 0.0.0.0/0
          direction: ingress
          port_range_min: 1
        - protocol: 132
          ethertype: IPv4
          port_range_max: 65535
          remote_ip_prefix: 0.0.0.0/0
          direction: ingress
          port_range_min: 1
        - protocol: icmp
          ethertype: IPv4
          remote_ip_prefix: 0.0.0.0/0
          direction: ingress
        - protocol: tcp
          ethertype: IPv6
          port_range_max: 65535
          remote_ip_prefix: ::/0
          direction: ingress
          port_range_min: 1
        - protocol: udp
          ethertype: IPv6
          port_range_max: 65535
          remote_ip_prefix: ::/0
          direction: ingress
          port_range_min: 1
        - protocol: 132
          ethertype: IPv6
          port_range_max: 65535
          remote_ip_prefix: ::/0
          direction: ingress
          port_range_min: 1
        - protocol: icmp
          ethertype: IPv6
          remote_ip_prefix: ::/0
          direction: ingress
      requirements:
      - port:
          capability: attachment_fsb_FSB1_Internal2
          node: abstract_fsb
          relationship: org.openecomp.relationships.AttachesTo
      - port:
          capability: attachment_fsb_FSB2_Internal2
          node: abstract_fsb_1
          relationship: org.openecomp.relationships.AttachesTo
      - port:
          capability: attachment_ncb_NCB1_Internal2
          node: abstract_ncb
          relationship: org.openecomp.relationships.AttachesTo
      - port:
          capability: attachment_ncb_NCB2_Internal2
          node: abstract_ncb_1
          relationship: org.openecomp.relationships.AttachesTo
      - port:
          capability: attachment_gpb_gpb1_Internal2
          node: abstract_gpb
          relationship: org.openecomp.relationships.AttachesTo
      - port:
          capability: attachment_gpb_gpb2_Internal2
          node: abstract_gpb_1
          relationship: org.openecomp.relationships.AttachesTo
      - port:
          capability: attachment_gpb_gpb3_Internal2
          node: abstract_gpb_2
          relationship: org.openecomp.relationships.AttachesTo
      - port:
          capability: attachment_gpb_gpb4_Internal2
          node: abstract_gpb_3
          relationship: org.openecomp.relationships.AttachesTo
      - port:
          capability: attachment_gpb_gpb5_Internal2
          node: abstract_gpb_4
          relationship: org.openecomp.relationships.AttachesTo
      - port:
          capability: attachment_gpb_gpb6_Internal2
          node: abstract_gpb_5
          relationship: org.openecomp.relationships.AttachesTo
      - port:
          capability: attachment_gpb_gpb7_Internal2
          node: abstract_gpb_6
          relationship: org.openecomp.relationships.AttachesTo
      - port:
          capability: attachment_gpb_gpb8_Internal2
          node: abstract_gpb_7
          relationship: org.openecomp.relationships.AttachesTo
    abstract_fsb_1:
      type: org.openecomp.resource.abstract.nodes.fsb_1
      directives:
      - substitutable
      properties:
        port_FSB_OAM_network_role_tag:
        - oam
        vm_flavor_name:
          get_input: fsb_flavor_name
        port_FSB_OAM_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: true
          floating_ip_count_required:
            is_required: false
        port_FSB2_Internal1_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: false
          floating_ip_count_required:
            is_required: false
        port_FSB2_Internal2_security_groups:
        - - int2_security_group
        compute_fsb_metadata:
        - vf_module_id:
            get_input: vf_module_id
          vnf_id:
            get_input: vnf_id
          vnf_name:
            get_input: vnf_name
        port_FSB2_Internal1_mac_address:
          get_input: fsb2_Internal1_mac
        compute_fsb_scheduler_hints:
        - group: VM_Affinity_group
        compute_fsb_name:
        - get_input: fsb_name_1
        port_FSB2_Internal1_security_groups:
        - - int1_security_group
        port_FSB_OAM_network:
        - get_input: oam_net_name
        port_FSB_OAM_security_groups:
        - - oam_security_group
        port_FSB2_Internal1_network:
        - Internal1_net
        port_FSB2_Internal2_mac_address:
          get_input: fsb2_Internal1_mac
        port_FSB2_Internal2_mac_requirements:
          mac_count_required:
            is_required: true
        port_FSB_OAM_mac_requirements:
          mac_count_required:
            is_required: false
        port_FSB2_Internal2_replacement_policy:
        - AUTO
        port_FSB2_Internal2_ip_requirements:
        - ip_version: 4
          ip_count_required:
            is_required: false
          floating_ip_count_required:
            is_required: false
        port_FSB_OAM_replacement_policy:
        - AUTO
        port_FSB2_Internal2_network:
        - Internal2_net
        port_FSB2_Internal1_replacement_policy:
        - AUTO
        compute_fsb_availability_zone:
        - get_input: availability_zone_1
        port_FSB_OAM_fixed_ips:
        - ip_address:
            get_input: fsb_oam_ip_1
        port_FSB2_Internal1_mac_requirements:
          mac_count_required:
            is_required: true
        service_template_filter:
          substitute_service_template: Nested_fsb_1ServiceTemplate.yaml
          count: 1
        index_value:
          get_property:
          - SELF
          - service_template_filter
          - index_value
        vm_type_tag: fsb
        nfc_naming_code: fsb
      requirements:
      - link_fsb_FSB2_Internal1:
          capability: tosca.capabilities.network.Linkable
          node: Internal1_net
          relationship: tosca.relationships.network.LinksTo
      - link_fsb_FSB2_Internal2:
          capability: tosca.capabilities.network.Linkable
          node: Internal2_net
          relationship: tosca.relationships.network.LinksTo
    oam_security_group:
      type: org.openecomp.resource.vfc.rules.nodes.heat.network.neutron.SecurityRules
      properties:
        name:
          str_replace:
            template: $VNF_NAME_$SECGROUPNAME
            params:
              $SECGROUPNAME:
                get_input: oam_sec_group_name
              $VNF_NAME:
                get_input: vnf_name
        rules:
        - protocol: tcp
          ethertype: IPv4
          port_range_max: 65535
          remote_ip_prefix: 0.0.0.0/0
          direction: egress
          port_range_min: 1
        - protocol: udp
          ethertype: IPv4
          port_range_max: 65535
          remote_ip_prefix: 0.0.0.0/0
          direction: egress
          port_range_min: 1
        - protocol: icmp
          ethertype: IPv4
          remote_ip_prefix: 0.0.0.0/0
          direction: egress
        - protocol: tcp
          ethertype: IPv4
          port_range_max: 65535
          remote_ip_prefix: 0.0.0.0/0
          direction: ingress
          port_range_min: 1
        - protocol: udp
          ethertype: IPv4
          port_range_max: 65535
          remote_ip_prefix: 0.0.0.0/0
          direction: ingress
          port_range_min: 1
        - protocol: icmp
          ethertype: IPv4
          remote_ip_prefix: 0.0.0.0/0
          direction: ingress
      requirements:
      - port:
          capability: attachment_fsb_FSB_OAM
          node: abstract_fsb
          relationship: org.openecomp.relationships.AttachesTo
      - port:
          capability: attachment_fsb_FSB_OAM
          node: abstract_fsb_1
          relationship: org.openecomp.relationships.AttachesTo
  groups:
    vmme_gpb3_group:
      type: org.openecomp.groups.heat.HeatStack
      properties:
        heat_file: ../Artifacts/vmme_gpb3.yml
        description: |
          Module HOT template to create vmme 1-8 gpb
      members:
      - abstract_gpb
      - abstract_gpb_1
      - abstract_gpb_2
      - abstract_gpb_3
      - abstract_gpb_4
      - abstract_gpb_5
      - abstract_gpb_6
      - abstract_gpb_7
    base_vmme_group:
      type: org.openecomp.groups.heat.HeatStack
      properties:
        heat_file: ../Artifacts/base_vmme.yml
        description: |
          Base HOT template to create vmme 2 fsb 2 ncb
      members:
      - int2_security_group
      - oam_security_group
      - gtp_security_group
      - Internal2_net
      - int1_security_group
      - Internal1_net
      - abstract_ncb
      - abstract_ncb_1
      - abstract_fsb
      - abstract_fsb_1
    base_vmme_volume_group:
      type: org.openecomp.groups.heat.HeatStack
      properties:
        heat_file: ../Artifacts/base_vmme_volume.yml
        description: HOT template for vMME Cinder Volumes
      members:
      - fsb_volume_0
      - fsb_volume_1
    vmme_gpb1_group:
      type: org.openecomp.groups.heat.HeatStack
      properties:
        heat_file: ../Artifacts/vmme_gpb1.yml
        description: |
          Module HOT template to create vmme 1-8 gpb
      members:
      - abstract_gpb
      - abstract_gpb_1
      - abstract_gpb_2
      - abstract_gpb_3
      - abstract_gpb_4
      - abstract_gpb_5
      - abstract_gpb_6
      - abstract_gpb_7
    vmme_gpb4_group:
      type: org.openecomp.groups.heat.HeatStack
      properties:
        heat_file: ../Artifacts/vmme_gpb4.yml
        description: |
          Module HOT template to create vmme 1-8 gpb
      members:
      - abstract_gpb
      - abstract_gpb_1
      - abstract_gpb_2
      - abstract_gpb_3
      - abstract_gpb_4
      - abstract_gpb_5
      - abstract_gpb_6
      - abstract_gpb_7
    vmme_gpb2_group:
      type: org.openecomp.groups.heat.HeatStack
      properties:
        heat_file: ../Artifacts/vmme_gpb2.yml
        description: |
          Module HOT template to create vmme 1-8 gpb
      members:
      - abstract_gpb
      - abstract_gpb_1
      - abstract_gpb_2
      - abstract_gpb_3
      - abstract_gpb_4
      - abstract_gpb_5
      - abstract_gpb_6
      - abstract_gpb_7
    VM_Affinity_group:
      type: tosca.groups.Root
      members:
      - abstract_ncb
      - abstract_ncb_1
      - abstract_vlc
      - abstract_fsb
      - abstract_fsb_1
      - abstract_gpb
      - abstract_gpb_1
      - abstract_gpb_2
      - abstract_gpb_3
      - abstract_gpb_4
      - abstract_gpb_5
      - abstract_gpb_6
      - abstract_gpb_7
    vmme_vlc_group:
      type: org.openecomp.groups.heat.HeatStack
      properties:
        heat_file: ../Artifacts/vmme_vlc.yml
        description: |
          Module HOT template to create vmme 8 vlcs
      members:
      - abstract_vlc
  outputs:
    oam_management_v4_address:
      description: ID of OAM VIP to be provisioned in A&AI
      value:
        get_input: vip_oam_management_v4_ip
    fsb_volume_id_1:
      description: ID of Cinder Volume for FSB2
      value: fsb_volume_1
    security_group_sctp_b_id:
      description: ID of sctpb_security_group
      value: UNSUPPORTED_RESOURCE_sctpb_security_group
    service_instance_id_0:
      description: ID of Service Instance used for vLCs
      value: UNSUPPORTED_RESOURCE_template_ServiceInstance_VLC
    security_group_sctp_a_id:
      description: ID of sctpa_security_group
      value: UNSUPPORTED_RESOURCE_sctpa_security_group
    fsb_volume_id_0:
      description: ID of Cinder Volume for FSB1
      value: fsb_volume_0
  policies:
    VM_Affinity_policy:
      type: org.openecomp.policies.placement.Antilocate
      properties:
        container_type: host
      targets:
      - VM_Affinity_group