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