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