blob: 3d00c709c61c0acc45d884c4a225345a50df024b [file] [log] [blame]
<!--
============LICENSE_START=======================================================
SDC
================================================================================
Copyright (C) 2017 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=========================================================
Modifications copyright (c) 2018-2019 Nokia
================================================================================
-->
<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-main</artifactId>
<version>1.7.0-SNAPSHOT</version>
<packaging>pom</packaging>
<name>sdc</name>
<parent>
<groupId>org.onap.oparent</groupId>
<artifactId>oparent</artifactId>
<version>2.0.0</version>
<relativePath/>
</parent>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
<tosca.datatype.version>${project.version}</tosca.datatype.version>
<!-- 3rd parties versions -->
<bean-matcher.version>0.11</bean-matcher.version>
<lang3.version>3.10</lang3.version>
<guava.version>18.0</guava.version>
<janusgraph.version>0.3.1</janusgraph.version>
<spring.version>4.3.18.RELEASE</spring.version>
<jersey-bom.version>2.27</jersey-bom.version>
<netty.version>4.1.36.Final</netty.version>
<servlet-api.version>3.1.0</servlet-api.version>
<wire-mock.version>2.26.3</wire-mock.version>
<ecomp.version>2.6.0</ecomp.version>
<cassandra.unit.version>4.3.1.0</cassandra.unit.version>
<cadi.version>2.1.8</cadi.version>
<lombok.version>1.18.12</lombok.version>
<commons-beanutils>1.9.3</commons-beanutils>
<commons-configuration>2.3</commons-configuration>
<apache-poi.version>4.1.0</apache-poi.version>
<onap.logging.version>1.6.1</onap.logging.version>
<commons.collections.version>4.1</commons.collections.version>
<ws.rs.version>2.1</ws.rs.version>
<jetty.version>9.4.18.v20190429</jetty.version>
<!-- JSON and YAML Parsing -->
<jackson.version>2.11.0</jackson.version>
<jackson-annotations.version>${jackson.version}</jackson-annotations.version>
<clearspring.version>2.1.1</clearspring.version>
<skipYamlJsonValidator>false</skipYamlJsonValidator>
<!-- Yaml for properties -->
<snakeyaml.version>1.14</snakeyaml.version>
<functionaljava.version>4.7</functionaljava.version>
<httpclient.version>4.5.3</httpclient.version>
<httpcore.version>4.4.1</httpcore.version>
<json-simple.version>1.1</json-simple.version>
<!-- Logging start -->
<!-- logback -->
<logback.version>1.2.3</logback.version>
<slf4j-api.version>1.7.25</slf4j-api.version>
<commons-codec>1.10</commons-codec>
<commons-logging>1.2</commons-logging>
<janino.version>3.0.6</janino.version>
<log4j.version>2.13.1</log4j.version>
<!-- aspects -->
<jcabi.version>0.20.1</jcabi.version>
<aspectjrt.version>1.8.4</aspectjrt.version>
<aspectj.version>1.7.4</aspectj.version>
<jcabi.maven.plugin.version>0.13.2</jcabi.maven.plugin.version>
<!-- Logging end -->
<!-- System Metrics -->
<sigar.version>1.6.4</sigar.version>
<regex.version>3.0.3</regex.version>
<!--GSON-->
<gson.version>2.3.1</gson.version>
<!--listen to file changes-->
<commons-jci-core.version>1.1</commons-jci-core.version>
<!--TESTING-->
<mockito.version>3.3.3</mockito.version>
<mockitoJupiter.version>3.3.3</mockitoJupiter.version>
<jmockit.version>1.35</jmockit.version>
<junit.version>4.12</junit.version>
<junit.platform.version>1.6.0</junit.platform.version>
<junitJupiter.version>5.6.0</junitJupiter.version>
<assertj.version>3.16.0</assertj.version>
<testng.version>6.14.3</testng.version>
<cucumber.version>5.6.0</cucumber.version>
<bean-matchers.version>0.11</bean-matchers.version>
<hamcrest.version>2.1</hamcrest.version>
<hamcrest-all.version>1.3</hamcrest-all.version>
<maven-surefire-plugin.version>2.22.2</maven-surefire-plugin.version>
<maven-jar-plugin.version>2.4</maven-jar-plugin.version>
<!-- parser-->
<sdc-tosca-parser.version>1.6.5</sdc-tosca-parser.version>
<!-- sonar -->
<sonar.projectVersion>${project.version}</sonar.projectVersion>
<sonar.nodejs.executable>${project.basedir}/node/node</sonar.nodejs.executable>
<sonar.surefire.reportsPath>${project.build.directory}/surefire-reports
</sonar.surefire.reportsPath>
<sonar.javascript.lcov.reportPaths>${project.build.directory}/code-coverage/lcov.info
</sonar.javascript.lcov.reportPaths>
<sonar.coverage.jacoco.xmlReportPaths>
${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml
</sonar.coverage.jacoco.xmlReportPaths>
<sonar.sourceEncoding>${project.build.sourceEncoding}</sonar.sourceEncoding>
<sonar.projectBaseDir>${project.basedir}</sonar.projectBaseDir>
<sonar.coverage.exclusions>pom.xml,src/test</sonar.coverage.exclusions>
<!--cassandra -->
<cassandra.driver.version>3.8.0</cassandra.driver.version>
<!-- maven central (Nexus) -->
<nexus.id.release>nexus</nexus.id.release>
<nexus.id.snapshot>nexus</nexus.id.snapshot>
<!--nexus-->
<npm.registry>https://registry.npmjs.org/</npm.registry>
<nexus.proxy>https://nexus.onap.org</nexus.proxy>
<sitePath>/content/sites/site/org/openecomp/sdc/${project.version}</sitePath>
<staging.profile.id>176c31dfe190a</staging.profile.id>
<!--maven-->
<maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
<!--docker tags-->
<docker.tag>${project.version}-${maven.build.timestamp}</docker.tag>
<!--togglz version-->
<togglz.version>2.4.1.Final</togglz.version>
<joda.time.version>2.9.9</joda.time.version>
<!--sdc-security-utils-->
<security.util.lib.version>1.6.0</security.util.lib.version>
<!--jacoco-->
<jacoco.version>0.8.5</jacoco.version>
<java.driver.core.version>4.5.1</java.driver.core.version>
<!-- Surefire parameters -->
<surefire.forkCount>1C</surefire.forkCount>
<surefire.reuseForks>true</surefire.reuseForks>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>${guava.version}</version>
</dependency>
<dependency>
<groupId>org.glassfish.jersey.ext</groupId>
<artifactId>jersey-bean-validation</artifactId>
<version>${jersey-bom.version}</version>
</dependency>
<dependency>
<groupId>org.glassfish.hk2.external</groupId>
<artifactId>asm-all-repackaged</artifactId>
<version>2.4.0</version>
</dependency>
<dependency>
<groupId>org.assertj</groupId>
<artifactId>assertj-core</artifactId>
<version>${assertj.version}</version>
</dependency>
<dependency>
<groupId>org.jmockit</groupId>
<artifactId>jmockit</artifactId>
<version>${jmockit.version}</version>
</dependency>
<dependency>
<groupId>com.github.tomakehurst</groupId>
<artifactId>wiremock-standalone</artifactId>
<version>${wire-mock.version}</version>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-java</artifactId>
<version>${cucumber.version}</version>
</dependency>
<dependency>
<groupId>io.cucumber</groupId>
<artifactId>cucumber-junit</artifactId>
<version>${cucumber.version}</version>
</dependency>
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>${lang3.version}</version>
</dependency>
<dependency>
<groupId>org.codehaus.groovy</groupId>
<artifactId>groovy</artifactId>
<version>2.4.13</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-all</artifactId>
<version>${netty.version}</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty-handler</artifactId>
<version>${netty.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<!-- must be on the classpath -->
<groupId>org.jacoco</groupId>
<artifactId>org.jacoco.agent</artifactId>
<classifier>runtime</classifier>
<version>${jacoco.version}</version>
<scope>test</scope>
</dependency>
<!--JUnit Jupiter Engine to depend on the JUnit5 engine and JUnit 5 API -->
<dependency>
<groupId>org.junit.jupiter</groupId>
<artifactId>junit-jupiter-engine</artifactId>
<version>${junitJupiter.version}</version>
<scope>test</scope>
</dependency>
<!--JUnit Jupiter Engine to depend on the JUnit4 engine and JUnit 4 API -->
<dependency>
<groupId>org.junit.vintage</groupId>
<artifactId>junit-vintage-engine</artifactId>
<version>${junitJupiter.version}</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<version>${mockito.version}</version>
<scope>test</scope>
</dependency>
</dependencies>
<reporting>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId>
<version>3.0.1</version>
<configuration>
<failOnError>false</failOnError>
<doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
<docletArtifact>
<groupId>org.umlgraph</groupId>
<artifactId>umlgraph</artifactId>
<version>5.6</version>
</docletArtifact>
<useStandardDocletOptions>true</useStandardDocletOptions>
</configuration>
</plugin>
</plugins>
</reporting>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>${jacoco.version}</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-assembly-plugin</artifactId>
<version>3.1.0</version>
<configuration>
<tarLongFileMode>posix</tarLongFileMode>
</configuration>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>exec-maven-plugin</artifactId>
<version>1.6.0</version>
</plugin>
<plugin>
<groupId>org.sonarsource.scanner.maven</groupId>
<artifactId>sonar-maven-plugin</artifactId>
<version>3.7.0.1746</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-clean-plugin</artifactId>
<version>3.1.0</version>
</plugin>
<plugin>
<groupId>ru.yaal.maven</groupId>
<artifactId>write-text-files-maven-plugin</artifactId>
<version>1.1</version>
</plugin>
<plugin>
<groupId>org.codehaus.gmaven</groupId>
<artifactId>gmaven-plugin</artifactId>
<version>1.5</version>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<version>3.2.0</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.8.2</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.1.1</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>3.2.0</version>
</plugin>
<plugin>
<groupId>io.fabric8</groupId>
<artifactId>docker-maven-plugin</artifactId>
<version>0.31.0</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>3.2.2</version>
</plugin>
<plugin>
<groupId>com.github.eirslett</groupId>
<artifactId>frontend-maven-plugin</artifactId>
<version>1.8.0</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>${maven-surefire-plugin.version}</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>${maven-surefire-plugin.version}</version>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.8.0</version>
</plugin>
<plugin>
<groupId>com.github.sylvainlaurent.maven</groupId>
<artifactId>yaml-json-validator-maven-plugin</artifactId>
<version>1.0.2</version>
</plugin>
<plugin>
<groupId>pl.project13.maven</groupId>
<artifactId>git-commit-id-plugin</artifactId>
<version>4.0.0</version>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<plugin>
<artifactId>maven-checkstyle-plugin</artifactId>
<version>2.17</version>
<configuration>
<suppressionsLocation>checkstyle-suppressions.xml</suppressionsLocation>
<suppressionsFileExpression>checkstyle.suppressions.file</suppressionsFileExpression>
<skip>${checkstyle.skip}</skip>
</configuration>
</plugin>
<!-- plugin for parsing the project version -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId>
<executions>
<execution>
<id>parse-version</id>
<phase>pre-clean</phase>
<goals>
<goal>parse-version</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- Java Code Coverage -->
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<inherited>false</inherited>
<executions>
<execution>
<id>default-instrument</id>
<goals>
<goal>instrument</goal>
</goals>
</execution>
<execution>
<id>default-restore-instrumented-classes</id>
<goals>
<goal>restore-instrumented-classes</goal>
</goals>
</execution>
<execution>
<id>default-report</id>
<goals>
<goal>report</goal>
</goals>
<configuration>
<dataFile>${project.build.directory}/jacoco.exec</dataFile>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>3.7.1</version>
<dependencies>
<dependency>
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-webdav-jackrabbit</artifactId>
<version>3.0.0</version>
</dependency>
</dependencies>
</plugin>
<!-- Set the deployment repositories properties. -->
<plugin>
<groupId>org.codehaus.gmaven</groupId>
<artifactId>gmaven-plugin</artifactId>
<executions>
<execution>
<inherited>false</inherited>
<phase>integration-test</phase>
<goals>
<goal>execute</goal>
</goals>
<configuration>
<source>
pom.properties['deploy.url'] =
pom.version.contains('-SNAPSHOT') ?
project.distributionManagement.snapshotRepository.url :
project.distributionManagement.repository.url;
pom.properties['repo.id'] = pom.version.contains('-SNAPSHOT') ?
project.distributionManagement.snapshotRepository.id :
project.distributionManagement.repository.id;
</source>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.8</source>
<target>1.8</target>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<dependencies>
<dependency>
<groupId>org.apache.maven.surefire</groupId>
<artifactId>surefire-junit-platform</artifactId>
<version>${maven-surefire-plugin.version}</version>
</dependency>
</dependencies>
<configuration>
<printSummary>false</printSummary>
<systemPropertyVariables>
<jacoco-agent.destfile>${project.build.directory}/jacoco.exec</jacoco-agent.destfile>
</systemPropertyVariables>
<forkCount>${surefire.forkCount}</forkCount>
<reuseForks>${surefire.reuseForks}</reuseForks>
<parallel>methods</parallel>
</configuration>
</plugin>
<plugin>
<groupId>pl.project13.maven</groupId>
<artifactId>git-commit-id-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>revision</goal>
</goals>
</execution>
</executions>
<configuration>
<generateGitPropertiesFile>true</generateGitPropertiesFile>
<generateGitPropertiesFilename>${project.build.outputDirectory}/META-INF/git.properties
</generateGitPropertiesFilename>
<failOnNoGitDirectory>true</failOnNoGitDirectory>
<verbose>false</verbose>
<includeOnlyProperties>
<includeOnlyProperty>git.build.version</includeOnlyProperty>
<includeOnlyProperty>git.build.time</includeOnlyProperty>
<includeOnlyProperty>git.commit.id</includeOnlyProperty>
<includeOnlyProperty>git.commit.time</includeOnlyProperty>
<includeOnlyProperty>git.commit.user.name</includeOnlyProperty>
<includeOnlyProperty>git.commit.user.email</includeOnlyProperty>
<includeOnlyProperty>git.commit.message.short</includeOnlyProperty>
<includeOnlyProperty>git.commit.message.full</includeOnlyProperty>
</includeOnlyProperties>
<gitDescribe>
<skip>true</skip>
</gitDescribe>
<useNativeGit>false</useNativeGit>
</configuration>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>all</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<properties>
<checkstyle.skip>true</checkstyle.skip>
</properties>
<modules>
<module>onboarding</module>
<module>common-app-logging</module>
<module>common-app-api</module>
<module>common-be</module>
<module>catalog-dao</module>
<module>catalog-model</module>
<module>catalog-be</module>
<module>catalog-be-plugins</module>
<module>asdctool</module>
<module>catalog-ui</module>
<module>catalog-fe</module>
<module>sdc-os-chef</module>
<module>utils/webseal-simulator</module>
<module>integration-tests</module>
</modules>
</profile>
<profile>
<id>skip-integration-tests</id>
<activation>
<property>
<name>skipITs</name>
<value>true</value>
</property>
</activation>
<properties>
<checkstyle.skip>true</checkstyle.skip>
</properties>
<modules>
<module>onboarding</module>
<module>common-app-logging</module>
<module>common-app-api</module>
<module>common-be</module>
<module>catalog-dao</module>
<module>catalog-model</module>
<module>catalog-be</module>
<module>asdctool</module>
<module>catalog-ui</module>
<module>catalog-fe</module>
<module>sdc-os-chef</module>
<module>utils/webseal-simulator</module>
</modules>
</profile>
<profile>
<id>fast-build</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<properties>
<maven.test.skip>true</maven.test.skip>
<skipYamlJsonValidator>true</skipYamlJsonValidator>
<checkstyle.skip>true</checkstyle.skip>
<jacoco.skip>true</jacoco.skip>
</properties>
<modules>
<module>onboarding</module>
<module>common-app-logging</module>
<module>common-app-api</module>
<module>common-be</module>
<module>catalog-be-plugins</module>
<module>catalog-dao</module>
<module>catalog-model</module>
<module>catalog-be</module>
<module>asdctool</module>
<module>catalog-ui</module>
<module>catalog-fe</module>
<module>sdc-os-chef</module>
<module>utils/webseal-simulator</module>
</modules>
</profile>
<profile>
<id>start-sdc</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<properties>
<maven.test.skip>true</maven.test.skip>
<skipYamlJsonValidator>true</skipYamlJsonValidator>
<checkstyle.skip>true</checkstyle.skip>
<jacoco.skip>true</jacoco.skip>
<docker.keepRunning>true</docker.keepRunning>
</properties>
<modules>
<module>integration-tests</module>
</modules>
</profile>
<profile>
<id>stop-sdc</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<properties>
<maven.test.skip>true</maven.test.skip>
<skipYamlJsonValidator>true</skipYamlJsonValidator>
<checkstyle.skip>true</checkstyle.skip>
<jacoco.skip>true</jacoco.skip>
<docker.skip.run>true</docker.skip.run>
</properties>
<modules>
<module>integration-tests</module>
</modules>
</profile>
<profile>
<id>run-integration-tests</id>
<activation>
<activeByDefault>false</activeByDefault>
</activation>
<properties>
<skipYamlJsonValidator>true</skipYamlJsonValidator>
<checkstyle.skip>true</checkstyle.skip>
<docker.skip>true</docker.skip>
</properties>
<modules>
<module>integration-tests</module>
</modules>
</profile>
</profiles>
<repositories>
<!-- LF repositories -->
<repository>
<id>ecomp-releases</id>
<name>Release Repository</name>
<url>${nexus.proxy}/content/repositories/releases/</url>
</repository>
<repository>
<id>ecomp-snapshots</id>
<name>Snapshots Repository</name>
<url>${nexus.proxy}/content/repositories/snapshots/</url>
</repository>
<repository>
<id>ecomp-public</id>
<name>Public Repository</name>
<url>${nexus.proxy}/content/repositories/public/</url>
</repository>
<!-- LF repositories END-->
</repositories>
<distributionManagement>
<repository>
<id>ecomp-releases</id>
<name>Release Repository</name>
<url>${nexus.proxy}/content/repositories/releases/</url>
</repository>
<snapshotRepository>
<id>ecomp-snapshots</id>
<name>Snapshot Repository</name>
<url>${nexus.proxy}/content/repositories/snapshots/</url>
</snapshotRepository>
<site>
<id>ecomp-site</id>
<url>dav:${nexus.proxy}${sitePath}</url>
</site>
</distributionManagement>
</project>