blob: 545b686f41e203e7b4f46d0396575cac1981983e [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<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>
<parent>
<groupId>org.onap.oparent</groupId>
<artifactId>oparent</artifactId>
<version>3.3.1</version>
<relativePath/>
</parent>
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>oparent</artifactId>
<version>2.5.6-SNAPSHOT</version>
<packaging>pom</packaging>
<name>ONAP :: ${project.groupId} :: ${project.artifactId}</name>
<description>Root POM to be used in place of oparent for CCSDK based projects</description>
<url>http://wiki.onap.org</url>
<organization>
<name>ONAP</name>
</organization>
<issueManagement>
<system>JIRA</system>
<url>https://jira.onap.org/</url>
</issueManagement>
<distributionManagement>
<repository>
<id>ecomp-releases</id>
<url>${onap.nexus.release-url}</url>
</repository>
<snapshotRepository>
<id>ecomp-snapshots</id>
<url>${onap.nexus.snapshot-url}</url>
</snapshotRepository>
</distributionManagement>
<properties>
<!-- Sonar properties -->
<sonar.scanner.version>3.7.0.1746</sonar.scanner.version>
<sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
<sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
<!-- Default Sonar configuration -->
<sonar.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml,${project.reporting.outputDirectory}/jacoco-it/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
<!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
<sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
<!-- Jacoco properties -->
<jacoco.version>0.8.8</jacoco.version>
<!-- ONAP repositories -->
<onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
<onap.nexus.host>nexus.onap.org</onap.nexus.host>
<onap.nexus.port>443</onap.nexus.port>
<onap.nexus.protocol>https</onap.nexus.protocol>
<onap.nexus.public-url>https://nexus.onap.org/content/groups/public</onap.nexus.public-url>
<onap.nexus.staging-url>https://nexus.onap.org/content/groups/staging</onap.nexus.staging-url>
<onap.nexus.release-url>https://nexus.onap.org/content/repositories/releases</onap.nexus.release-url>
<onap.nexus.snapshot-url>https://nexus.onap.org/content/repositories/snapshots</onap.nexus.snapshot-url>
<onap.nexus.staging.server-id>ecomp-staging</onap.nexus.staging.server-id>
<onap.nexus.staging.profile-id>176c31dfe190a</onap.nexus.staging.profile-id>
<java.version>17</java.version>
<maven-surefire-plugin.version>3.0.0-M8</maven-surefire-plugin.version>
<maven-failsafe-plugin.version>3.0.0-M8</maven-failsafe-plugin.version>
<bundle.plugin.version>5.1.1</bundle.plugin.version>
<maven-compiler-plugin.version>3.10.1</maven-compiler-plugin.version>
<checkstyle.skip>true</checkstyle.skip>
<logback.version>1.2.11</logback.version>
<!-- CCSDK component versions -->
<ccsdk.cds.version>(1.4.9999, 1.5.99999-SNAPSHOT]</ccsdk.cds.version>
<ccsdk.features.version>(1.4.99999, 1.5.99999-SNAPSHOT]</ccsdk.features.version>
<ccsdk.sli.version>(1.5.99999, 1.6.99999-SNAPSHOT]</ccsdk.sli.version>
<ccsdk.sli.core.version>${ccsdk.sli.version}</ccsdk.sli.core.version>
<ccsdk.sli.adaptors.version>${ccsdk.sli.version}</ccsdk.sli.adaptors.version>
<ccsdk.sli.northbound.version>${ccsdk.sli.version}</ccsdk.sli.northbound.version>
<ccsdk.sli.plugins.version>${ccsdk.sli.version}</ccsdk.sli.plugins.version>
<ccsdk.distribution.version>(1.4.9999, 1.5.99999-SNAPSHOT]</ccsdk.distribution.version>
<log4j.version>2.17.1</log4j.version>
<log4j2.version>2.17.1</log4j2.version>
<mariadb.connector.version>2.7.5</mariadb.connector.version>
<fasterxml.jackson.version>2.10.5</fasterxml.jackson.version>
<velocity.version>2.3</velocity.version>
<dmaap.listener.version>1.1.14</dmaap.listener.version>
<sdc.client.version>2.0.0</sdc.client.version>
<sdc.tosca.version>1.6.5</sdc.tosca.version>
<antlr.version>4.8-1</antlr.version>
</properties>
<dependencyManagement>
<dependencies>
<dependency>
<!-- keep groupId and version as plain and not as var,
otherwise ccsdk/distribution/dependencies is not resolving correctly -->
<groupId>org.onap.ccsdk.parent</groupId>
<artifactId>dependencies-bom</artifactId>
<version>2.5.6-SNAPSHOT</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-dependencies</artifactId>
<version>2.3.8.RELEASE</version>
<type>pom</type>
<scope>import</scope>
</dependency>
<dependency>
<groupId>org.antlr</groupId>
<artifactId>antlr4-runtime</artifactId>
<version>${antlr.version}</version>
</dependency>
<dependency>
<groupId>org.mariadb.jdbc</groupId>
<artifactId>mariadb-java-client</artifactId>
<version>${mariadb.connector.version}</version>
</dependency>
<dependency>
<groupId>org.onap.sdc.sdc-distribution-client</groupId>
<artifactId>sdc-distribution-client</artifactId>
<version>${sdc.client.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.onap.sdc.sdc-tosca</groupId>
<artifactId>sdc-tosca</artifactId>
<version>${sdc.tosca.version}</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>org.onap.dmaap.messagerouter.dmaapclient</groupId>
<artifactId>dmaapClient</artifactId>
<version>${dmaap.listener.version}</version>
</dependency>
</dependencies>
</dependencyManagement>
<dependencies>
<dependency>
<groupId>javax.annotation</groupId>
<artifactId>javax.annotation-api</artifactId>
<version>1.3.2</version>
</dependency>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-simple</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.mockito</groupId>
<artifactId>mockito-core</artifactId>
<version>3.12.4</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.testng</groupId>
<artifactId>testng</artifactId>
<version>6.11</version>
<scope>test</scope>
</dependency>
</dependencies>
<repositories>
<repository>
<id>onap-public</id>
<url>${onap.nexus.public-url}</url>
<releases>
<enabled>true</enabled>
<updatePolicy>never</updatePolicy>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</repository>
<repository>
<id>onap-staging</id>
<url>${onap.nexus.staging-url}</url>
<releases>
<enabled>true</enabled>
<updatePolicy>never</updatePolicy>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</repository>
<repository>
<id>ecomp-release</id>
<name>onap-repository-releases</name>
<url>${onap.nexus.release-url}</url>
<releases>
<enabled>true</enabled>
<updatePolicy>never</updatePolicy>
</releases>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<repository>
<id>ecomp-snapshot</id>
<name>onap-repository-snapshots</name>
<url>${onap.nexus.snapshot-url}</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</repository>
</repositories>
<pluginRepositories>
<pluginRepository>
<id>onap-public</id>
<url>${onap.nexus.public-url}</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
<pluginRepository>
<id>onap-staging</id>
<url>${onap.nexus.staging-url}</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
<pluginRepository>
<id>onap-snapshot</id>
<url>${onap.nexus.snapshot-url}</url>
<releases>
<enabled>false</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
</snapshots>
</pluginRepository>
<!-- Black Duck plugin dependencies -->
<pluginRepository>
<id>JCenter</id>
<name>JCenter Repository</name>
<url>http://jcenter.bintray.com</url>
</pluginRepository>
<pluginRepository>
<id>Restlet</id>
<name>Restlet Repository</name>
<url>http://maven.restlet.com</url>
</pluginRepository>
</pluginRepositories>
<build>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<!-- This version supports the "deployAtEnd" parameter -->
<version>2.8</version>
<configuration>
<skip/>
<deployAtEnd>true</deployAtEnd>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-compiler-plugin</artifactId>
<version>${maven-compiler-plugin.version}</version>
<configuration>
<release>${java.version}</release>
<!--explicitly remove source and target-->
<source combine.self="override"/>
<target combine.self="override"/>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<version>3.2.0</version>
</plugin>
<plugin>
<groupId>org.antlr</groupId>
<artifactId>antlr4-maven-plugin</artifactId>
<version>${antlr.version}</version>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<!-- Jacoco / Sonar -->
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<version>${jacoco.version}</version>
<executions>
<execution>
<id>pre-unit-test</id>
<goals>
<goal>prepare-agent</goal>
</goals>
<configuration>
<!-- Sets the path to the file which contains the execution data. -->
<destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
<!-- Sets the name of the property containing the settings for JaCoCo runtime agent. -->
<propertyName>surefireArgLine</propertyName>
</configuration>
</execution>
<!-- Ensures that the code coverage report for unit tests is created after unit tests have been run. -->
<execution>
<id>post-unit-test</id>
<phase>test</phase>
<goals>
<goal>report</goal>
</goals>
<configuration>
<!-- Sets the path to the file which contains the execution data. -->
<dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
<!-- Sets the output directory for the code coverage report. -->
<outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
</configuration>
</execution>
<execution>
<id>pre-integration-test</id>
<phase>pre-integration-test</phase>
<goals>
<goal>prepare-agent</goal>
</goals>
<configuration>
<!-- Sets the path to the file which contains the execution data. -->
<destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
<!-- Sets the name of the property containing the settings for JaCoCo runtime agent. -->
<propertyName>failsafeArgLine</propertyName>
</configuration>
</execution>
<!-- Ensures that the code coverage report for integration tests after integration tests have been run. -->
<execution>
<id>post-integration-test</id>
<phase>post-integration-test</phase>
<goals>
<goal>report</goal>
</goals>
<configuration>
<!-- Sets the path to the file which contains the execution data. -->
<dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
<!-- Sets the output directory for the code coverage report. -->
<outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>
</configuration>
</execution>
<execution>
<id>default-prepare-agent</id>
<goals>
<goal>prepare-agent</goal>
</goals>
</execution>
<execution>
<id>default-report</id>
<phase>prepare-package</phase>
<goals>
<goal>report</goal>
</goals>
</execution>
<execution>
<id>default-check</id>
<goals>
<goal>check</goal>
</goals>
<configuration>
<rules>
<rule>
<element>PACKAGE</element>
<limits>
<limit>
<counter>COMPLEXITY</counter>
<value>COVEREDRATIO</value>
<minimum>0.0</minimum>
</limit>
</limits>
</rule>
</rules>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>versions-maven-plugin</artifactId>
<version>2.5</version>
<configuration>
<processAllModules>true</processAllModules>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<version>${bundle.plugin.version}</version>
<extensions>true</extensions>
</plugin>
<plugin>
<groupId>org.eclipse.m2e</groupId>
<artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version>
<configuration>
<lifecycleMappingMetadata>
<pluginExecutions>
<pluginExecution>
<pluginExecutionFilter>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<versionRange>[1.0,)</versionRange>
<goals>
<goal>manifest</goal>
</goals>
</pluginExecutionFilter>
<action>
<execute />
<ignore />
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>sonar-jacoco-aggregate</id>
<activation>
<property>
<name>onap.jacoco.aggregateFile</name>
</property>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.jacoco</groupId>
<artifactId>jacoco-maven-plugin</artifactId>
<executions>
<execution>
<id>merge</id>
<goals>
<goal>merge</goal>
</goals>
<phase>generate-resources</phase>
<configuration>
<destFile>${onap.jacoco.aggregateFile}</destFile>
<fileSets>
<fileSet>
<directory>${project.basedir}</directory>
<includes>
<include>**/target/code-coverage/*.exec</include>
</includes>
</fileSet>
</fileSets>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>