Roll master version for Istanbul
[ccsdk/parent.git] / oparent / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <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">
3     <modelVersion>4.0.0</modelVersion>
4
5     <parent>
6         <groupId>org.onap.oparent</groupId>
7         <artifactId>oparent</artifactId>
8         <version>3.1.0</version>
9         <relativePath/>
10     </parent>
11
12     <groupId>org.onap.ccsdk.parent</groupId>
13     <artifactId>oparent</artifactId>
14     <version>2.2.0-SNAPSHOT</version>
15     <packaging>pom</packaging>
16
17     <name>ONAP :: ${project.groupId} :: ${project.artifactId}</name>
18     <description>Root POM to be used in place of oparent for CCSDK based projects</description>
19     <url>http://wiki.onap.org</url>
20     <organization>
21         <name>ONAP</name>
22     </organization>
23
24     <issueManagement>
25         <system>JIRA</system>
26         <url>https://jira.onap.org/</url>
27     </issueManagement>
28
29     <properties>
30         <!-- Sonar properties -->
31         <sonar.scanner.version>3.7.0.1746</sonar.scanner.version>
32         <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
33         <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
34         <!-- Default Sonar configuration -->
35         <sonar.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml,${project.reporting.outputDirectory}/jacoco-it/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
36         <!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
37         <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
38
39         <!-- Jacoco properties -->
40         <jacoco.version>0.8.5</jacoco.version>
41         <!-- ONAP repositories -->
42         <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
43         <onap.nexus.host>nexus.onap.org</onap.nexus.host>
44         <onap.nexus.port>443</onap.nexus.port>
45         <onap.nexus.protocol>https</onap.nexus.protocol>
46         <onap.nexus.public-url>https://nexus.onap.org/content/groups/public</onap.nexus.public-url>
47         <onap.nexus.staging-url>https://nexus.onap.org/content/groups/staging</onap.nexus.staging-url>
48         <onap.nexus.release-url>https://nexus.onap.org/content/repositories/releases</onap.nexus.release-url>
49         <onap.nexus.snapshot-url>https://nexus.onap.org/content/repositories/snapshots</onap.nexus.snapshot-url>
50         <onap.nexus.staging.server-id>ecomp-staging</onap.nexus.staging.server-id>
51         <onap.nexus.staging.profile-id>176c31dfe190a</onap.nexus.staging.profile-id>
52
53         <java.version>11</java.version>
54         <maven-surefire-plugin.version>3.0.0-M5</maven-surefire-plugin.version>
55         <maven-failsafe-plugin.version>3.0.0-M5</maven-failsafe-plugin.version>
56         <bundle.plugin.version>4.2.1</bundle.plugin.version>
57         <maven-compiler-plugin.version>3.8.1</maven-compiler-plugin.version>
58         <checkstyle.skip>true</checkstyle.skip>
59
60         <!-- CCSDK component versions -->
61         <ccsdk.cds.version>1.1.1-SNAPSHOT</ccsdk.cds.version>
62         <ccsdk.features.version>1.1.1-SNAPSHOT</ccsdk.features.version>
63         <ccsdk.sli.version>1.2.0-SNAPSHOT</ccsdk.sli.version>
64         <ccsdk.sli.core.version>${ccsdk.sli.version}</ccsdk.sli.core.version>
65         <ccsdk.sli.adaptors.version>${ccsdk.sli.version}</ccsdk.sli.adaptors.version>
66         <ccsdk.sli.northbound.version>${ccsdk.sli.version}</ccsdk.sli.northbound.version>
67         <ccsdk.sli.plugins.version>${ccsdk.sli.version}</ccsdk.sli.plugins.version>
68         <ccsdk.distribution.version>1.1.1-SNAPSHOT</ccsdk.distribution.version>
69
70         <mariadb.connector.version>2.1.1</mariadb.connector.version>
71         <fasterxml.jackson.version>2.10.0</fasterxml.jackson.version>
72         <velocity.version>2.0</velocity.version>
73
74         <dmaap.listener.version>1.1.5</dmaap.listener.version>
75         <sdc.client.version>1.4.1</sdc.client.version>
76         <sdc.tosca.version>1.6.5</sdc.tosca.version>
77
78     </properties>
79
80     <dependencyManagement>
81         <dependencies>
82             <dependency>
83                 <groupId>org.onap.ccsdk.parent</groupId>
84                 <artifactId>dependencies-bom</artifactId>
85                 <version>2.2.0-SNAPSHOT</version>
86                 <type>pom</type>
87                 <scope>import</scope>
88             </dependency>
89             <dependency>
90                 <groupId>org.springframework.boot</groupId>
91                 <artifactId>spring-boot-dependencies</artifactId>
92                 <version>2.3.8.RELEASE</version>
93                 <scope>import</scope>
94                 <type>pom</type>
95             </dependency>
96
97             <dependency>
98                 <groupId>org.onap.sdc.sdc-distribution-client</groupId>
99                 <artifactId>sdc-distribution-client</artifactId>
100                 <version>${sdc.client.version}</version>
101                 <scope>compile</scope>
102             </dependency>
103             <dependency>
104                 <groupId>org.onap.sdc.sdc-tosca</groupId>
105                 <artifactId>sdc-tosca</artifactId>
106                 <version>${sdc.tosca.version}</version>
107                 <scope>compile</scope>
108             </dependency>
109             <dependency>
110                 <groupId>org.onap.dmaap.messagerouter.dmaapclient</groupId>
111                 <artifactId>dmaapClient</artifactId>
112                 <version>${dmaap.listener.version}</version>
113             </dependency>
114         </dependencies>
115     </dependencyManagement>
116     <dependencies>
117         <dependency>
118             <groupId>javax.annotation</groupId>
119             <artifactId>javax.annotation-api</artifactId>
120             <version>1.3.2</version>
121         </dependency>
122         <dependency>
123             <groupId>junit</groupId>
124             <artifactId>junit</artifactId>
125             <scope>test</scope>
126         </dependency>
127         <dependency>
128             <groupId>org.slf4j</groupId>
129             <artifactId>slf4j-api</artifactId>
130             <scope>provided</scope>
131         </dependency>
132         <dependency>
133             <groupId>org.slf4j</groupId>
134             <artifactId>slf4j-simple</artifactId>
135             <scope>test</scope>
136         </dependency>
137
138         <dependency>
139             <groupId>org.mockito</groupId>
140             <artifactId>mockito-core</artifactId>
141             <version>1.10.19</version>
142             <scope>test</scope>
143         </dependency>
144         <dependency>
145             <groupId>org.testng</groupId>
146             <artifactId>testng</artifactId>
147             <version>6.11</version>
148             <scope>test</scope>
149         </dependency>
150     </dependencies>
151
152     <repositories>
153         <repository>
154             <id>onap-public</id>
155             <url>https://nexus.onap.org/content/groups/public</url>
156             <releases>
157                 <enabled>true</enabled>
158                 <updatePolicy>never</updatePolicy>
159             </releases>
160             <snapshots>
161                 <enabled>true</enabled>
162                 <updatePolicy>always</updatePolicy>
163             </snapshots>
164         </repository>
165         <repository>
166             <id>onap-staging</id>
167             <url>https://nexus.onap.org/content/groups/staging</url>
168             <releases>
169                 <enabled>true</enabled>
170                 <updatePolicy>never</updatePolicy>
171             </releases>
172             <snapshots>
173                 <enabled>true</enabled>
174                 <updatePolicy>always</updatePolicy>
175             </snapshots>
176         </repository>
177         <repository>
178             <id>ecomp-release</id>
179             <name>onap-repository-releases</name>
180             <url>https://nexus.onap.org/content/repositories/releases</url>
181             <releases>
182                 <enabled>true</enabled>
183                 <updatePolicy>never</updatePolicy>
184             </releases>
185             <snapshots>
186                 <enabled>false</enabled>
187             </snapshots>
188         </repository>
189         <repository>
190             <id>ecomp-snapshot</id>
191             <name>onap-repository-snapshots</name>
192             <url>https://nexus.onap.org/content/repositories/snapshots</url>
193             <releases>
194                 <enabled>false</enabled>
195             </releases>
196             <snapshots>
197                 <enabled>true</enabled>
198             </snapshots>
199         </repository>
200     </repositories>
201
202     <build>
203         <pluginManagement>
204             <plugins>
205                 <plugin>
206                     <groupId>org.apache.maven.plugins</groupId>
207                     <artifactId>maven-deploy-plugin</artifactId>
208                     <!-- This version supports the "deployAtEnd" parameter -->
209                     <version>2.8</version>
210                     <configuration>
211                         <skip/>
212                         <deployAtEnd>true</deployAtEnd>
213                     </configuration>
214                  </plugin>
215                  <plugin>
216                     <groupId>org.apache.maven.plugins</groupId>
217                     <artifactId>maven-compiler-plugin</artifactId>
218                     <version>${maven-compiler-plugin.version}</version>
219                     <configuration>
220                         <release>${java.version}</release>
221                         <!--explicitly remove source and target-->
222                         <source combine.self="override"/>
223                         <target combine.self="override"/>
224                     </configuration>
225                 </plugin>
226                 <plugin>
227                     <groupId>org.apache.maven.plugins</groupId>
228                     <artifactId>maven-resources-plugin</artifactId>
229                     <version>3.2.0</version>
230                 </plugin>
231                 <plugin>
232                     <groupId>org.antlr</groupId>
233                     <artifactId>antlr4-maven-plugin</artifactId>
234                     <version>4.7.2</version>
235                 </plugin>
236             </plugins>
237         </pluginManagement>
238         <plugins>
239             <!-- Jacoco / Sonar -->
240             <plugin>
241                 <groupId>org.jacoco</groupId>
242                 <artifactId>jacoco-maven-plugin</artifactId>
243                 <version>${jacoco.version}</version>
244                 <executions>
245                     <execution>
246                         <id>pre-unit-test</id>
247                         <goals>
248                             <goal>prepare-agent</goal>
249                         </goals>
250                         <configuration>
251                             <!-- Sets the path to the file which contains the execution data. -->
252                             <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
253                             <!-- Sets the name of the property containing the settings for JaCoCo
254                                                                  runtime agent. -->
255                             <propertyName>surefireArgLine</propertyName>
256                         </configuration>
257                     </execution>
258                     <!-- Ensures that the code coverage report for unit tests is created
259                                                  after unit tests have been run. -->
260                     <execution>
261                         <id>post-unit-test</id>
262                         <phase>test</phase>
263                         <goals>
264                             <goal>report</goal>
265                         </goals>
266                         <configuration>
267                             <!-- Sets the path to the file which contains the execution data. -->
268                             <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
269                             <!-- Sets the output directory for the code coverage report. -->
270                             <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
271                         </configuration>
272                     </execution>
273                     <execution>
274                         <id>pre-integration-test</id>
275                         <phase>pre-integration-test</phase>
276                         <goals>
277                             <goal>prepare-agent</goal>
278                         </goals>
279                         <configuration>
280                             <!-- Sets the path to the file which contains the execution data. -->
281                             <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
282                             <!-- Sets the name of the property containing the settings for JaCoCo
283                                                                  runtime agent. -->
284                             <propertyName>failsafeArgLine</propertyName>
285                         </configuration>
286                     </execution>
287                     <!-- Ensures that the code coverage report for integration tests after
288                                                  integration tests have been run. -->
289                     <execution>
290                         <id>post-integration-test</id>
291                         <phase>post-integration-test</phase>
292                         <goals>
293                             <goal>report</goal>
294                         </goals>
295                         <configuration>
296                             <!-- Sets the path to the file which contains the execution data. -->
297                             <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
298                             <!-- Sets the output directory for the code coverage report. -->
299                             <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>
300                         </configuration>
301                     </execution>
302                     <execution>
303                         <id>default-prepare-agent</id>
304                         <goals>
305                             <goal>prepare-agent</goal>
306                         </goals>
307                     </execution>
308                     <execution>
309                         <id>default-report</id>
310                         <phase>prepare-package</phase>
311                         <goals>
312                             <goal>report</goal>
313                         </goals>
314                     </execution>
315                     <execution>
316                         <id>default-check</id>
317                         <goals>
318                             <goal>check</goal>
319                         </goals>
320                         <configuration>
321                             <rules>
322                                 <rule>
323                                     <element>PACKAGE</element>
324                                     <limits>
325                                         <limit>
326                                             <counter>COMPLEXITY</counter>
327                                             <value>COVEREDRATIO</value>
328                                             <minimum>0.0</minimum>
329                                         </limit>
330                                     </limits>
331                                 </rule>
332                             </rules>
333                         </configuration>
334                     </execution>
335                 </executions>
336             </plugin>
337             <plugin>
338                 <groupId>org.codehaus.mojo</groupId>
339                 <artifactId>versions-maven-plugin</artifactId>
340                 <version>2.5</version>
341                 <configuration>
342                     <processAllModules>true</processAllModules>
343                 </configuration>
344             </plugin>
345             <plugin>
346                 <groupId>org.apache.felix</groupId>
347                 <artifactId>maven-bundle-plugin</artifactId>
348                 <version>${bundle.plugin.version}</version>
349                 <extensions>true</extensions>
350             </plugin>
351             <plugin>
352                 <groupId>org.eclipse.m2e</groupId>
353                 <artifactId>lifecycle-mapping</artifactId>
354                 <version>1.0.0</version>
355                 <configuration>
356                     <lifecycleMappingMetadata>
357                         <pluginExecutions>
358                             <pluginExecution>
359                                 <pluginExecutionFilter>
360                                     <groupId>org.apache.felix</groupId>
361                                     <artifactId>maven-bundle-plugin</artifactId>
362                                     <versionRange>[1.0,)</versionRange>
363                                     <goals>
364                                         <goal>manifest</goal>
365                                     </goals>
366                                 </pluginExecutionFilter>
367                                 <action>
368                                     <execute />
369                                     <ignore />
370                                 </action>
371                             </pluginExecution>
372                         </pluginExecutions>
373                     </lifecycleMappingMetadata>
374                 </configuration>
375             </plugin>
376         </plugins>
377     </build>
378
379     <profiles>
380         <profile>
381             <id>sonar-jacoco-aggregate</id>
382             <activation>
383                 <property>
384                     <name>onap.jacoco.aggregateFile</name>
385                 </property>
386             </activation>
387             <build>
388                 <plugins>
389                     <plugin>
390                         <groupId>org.jacoco</groupId>
391                         <artifactId>jacoco-maven-plugin</artifactId>
392                         <executions>
393                             <execution>
394                                 <id>merge</id>
395                                 <goals>
396                                     <goal>merge</goal>
397                                 </goals>
398                                 <phase>generate-resources</phase>
399                                 <configuration>
400                                     <destFile>${onap.jacoco.aggregateFile}</destFile>
401                                     <fileSets>
402                                         <fileSet>
403                                             <directory>${project.basedir}</directory>
404                                             <includes>
405                                                 <include>**/target/code-coverage/*.exec</include>
406                                             </includes>
407                                         </fileSet>
408                                     </fileSets>
409                                 </configuration>
410                             </execution>
411                         </executions>
412                     </plugin>
413                 </plugins>
414             </build>
415         </profile>
416     </profiles>
417 </project>