Add sdc startup in IT
Add the SDC startup for IT tests
Issue-ID: SDC-3232
Signed-off-by: sebdet <sebastien.determe@intl.att.com>
Change-Id: I865eabfb6c61f26f98ee12906de09f1a8daa469a
Signed-off-by: sebdet <sebastien.determe@intl.att.com>
diff --git a/integration-tests/pom.xml b/integration-tests/pom.xml
new file mode 100644
index 0000000..a4a6e90
--- /dev/null
+++ b/integration-tests/pom.xml
@@ -0,0 +1,428 @@
+<!--
+============LICENSE_START=======================================================
+SDC
+================================================================================
+Copyright (C) 2020 AT&T Intellectual Property. All rights reserved.
+================================================================================
+Licensed under the Apache License, Version 2.0 (the "License");
+you may not use this file except in compliance with the License.
+You may obtain a copy of the License at
+ *
+ http://www.apache.org/licenses/LICENSE-2.0
+ *
+Unless required by applicable law or agreed to in writing, software
+distributed under the License is distributed on an "AS IS" BASIS,
+WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+See the License for the specific language governing permissions and
+limitations under the License.
+============LICENSE_END=========================================================
+================================================================================
+-->
+<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">
+ <modelVersion>4.0.0</modelVersion>
+
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>sdc-integration-tests</artifactId>
+ <packaging>pom</packaging>
+ <name>sdc-integration-tests</name>
+
+ <parent>
+ <groupId>org.openecomp.sdc</groupId>
+ <artifactId>sdc-main</artifactId>
+ <version>1.7.0-SNAPSHOT</version>
+ </parent>
+
+ <properties>
+ <!-- Integration tests parameters -->
+ <it.env.name>integration-test</it.env.name>
+ <it.cassandra.port>9042</it.cassandra.port>
+ <it.cassandra.password>onap123#@!</it.cassandra.password>
+ <it.cassandra.ssl.enabled>false</it.cassandra.ssl.enabled>
+ <it.sdc.cluster.name>SDC-CS-${it.env.name}</it.sdc.cluster.name>
+ <it.sdc.user>asdc_user</it.sdc.user>
+ <it.sdc.password>Aa1234%^!</it.sdc.password>
+ <it.chef.config>${project.build.directory}/chef-config</it.chef.config>
+ <it.shared.volume>/tmp/sdc-integration-tests</it.shared.volume>
+ <it.docker.version>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest
+ </it.docker.version>
+ </properties>
+
+ <dependencies>
+ </dependencies>
+
+ <build>
+ <plugins>
+ <!-- Section for Integration tests -->
+ <plugin>
+ <artifactId>maven-resources-plugin</artifactId>
+ <executions>
+ <execution>
+ <id>copy-resources</id>
+ <phase>pre-integration-test</phase>
+ <goals>
+ <goal>copy-resources</goal>
+ </goals>
+ <configuration>
+ <outputDirectory>${it.chef.config}</outputDirectory>
+ <resources>
+ <resource>
+ <directory>src/test/resources</directory>
+ <filtering>true</filtering>
+ <includes>
+ <include>integration-test.json</include>
+ </includes>
+ </resource>
+ </resources>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <artifactId>maven-antrun-plugin</artifactId>
+ <version>1.8</version>
+ <inherited>false</inherited>
+ <executions>
+ <execution>
+ <phase>pre-integration-test</phase>
+ <configuration>
+ <target>
+ <mkdir dir="${it.shared.volume}"/>
+ <chmod dir="${it.shared.volume}" type="dir" perm="ugo+rwx"/>
+ </target>
+ </configuration>
+ <goals>
+ <goal>run</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>build-helper-maven-plugin</artifactId>
+ <inherited>false</inherited>
+ <executions>
+ <execution>
+ <id>reserve-port-for-tests</id>
+ <phase>validate</phase>
+ <goals>
+ <goal>reserve-network-port</goal>
+ </goals>
+ <configuration>
+ <portNames>
+ <portName>sdc.it.docker.cassandra.port</portName>
+ </portNames>
+ </configuration>
+ </execution>
+ </executions>
+ </plugin>
+ <plugin>
+ <groupId>io.fabric8</groupId>
+ <artifactId>docker-maven-plugin</artifactId>
+ <inherited>false</inherited>
+ <dependencies>
+ <dependency>
+ <groupId>org.apache.httpcomponents</groupId>
+ <artifactId>httpclient</artifactId>
+ <version>4.5.5</version>
+ </dependency>
+ </dependencies>
+ <configuration>
+ <verbose>true</verbose>
+ <apiVersion>1.35</apiVersion>
+ <autoCreateCustomNetworks>true</autoCreateCustomNetworks>
+ <images>
+ <image>
+ <name>onap/sdc-cassandra:${it.docker.version}</name>
+ <alias>sdc-cassandra</alias>
+ <run>
+ <env>
+ <RELEASE>${project.version}</RELEASE>
+ <CS_PASSWORD>${it.cassandra.password}</CS_PASSWORD>
+ <ENVNAME>${it.env.name}</ENVNAME>
+ <MAX_HEAP_SIZE>1536M</MAX_HEAP_SIZE>
+ <HEAP_NEWSIZE>512M</HEAP_NEWSIZE>
+ </env>
+ <hostname>sdc-cs</hostname>
+ <volumes>
+ <bind>
+ <volume>${it.chef.config}:/root/chef-solo/environments</volume>
+ </bind>
+ </volumes>
+ <ulimits>
+ <ulimit>
+ <name>memlock</name>
+ <hard>-1</hard>
+ <soft>-1</soft>
+ </ulimit>
+ <ulimit>
+ <name>nofile</name>
+ <hard>100000</hard>
+ <soft>100000</soft>
+ </ulimit>
+ </ulimits>
+ <wait>
+ <time>120000</time>
+ <tcp>
+ <host>sdc-cs</host>
+ <mode>direct</mode>
+ <ports>
+ <port>9042</port>
+ </ports>
+ </tcp>
+ </wait>
+ <ports>
+ <port>9042:9042</port>
+ </ports>
+ <network>
+ <mode>custom</mode>
+ <name>sdc-network</name>
+ <alias>sdc-cs</alias>
+ </network>
+ </run>
+ </image>
+ <image>
+ <name>onap/sdc-cassandra-init:${it.docker.version}</name>
+ <alias>sdc-cassandra-init</alias>
+ <run>
+ <dependsOn>
+ <container>sdc-cassandra</container>
+ </dependsOn>
+ <env>
+ <RELEASE>${project.version}</RELEASE>
+ <SDC_USER>${it.sdc.user}</SDC_USER>
+ <SDC_PASSWORD>${it.sdc.password}</SDC_PASSWORD>
+ <CS_PASSWORD>${it.cassandra.password}</CS_PASSWORD>
+ <ENVNAME>${it.env.name}</ENVNAME>
+ </env>
+ <hostname>sdc-cs-init</hostname>
+ <volumes>
+ <bind>
+ <volume>${it.chef.config}:/home/sdc/chef-solo/environments</volume>
+ </bind>
+ </volumes>
+ <wait>
+ <time>300000</time>
+ <log>SdcSchemaFileImport successfully completed</log>
+ </wait>
+ <network>
+ <mode>custom</mode>
+ <name>sdc-network</name>
+ <alias>sdc-cs-init</alias>
+ </network>
+ </run>
+ </image>
+ <image>
+ <name>onap/sdc-onboard-cassandra-init:${it.docker.version}</name>
+ <alias>sdc-cassandra-onboard-init</alias>
+ <run>
+ <dependsOn>
+ <container>sdc-cassandra-init</container>
+ </dependsOn>
+ <env>
+ <RELEASE>${project.version}</RELEASE>
+ <SDC_USER>${it.sdc.user}</SDC_USER>
+ <SDC_PASSWORD>${it.sdc.password}</SDC_PASSWORD>
+ <CS_PASSWORD>${it.cassandra.password}</CS_PASSWORD>
+ <CS_HOST_PORT>${it.cassandra.port}</CS_HOST_PORT>
+ <ENVNAME>${it.env.name}</ENVNAME>
+ <CS_HOST_IP>sdc-cs</CS_HOST_IP>
+ </env>
+ <hostname>sdc-cs-onboard-init</hostname>
+ <volumes>
+ <bind>
+ <volume>${it.chef.config}:/home/sdc/chef-solo/environments</volume>
+ </bind>
+ </volumes>
+ <wait>
+ <time>30000</time>
+ <log>Initializing onboard schemas</log>
+ </wait>
+ <network>
+ <mode>custom</mode>
+ <name>sdc-network</name>
+ <alias>sdc-cs-onboard-init</alias>
+ </network>
+ </run>
+ </image>
+ <image>
+ <name>onap/sdc-onboard-backend:${it.docker.version}</name>
+ <alias>sdc-onboard-backend</alias>
+ <run>
+ <dependsOn>
+ <container>sdc-cassandra-onboard-init</container>
+ </dependsOn>
+ <env>
+ <cassandra_ssl_enabled>${it.cassandra.ssl.enabled}</cassandra_ssl_enabled>
+ <SDC_CLUSTER_NAME>${it.sdc.cluster.name}</SDC_CLUSTER_NAME>
+ <SDC_USER>${it.sdc.user}</SDC_USER>
+ <SDC_PASSWORD>${it.sdc.password}</SDC_PASSWORD>
+ <ENVNAME>${it.env.name}</ENVNAME>
+ <SDC_CERT_DIR>onap/cert</SDC_CERT_DIR>
+ <JAVA_OPTIONS>-Xmx1536m -Xms1536m</JAVA_OPTIONS>
+ </env>
+ <hostname>sdc-onboard-BE</hostname>
+ <volumes>
+ <bind>
+ <volume>${it.chef.config}:/var/lib/jetty/chef-solo/environments</volume>
+ </bind>
+ </volumes>
+ <wait>
+ <time>30000</time>
+ <tcp>
+ <host>sdc-onboard-BE</host>
+ <mode>direct</mode>
+ <ports>
+ <port>8445</port>
+ <port>8081</port>
+ </ports>
+ </tcp>
+ </wait>
+ <ports>
+ <port>8445:8445</port>
+ <port>8081:8081</port>
+ </ports>
+ <network>
+ <mode>custom</mode>
+ <name>sdc-network</name>
+ <alias>sdc-onboard-BE</alias>
+ </network>
+ </run>
+ </image>
+ <image>
+ <name>onap/sdc-backend:${it.docker.version}</name>
+ <alias>sdc-backend</alias>
+ <run>
+ <dependsOn>
+ <container>sdc-onboard-backend</container>
+ </dependsOn>
+ <env>
+ <cassandra_ssl_enabled>${it.cassandra.ssl.enabled}</cassandra_ssl_enabled>
+ <ENVNAME>${it.env.name}</ENVNAME>
+ <JAVA_OPTIONS>-Xmx1536m -Xms1536m</JAVA_OPTIONS>
+ </env>
+ <hostname>sdc-BE</hostname>
+ <volumes>
+ <bind>
+ <volume>${it.chef.config}:/var/lib/jetty/chef-solo/environments</volume>
+ <volume>${it.shared.volume}:/var/lib/jetty/logs</volume>
+ </bind>
+ </volumes>
+ <wait>
+ <time>60000</time>
+ <tcp>
+ <host>sdc-BE</host>
+ <mode>direct</mode>
+ <ports>
+ <port>8443</port>
+ <port>8080</port>
+ </ports>
+ </tcp>
+ </wait>
+ <ports>
+ <port>8443:8443</port>
+ <port>8080:8080</port>
+ </ports>
+ <network>
+ <mode>custom</mode>
+ <name>sdc-network</name>
+ <alias>sdc-BE</alias>
+ </network>
+ </run>
+ </image>
+ <image>
+ <name>onap/sdc-backend-init:${it.docker.version}</name>
+ <alias>sdc-backend-init</alias>
+ <run>
+ <dependsOn>
+ <container>sdc-backend</container>
+ </dependsOn>
+ <env>
+ <ENVNAME>${it.env.name}</ENVNAME>
+ </env>
+ <hostname>sdc-BE-init</hostname>
+ <volumes>
+ <bind>
+ <volume>${it.chef.config}:/home/onap/chef-solo/environments</volume>
+ <volume>${it.shared.volume}:/var/lib/jetty/logs</volume>
+ </bind>
+ </volumes>
+ <wait>
+ <time>600000</time>
+ <log>Chef Client finished</log>
+ </wait>
+ <network>
+ <mode>custom</mode>
+ <name>sdc-network</name>
+ <alias>sdc-BE-init</alias>
+ </network>
+ </run>
+ </image>
+ <image>
+ <name>onap/sdc-frontend:${it.docker.version}</name>
+ <alias>sdc-frontend</alias>
+ <run>
+ <dependsOn>
+ <container>sdc-backend-init</container>
+ </dependsOn>
+ <env>
+ <ENVNAME>${it.env.name}</ENVNAME>
+ <JAVA_OPTIONS>-Xmx256m -Xms256m</JAVA_OPTIONS>
+ </env>
+ <hostname>sdc-FE</hostname>
+ <volumes>
+ <bind>
+ <volume>${it.chef.config}:/var/lib/jetty/chef-solo/environments</volume>
+ <volume>${it.shared.volume}:/var/lib/jetty/logs</volume>
+ <volume>
+ sdc-os-chef/environments/plugins-configuration.yaml:/var/lib/jetty/config/catalog-fe/plugins-configuration.yaml
+ </volume>
+ </bind>
+ </volumes>
+ <wait>
+ <time>60000</time>
+ <tcp>
+ <host>sdc-FE</host>
+ <mode>direct</mode>
+ <ports>
+ <port>9443</port>
+ <port>8181</port>
+ </ports>
+ </tcp>
+ </wait>
+ <ports>
+ <port>9443:9443</port>
+ <port>8181:8181</port>
+ </ports>
+ <network>
+ <mode>custom</mode>
+ <name>sdc-network</name>
+ <alias>sdc-FE</alias>
+ </network>
+ </run>
+ </image>
+ </images>
+ </configuration>
+
+ <executions>
+ <execution>
+ <id>docker-start-for-it</id>
+ <phase>pre-integration-test</phase>
+ <goals>
+ <goal>start</goal>
+ </goals>
+ </execution>
+ <execution>
+ <id>docker-stop-for-it</id>
+ <phase>post-integration-test</phase>
+ <goals>
+ <goal>stop</goal>
+ </goals>
+ </execution>
+ </executions>
+ </plugin>
+ </plugins>
+ </build>
+</project>
+
diff --git a/integration-tests/src/test/resources/integration-test.json b/integration-tests/src/test/resources/integration-test.json
new file mode 100644
index 0000000..dec9c2f
--- /dev/null
+++ b/integration-tests/src/test/resources/integration-test.json
@@ -0,0 +1,104 @@
+{
+ "name": "${it.env.name}",
+ "description": "OpenSource-${it.env.name}",
+ "json_class": "Chef::Environment",
+ "chef_type": "environment",
+
+ "default_attributes": {
+ "disableHttp": false,
+ "CS_VIP": "sdc-cs",
+ "BE_VIP": "sdc-BE",
+ "ONBOARDING_BE_VIP": "sdc-onboard-BE",
+ "FE_VIP": "sdc-FE",
+ "DCAE_BE_VIP": "localhost",
+ "DCAE_FE_VIP": "localhost",
+ "DCAE_TOSCA_LAB_VIP": "localhost",
+ "interfaces": {
+ "application": "eth0",
+ "private": "eth1"
+ },
+ "ECompP": {
+ "ecomp_rest_url": "http://portal.api.simpledemo.onap.org:8989/ONAPPORTAL/auxapi",
+ "ecomp_redirect_url": "http://portal.api.simpledemo.openecomp.org:8989/ECOMPPORTAL/login.htm",
+ "cipher_key": "AGLDdG4D04BKm2IxIWEr8o==",
+ "portal_user": "Ipwxi2oLvDxctMA1royaRw1W0jhucLx+grHzci3ePIA=",
+ "portal_pass": "j85yNhyIs7zKYbR1VlwEfNhS6b7Om4l0Gx5O8931sCI=",
+ "portal_app_name": "Ipwxi2oLvDxctMA1royaRw1W0jhucLx+grHzci3ePIA="
+ },
+ "UEB": {
+ "PublicKey": "iPIxkpAMI8qTcQj8",
+ "SecretKey": "Ehq3WyT4bkif4zwgEbvshGal",
+ "fqdn": ["10.0.11.1", "10.0.11.1"]
+ },
+ "Nodes": {
+ "CS": [
+ "sdc-cs"
+ ],
+ "BE": "sdc-BE",
+ "ONBOARDING_BE": "sdc-onboard-BE",
+ "FE": "sdc-FE"
+ },
+ "VnfRepo": {
+ "vnfRepoPort": "8702",
+ "vnfRepoHost": "10.0.14.1"
+ }
+ },
+ "override_attributes": {
+ "FE": {
+ "http_port": "8181",
+ "https_port": "9443",
+ "domain_name": "sdc"
+ },
+ "BE": {
+ "http_port": "8080",
+ "https_port": "8443",
+ "domain_name": "sdc"
+ },
+ "ONBOARDING_BE": {
+ "http_port": "8081",
+ "https_port": "8445",
+ "domain_name": "sdc",
+ "catalog_notification_url": "%s://%s:%s/sdc2/rest/v1/catalog/notif/vsp/"
+ },
+ "cassandra": {
+ "cassandra_port": 9042,
+ "concurrent_reads": "32",
+ "num_tokens": "256",
+ "data_dir": "/var/lib/cassandra/data",
+ "hinted_handoff_enabled": "true",
+ "cassandra_user": "${it.sdc.user}",
+ "cassandra_password": "${it.sdc.password}",
+ "concurrent_writes": "32",
+ "cluster_name": "${it.sdc.cluster.name}",
+ "datacenter_name": "${it.sdc.cluster.name}",
+ "multithreaded_compaction": "false",
+ "cache_dir": "/var/lib/cassandra/saved_caches",
+ "log_file": "/var/lib/cassandra/log/system.log",
+ "phi_convict_threshold": "8",
+ "commitlog_dir": "/var/lib/cassandra/commitlog",
+ "socket_read_timeout": "40000",
+ "socket_connect_timeout": "40000",
+ "janusgraph_connection_timeout": "20000",
+ "replication_factor": "1"
+ },
+ "DMAAP": {
+ "consumer": {
+ "host": "dcae-mrtr.com:3905",
+ "topic": "operationalEnvironmentEvent",
+ "serviceName": "dcae-mrtr.com:3905/events",
+ "environment": "${it.env.name}",
+ "partner": "BOT_R",
+ "username": "user1@sdc.com",
+ "password": "password=="
+ },
+ "producer": {
+ "host": "olsd004.com:3905",
+ "topic": "SDC-FACADE-NOTIF-v1 ",
+ "serviceName": "dmaap.com:3905/events",
+ "environment": "${it.env.name}",
+ "username": "user1@sdc.com",
+ "password": "password=="
+ }
+ }
+ }
+}
diff --git a/pom.xml b/pom.xml
index 5232878..2aef579 100644
--- a/pom.xml
+++ b/pom.xml
@@ -166,9 +166,9 @@
<java.driver.core.version>4.5.1</java.driver.core.version>
+ <checkstyle.skip>true</checkstyle.skip>
</properties>
-
<dependencyManagement>
<dependencies>
<dependency>
@@ -339,7 +339,7 @@
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
- <version>3.0.0</version>
+ <version>3.2.0</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
@@ -354,12 +354,12 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
- <version>3.1.0</version>
+ <version>3.2.0</version>
</plugin>
<plugin>
<groupId>io.fabric8</groupId>
<artifactId>docker-maven-plugin</artifactId>
- <version>0.26.0</version>
+ <version>0.31.0</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
@@ -573,8 +573,8 @@
<module>ui-ci</module>
<module>sdc-os-chef</module>
<module>utils/webseal-simulator</module>
+ <module>integration-tests</module>
</modules>
-
</profile>
<profile>