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