Add new CCSDK version of oparent
[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>2.0.0</version>
9         <relativePath/>
10     </parent>
11
12     <groupId>org.onap.ccsdk.parent</groupId>
13     <artifactId>oparent</artifactId>
14     <version>2.0.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.source>1.8</java.version.source>
54         <java.version.target>1.8</java.version.target>
55         <bundle.plugin.version>2.5.0</bundle.plugin.version>
56         <checkstyle.skip>true</checkstyle.skip>
57
58
59         <mariadb.connector.version>2.1.1</mariadb.connector.version>
60         <fasterxml.jackson.version>2.10.0</fasterxml.jackson.version>
61         <velocity.version>2.0</velocity.version>
62
63         <dmaap.listener.version>1.1.5</dmaap.listener.version>
64         <sdc.client.version>1.4.0</sdc.client.version>
65         <sdc.tosca.version>1.6.3</sdc.tosca.version>
66
67         <dependency-list.file>direct-dependencies.txt</dependency-list.file>
68
69     </properties>
70
71     <dependencyManagement>
72         <dependencies>
73             <dependency>
74                 <groupId>org.onap.ccsdk.parent</groupId>
75                 <artifactId>dependencies-bom</artifactId>
76                 <version>2.0.0-SNAPSHOT</version>
77                 <scope>import</scope>
78                 <type>pom</type>
79             </dependency>
80             <dependency>
81                 <groupId>org.onap.sdc.sdc-distribution-client</groupId>
82                 <artifactId>sdc-distribution-client</artifactId>
83                 <version>${sdc.client.version}</version>
84                 <scope>compile</scope>
85             </dependency>
86             <dependency>
87                 <groupId>org.onap.sdc.sdc-tosca</groupId>
88                 <artifactId>sdc-tosca</artifactId>
89                 <version>${sdc.tosca.version}</version>
90                 <scope>compile</scope>
91             </dependency>
92             <dependency>
93                 <groupId>org.onap.dmaap.messagerouter.dmaapclient</groupId>
94                 <artifactId>dmaapClient</artifactId>
95                 <version>${dmaap.listener.version}</version>
96             </dependency>
97             <dependency>
98                 <groupId>org.slf4j</groupId>
99                 <artifactId>slf4j-api</artifactId>
100                 <version>1.7.21</version>
101             </dependency>
102             <dependency>
103                 <groupId>org.apache.logging.log4j</groupId>
104                 <artifactId>log4j-slf4j-impl</artifactId>
105                 <version>2.11.2</version>
106             </dependency>
107             <dependency>
108                 <groupId>com.fasterxml.jackson.core</groupId>
109                 <artifactId>jackson-core</artifactId>
110                 <version>${fasterxml.jackson.version}</version>
111             </dependency>
112             <dependency>
113                 <groupId>com.fasterxml.jackson.core</groupId>
114                 <artifactId>jackson-databind</artifactId>
115                 <version>${fasterxml.jackson.version}</version>
116             </dependency>
117             <dependency>
118                 <groupId>com.fasterxml.jackson.core</groupId>
119                 <artifactId>jackson-annotations</artifactId>
120                 <version>${fasterxml.jackson.version}</version>
121             </dependency>
122             <dependency>
123                 <groupId>org.apache.velocity</groupId>
124                 <artifactId>velocity-engine-core</artifactId>
125                 <version>${velocity.version}</version>
126             </dependency>
127             <dependency>
128                 <groupId>junit</groupId>
129                 <artifactId>junit</artifactId>
130                 <version>4.12</version>
131                 <scope>test</scope>
132             </dependency>
133             <dependency>
134                 <groupId>org.mockito</groupId>
135                 <artifactId>mockito-core</artifactId>
136                 <version>1.10.19</version>
137                 <scope>test</scope>
138             </dependency>
139             <dependency>
140                 <groupId>org.testng</groupId>
141                 <artifactId>testng</artifactId>
142                 <version>6.11</version>
143                 <scope>test</scope>
144             </dependency>
145             <dependency>
146                 <groupId>ch.vorburger.mariaDB4j</groupId>
147                 <artifactId>mariaDB4j</artifactId>
148                 <version>2.2.3</version>
149                 <scope>test</scope>
150             </dependency>
151         </dependencies>
152     </dependencyManagement>
153
154     <repositories>
155         <repository>
156             <id>onap-public</id>
157             <url>https://nexus.onap.org/content/groups/public</url>
158             <releases>
159                 <enabled>true</enabled>
160                 <updatePolicy>never</updatePolicy>
161             </releases>
162             <snapshots>
163                 <enabled>true</enabled>
164                 <updatePolicy>always</updatePolicy>
165             </snapshots>
166         </repository>
167         <repository>
168             <id>onap-staging</id>
169             <url>https://nexus.onap.org/content/groups/staging</url>
170             <releases>
171                 <enabled>true</enabled>
172                 <updatePolicy>never</updatePolicy>
173             </releases>
174             <snapshots>
175                 <enabled>true</enabled>
176                 <updatePolicy>always</updatePolicy>
177             </snapshots>
178         </repository>
179         <repository>
180             <id>ecomp-release</id>
181             <name>onap-repository-releases</name>
182             <url>https://nexus.onap.org/content/repositories/releases</url>
183             <releases>
184                 <enabled>true</enabled>
185                 <updatePolicy>never</updatePolicy>
186             </releases>
187             <snapshots>
188                 <enabled>false</enabled>
189             </snapshots>
190         </repository>
191         <repository>
192             <id>ecomp-snapshot</id>
193             <name>onap-repository-snapshots</name>
194             <url>https://nexus.onap.org/content/repositories/snapshots</url>
195             <releases>
196                 <enabled>false</enabled>
197             </releases>
198             <snapshots>
199                 <enabled>true</enabled>
200             </snapshots>
201         </repository>
202     </repositories>
203
204
205     <build>
206         <pluginManagement>
207             <plugins>
208                 <plugin>
209                     <groupId>com.github.ferstl</groupId>
210                     <artifactId>depgraph-maven-plugin</artifactId>
211                     <version>3.3.0</version>
212                     <configuration>
213                         <graphFormat>text</graphFormat>
214                         <outputFileName>${dependency-list.file}</outputFileName>
215                         <outputDirectory>${project.basedir}</outputDirectory>
216                         <transitiveExcludes>*</transitiveExcludes>
217                         <showVersions>true</showVersions>
218                         <showGroupIds>true</showGroupIds>
219                     </configuration>
220                 </plugin>
221             </plugins>
222         </pluginManagement>
223         <plugins>
224             <!-- Jacoco / Sonar -->
225             <plugin>
226                 <groupId>org.jacoco</groupId>
227                 <artifactId>jacoco-maven-plugin</artifactId>
228                 <version>${jacoco.version}</version>
229                 <executions>
230                     <execution>
231                         <id>pre-unit-test</id>
232                         <goals>
233                             <goal>prepare-agent</goal>
234                         </goals>
235                         <configuration>
236                             <!-- Sets the path to the file which contains the execution data. -->
237                             <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
238                             <!-- Sets the name of the property containing the settings for JaCoCo
239                                                                  runtime agent. -->
240                             <propertyName>surefireArgLine</propertyName>
241                         </configuration>
242                     </execution>
243                     <!-- Ensures that the code coverage report for unit tests is created
244                                                  after unit tests have been run. -->
245                     <execution>
246                         <id>post-unit-test</id>
247                         <phase>test</phase>
248                         <goals>
249                             <goal>report</goal>
250                         </goals>
251                         <configuration>
252                             <!-- Sets the path to the file which contains the execution data. -->
253                             <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
254                             <!-- Sets the output directory for the code coverage report. -->
255                             <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
256                         </configuration>
257                     </execution>
258                     <execution>
259                         <id>pre-integration-test</id>
260                         <phase>pre-integration-test</phase>
261                         <goals>
262                             <goal>prepare-agent</goal>
263                         </goals>
264                         <configuration>
265                             <!-- Sets the path to the file which contains the execution data. -->
266                             <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
267                             <!-- Sets the name of the property containing the settings for JaCoCo
268                                                                  runtime agent. -->
269                             <propertyName>failsafeArgLine</propertyName>
270                         </configuration>
271                     </execution>
272                     <!-- Ensures that the code coverage report for integration tests after
273                                                  integration tests have been run. -->
274                     <execution>
275                         <id>post-integration-test</id>
276                         <phase>post-integration-test</phase>
277                         <goals>
278                             <goal>report</goal>
279                         </goals>
280                         <configuration>
281                             <!-- Sets the path to the file which contains the execution data. -->
282                             <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
283                             <!-- Sets the output directory for the code coverage report. -->
284                             <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>
285                         </configuration>
286                     </execution>
287                     <execution>
288                         <id>default-prepare-agent</id>
289                         <goals>
290                             <goal>prepare-agent</goal>
291                         </goals>
292                     </execution>
293                     <execution>
294                         <id>default-report</id>
295                         <phase>prepare-package</phase>
296                         <goals>
297                             <goal>report</goal>
298                         </goals>
299                     </execution>
300                     <execution>
301                         <id>default-check</id>
302                         <goals>
303                             <goal>check</goal>
304                         </goals>
305                         <configuration>
306                             <rules>
307                                 <rule>
308                                     <element>PACKAGE</element>
309                                     <limits>
310                                         <limit>
311                                             <counter>COMPLEXITY</counter>
312                                             <value>COVEREDRATIO</value>
313                                             <minimum>0.0</minimum>
314                                         </limit>
315                                     </limits>
316                                 </rule>
317                             </rules>
318                         </configuration>
319                     </execution>
320                 </executions>
321             </plugin>
322             <plugin>
323                 <groupId>org.codehaus.mojo</groupId>
324                 <artifactId>versions-maven-plugin</artifactId>
325                 <version>2.5</version>
326                 <configuration>
327                     <processAllModules>true</processAllModules>
328                 </configuration>
329             </plugin>
330             <plugin>
331                 <groupId>org.apache.felix</groupId>
332                 <artifactId>maven-bundle-plugin</artifactId>
333                 <version>4.2.1</version>
334                 <extensions>true</extensions>
335             </plugin>
336         </plugins>
337     </build>
338
339     <profiles>
340         <profile>
341             <id>sonar-jacoco-aggregate</id>
342             <activation>
343                 <property>
344                     <name>onap.jacoco.aggregateFile</name>
345                 </property>
346             </activation>
347             <build>
348                 <plugins>
349                     <plugin>
350                         <groupId>org.jacoco</groupId>
351                         <artifactId>jacoco-maven-plugin</artifactId>
352                         <executions>
353                             <execution>
354                                 <id>merge</id>
355                                 <goals>
356                                     <goal>merge</goal>
357                                 </goals>
358                                 <phase>generate-resources</phase>
359                                 <configuration>
360                                     <destFile>${onap.jacoco.aggregateFile}</destFile>
361                                     <fileSets>
362                                         <fileSet>
363                                             <directory>${project.basedir}</directory>
364                                             <includes>
365                                                 <include>**/target/code-coverage/*.exec</include>
366                                             </includes>
367                                         </fileSet>
368                                     </fileSets>
369                                 </configuration>
370                             </execution>
371                         </executions>
372                     </plugin>
373                 </plugins>
374             </build>
375         </profile>
376     </profiles>
377 </project>