blob: a4a6e9099de43a92a219e7e73e3a2e57c95df726 [file] [log] [blame]
<!--
============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>