Prepare for Junit5
[sdc.git] / pom.xml
1 <!--
2 ============LICENSE_START=======================================================
3 SDC
4 ================================================================================
5 Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6 ================================================================================
7 Licensed under the Apache License, Version 2.0 (the "License");
8 you may not use this file except in compliance with the License.
9 You may obtain a copy of the License at
10         *
11      http://www.apache.org/licenses/LICENSE-2.0
12         *
13 Unless required by applicable law or agreed to in writing, software
14 distributed under the License is distributed on an "AS IS" BASIS,
15 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 See the License for the specific language governing permissions and
17 limitations under the License.
18 ============LICENSE_END=========================================================
19 Modifications copyright (c) 2018-2019 Nokia
20 ================================================================================
21 -->
22 <project xmlns="http://maven.apache.org/POM/4.0.0"
23   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
24   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
25   <modelVersion>4.0.0</modelVersion>
26
27   <groupId>org.openecomp.sdc</groupId>
28   <artifactId>sdc-main</artifactId>
29   <version>1.7.0-SNAPSHOT</version>
30   <packaging>pom</packaging>
31   <name>sdc</name>
32
33   <parent>
34     <groupId>org.onap.oparent</groupId>
35     <artifactId>oparent</artifactId>
36     <version>2.0.0</version>
37     <relativePath/>
38   </parent>
39
40   <properties>
41     <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
42
43     <tosca.datatype.version>${project.version}</tosca.datatype.version>
44
45     <!-- 3rd parties versions -->
46     <bean-matcher.version>0.11</bean-matcher.version>
47     <lang3.version>3.3.2</lang3.version>
48     <guava.version>18.0</guava.version>
49     <janusgraph.version>0.3.1</janusgraph.version>
50     <spring.version>4.3.18.RELEASE</spring.version>
51     <jersey-bom.version>2.27</jersey-bom.version>
52     <netty.version>4.1.36.Final</netty.version>
53     <servlet-api.version>3.1.0</servlet-api.version>
54     <wire-mock.version>2.18.0</wire-mock.version>
55     <ecomp.version>2.6.0</ecomp.version>
56     <cassandra.unit.version>4.3.1.0</cassandra.unit.version>
57     <cadi.version>2.1.8</cadi.version>
58     <lombok.version>1.18.12</lombok.version>
59     <commons-beanutils>1.9.3</commons-beanutils>
60     <commons-configuration>2.3</commons-configuration>
61     <apache-poi.version>4.1.0</apache-poi.version>
62     <onap.logging.version>1.6.1</onap.logging.version>
63
64     <commons.collections.version>4.1</commons.collections.version>
65     <ws.rs.version>2.0.1</ws.rs.version>
66
67     <jetty.version>9.4.18.v20190429</jetty.version>
68
69     <!-- JSON and YAML Parsing -->
70     <jackson.version>2.9.9</jackson.version>
71     <jackson-annotations.version>2.9.9</jackson-annotations.version>
72     <jackson.mapper.version>1.9.13</jackson.mapper.version>
73     <clearspring.version>2.1.1</clearspring.version>
74
75     <!-- Yaml for properties -->
76     <snakeyaml.version>1.14</snakeyaml.version>
77     <functionaljava.version>4.7</functionaljava.version>
78     <httpclient.version>4.5.3</httpclient.version>
79     <httpcore.version>4.4.1</httpcore.version>
80     <json-simple.version>1.1</json-simple.version>
81
82     <!-- Logging start -->
83     <!-- logback -->
84     <logback.version>1.2.3</logback.version>
85     <slf4j-api.version>1.7.25</slf4j-api.version>
86     <commons-codec>1.10</commons-codec>
87     <commons-logging>1.2</commons-logging>
88     <janino.version>3.0.6</janino.version>
89
90     <!-- aspects -->
91     <jcabi.version>0.20.1</jcabi.version>
92     <aspectjrt.version>1.8.4</aspectjrt.version>
93     <aspectj.version>1.7.4</aspectj.version>
94     <jcabi.maven.plugin.version>0.13.2</jcabi.maven.plugin.version>
95
96     <!-- Logging end -->
97     <!-- System Metrics -->
98     <sigar.version>1.6.4</sigar.version>
99
100     <regex.version>3.0.3</regex.version>
101
102     <!--GSON-->
103     <gson.version>2.3.1</gson.version>
104
105     <!--listen to file changes-->
106     <commons-jci-core.version>1.1</commons-jci-core.version>
107
108     <!--TESTING-->
109     <powermock.version>2.0.7</powermock.version>
110     <mockito.version>3.3.3</mockito.version>
111     <mockitoJupiter.version>3.3.3</mockitoJupiter.version>
112     <jmockit.version>1.35</jmockit.version>
113     <junit.version>4.12</junit.version>
114     <junit.platform.version>1.6.0</junit.platform.version>
115     <junitJupiter.version>5.6.0</junitJupiter.version>
116     <assertj.version>3.10.0</assertj.version>
117     <testng.version>6.14.3</testng.version>
118     <cucumber.version>5.6.0</cucumber.version>
119     <bean-matchers.version>0.11</bean-matchers.version>
120     <hamcrest.version>2.1</hamcrest.version>
121     <hamcrest-all.version>1.3</hamcrest-all.version>
122     <maven-surefire-plugin.version>2.22.2</maven-surefire-plugin.version>
123     <maven-jar-plugin.version>2.4</maven-jar-plugin.version>
124
125     <!-- parser-->
126     <sdc-tosca-parser.version>1.6.5</sdc-tosca-parser.version>
127
128     <!-- sonar -->
129     <sonar.projectVersion>${project.version}</sonar.projectVersion>
130     <sonar.nodejs.executable>${project.basedir}/node/node</sonar.nodejs.executable>
131     <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports
132     </sonar.surefire.reportsPath>
133     <sonar.javascript.lcov.reportPaths>${project.build.directory}/code-coverage/lcov.info
134     </sonar.javascript.lcov.reportPaths>
135     <sonar.coverage.jacoco.xmlReportPaths>
136       ${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml
137     </sonar.coverage.jacoco.xmlReportPaths>
138     <sonar.sourceEncoding>${project.build.sourceEncoding}</sonar.sourceEncoding>
139     <sonar.projectBaseDir>${project.basedir}</sonar.projectBaseDir>
140     <sonar.coverage.exclusions>pom.xml,src/test</sonar.coverage.exclusions>
141     <!--cassandra -->
142     <cassandra.driver.version>3.8.0</cassandra.driver.version>
143     <!-- maven central (Nexus) -->
144     <nexus.id.release>nexus</nexus.id.release>
145     <nexus.id.snapshot>nexus</nexus.id.snapshot>
146
147     <!--nexus-->
148     <npm.registry>https://nexus3.onap.org/repository/npm.public/</npm.registry>
149     <nexus.proxy>https://nexus.onap.org</nexus.proxy>
150     <sitePath>/content/sites/site/org/openecomp/sdc/${project.version}</sitePath>
151     <staging.profile.id>176c31dfe190a</staging.profile.id>
152     <!--maven-->
153     <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
154     <!--docker tags-->
155     <docker.tag>${project.version}-${maven.build.timestamp}</docker.tag>
156     <!--togglz version-->
157     <togglz.version>2.4.1.Final</togglz.version>
158
159     <joda.time.version>2.9.9</joda.time.version>
160
161     <!--sdc-security-utils-->
162     <security.util.lib.version>1.6.0</security.util.lib.version>
163     <!--jacoco-->
164     <jacoco.version>0.8.5</jacoco.version>
165
166     <java.driver.core.version>4.5.1</java.driver.core.version>
167
168   </properties>
169
170
171   <dependencyManagement>
172     <dependencies>
173       <dependency>
174         <groupId>com.google.guava</groupId>
175         <artifactId>guava</artifactId>
176         <version>${guava.version}</version>
177       </dependency>
178
179       <dependency>
180         <groupId>org.glassfish.jersey.ext</groupId>
181         <artifactId>jersey-bean-validation</artifactId>
182         <version>${jersey-bom.version}</version>
183       </dependency>
184
185       <dependency>
186         <groupId>org.glassfish.hk2.external</groupId>
187         <artifactId>asm-all-repackaged</artifactId>
188         <version>2.4.0</version>
189       </dependency>
190
191       <dependency>
192         <groupId>org.assertj</groupId>
193         <artifactId>assertj-core</artifactId>
194         <version>${assertj.version}</version>
195       </dependency>
196
197       <dependency>
198         <groupId>org.mockito</groupId>
199         <artifactId>mockito-core</artifactId>
200         <version>${mockito.version}</version>
201       </dependency>
202
203       <dependency>
204         <groupId>org.jmockit</groupId>
205         <artifactId>jmockit</artifactId>
206         <version>${jmockit.version}</version>
207       </dependency>
208
209
210       <dependency>
211         <groupId>com.github.tomakehurst</groupId>
212         <artifactId>wiremock-standalone</artifactId>
213         <version>${wire-mock.version}</version>
214       </dependency>
215
216       <dependency>
217         <groupId>io.cucumber</groupId>
218         <artifactId>cucumber-java</artifactId>
219         <version>${cucumber.version}</version>
220       </dependency>
221
222       <dependency>
223         <groupId>io.cucumber</groupId>
224         <artifactId>cucumber-junit</artifactId>
225         <version>${cucumber.version}</version>
226       </dependency>
227
228       <dependency>
229         <groupId>org.apache.commons</groupId>
230         <artifactId>commons-lang3</artifactId>
231         <version>${lang3.version}</version>
232       </dependency>
233       <dependency>
234         <groupId>org.codehaus.groovy</groupId>
235         <artifactId>groovy</artifactId>
236         <version>2.4.13</version>
237       </dependency>
238       <dependency>
239         <groupId>io.netty</groupId>
240         <artifactId>netty-all</artifactId>
241         <version>${netty.version}</version>
242       </dependency>
243       <dependency>
244         <groupId>io.netty</groupId>
245         <artifactId>netty-handler</artifactId>
246         <version>${netty.version}</version>
247       </dependency>
248     </dependencies>
249   </dependencyManagement>
250
251   <dependencies>
252     <dependency>
253       <!-- must be on the classpath -->
254       <groupId>org.jacoco</groupId>
255       <artifactId>org.jacoco.agent</artifactId>
256       <classifier>runtime</classifier>
257       <version>${jacoco.version}</version>
258       <scope>test</scope>
259     </dependency>
260   </dependencies>
261
262   <reporting>
263     <plugins>
264       <plugin>
265         <groupId>org.apache.maven.plugins</groupId>
266         <artifactId>maven-javadoc-plugin</artifactId>
267         <version>3.0.1</version>
268         <configuration>
269           <failOnError>false</failOnError>
270           <doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
271           <docletArtifact>
272             <groupId>org.umlgraph</groupId>
273             <artifactId>umlgraph</artifactId>
274             <version>5.6</version>
275           </docletArtifact>
276           <useStandardDocletOptions>true</useStandardDocletOptions>
277         </configuration>
278       </plugin>
279     </plugins>
280   </reporting>
281
282   <build>
283     <pluginManagement>
284       <plugins>
285         <plugin>
286           <groupId>org.jacoco</groupId>
287           <artifactId>jacoco-maven-plugin</artifactId>
288           <version>${jacoco.version}</version>
289         </plugin>
290         <plugin>
291           <groupId>org.apache.maven.plugins</groupId>
292           <artifactId>maven-assembly-plugin</artifactId>
293           <version>3.1.0</version>
294           <configuration>
295             <tarLongFileMode>posix</tarLongFileMode>
296           </configuration>
297         </plugin>
298
299         <plugin>
300           <groupId>org.codehaus.mojo</groupId>
301           <artifactId>exec-maven-plugin</artifactId>
302           <version>1.6.0</version>
303         </plugin>
304         <plugin>
305           <groupId>org.sonarsource.scanner.maven</groupId>
306           <artifactId>sonar-maven-plugin</artifactId>
307           <version>3.7.0.1746</version>
308         </plugin>
309         <plugin>
310           <groupId>org.apache.maven.plugins</groupId>
311           <artifactId>maven-clean-plugin</artifactId>
312           <version>3.1.0</version>
313         </plugin>
314         <plugin>
315           <groupId>ru.yaal.maven</groupId>
316           <artifactId>write-text-files-maven-plugin</artifactId>
317           <version>1.1</version>
318         </plugin>
319         <plugin>
320           <groupId>org.codehaus.gmaven</groupId>
321           <artifactId>gmaven-plugin</artifactId>
322           <version>1.5</version>
323         </plugin>
324         <plugin>
325           <groupId>org.codehaus.mojo</groupId>
326           <artifactId>build-helper-maven-plugin</artifactId>
327           <version>3.0.0</version>
328         </plugin>
329         <plugin>
330           <groupId>org.apache.maven.plugins</groupId>
331           <artifactId>maven-deploy-plugin</artifactId>
332           <version>2.8.2</version>
333         </plugin>
334         <plugin>
335           <groupId>org.apache.maven.plugins</groupId>
336           <artifactId>maven-shade-plugin</artifactId>
337           <version>3.1.1</version>
338         </plugin>
339         <plugin>
340           <groupId>org.apache.maven.plugins</groupId>
341           <artifactId>maven-resources-plugin</artifactId>
342           <version>3.1.0</version>
343         </plugin>
344         <plugin>
345           <groupId>io.fabric8</groupId>
346           <artifactId>docker-maven-plugin</artifactId>
347           <version>0.26.0</version>
348         </plugin>
349         <plugin>
350           <groupId>org.apache.maven.plugins</groupId>
351           <artifactId>maven-war-plugin</artifactId>
352           <version>3.2.2</version>
353         </plugin>
354         <plugin>
355           <groupId>com.github.eirslett</groupId>
356           <artifactId>frontend-maven-plugin</artifactId>
357           <version>1.8.0</version>
358         </plugin>
359         <plugin>
360           <groupId>org.apache.maven.plugins</groupId>
361           <artifactId>maven-surefire-plugin</artifactId>
362           <version>${maven-surefire-plugin.version}</version>
363         </plugin>
364         <plugin>
365           <groupId>org.apache.maven.plugins</groupId>
366           <artifactId>maven-failsafe-plugin</artifactId>
367           <version>${maven-surefire-plugin.version}</version>
368         </plugin>
369         <plugin>
370           <groupId>org.apache.maven.plugins</groupId>
371           <artifactId>maven-compiler-plugin</artifactId>
372           <version>3.8.0</version>
373         </plugin>
374         <plugin>
375           <groupId>com.github.sylvainlaurent.maven</groupId>
376           <artifactId>yaml-json-validator-maven-plugin</artifactId>
377           <version>1.0.1</version>
378         </plugin>
379         <plugin>
380           <groupId>pl.project13.maven</groupId>
381           <artifactId>git-commit-id-plugin</artifactId>
382           <version>4.0.0</version>
383         </plugin>
384       </plugins>
385     </pluginManagement>
386
387     <plugins>
388       <plugin>
389         <artifactId>maven-checkstyle-plugin</artifactId>
390         <version>2.17</version>
391         <configuration>
392           <suppressionsLocation>checkstyle-suppressions.xml</suppressionsLocation>
393           <suppressionsFileExpression>checkstyle.suppressions.file</suppressionsFileExpression>
394         </configuration>
395       </plugin>
396       <!-- plugin for parsing the project version -->
397       <plugin>
398         <groupId>org.codehaus.mojo</groupId>
399         <artifactId>build-helper-maven-plugin</artifactId>
400         <executions>
401           <execution>
402             <id>parse-version</id>
403             <phase>pre-clean</phase>
404             <goals>
405               <goal>parse-version</goal>
406             </goals>
407           </execution>
408         </executions>
409       </plugin>
410
411       <!-- Java Code Coverage -->
412       <plugin>
413         <groupId>org.jacoco</groupId>
414         <artifactId>jacoco-maven-plugin</artifactId>
415         <inherited>false</inherited>
416         <executions>
417           <execution>
418             <id>default-instrument</id>
419             <goals>
420               <goal>instrument</goal>
421             </goals>
422           </execution>
423           <execution>
424             <id>default-restore-instrumented-classes</id>
425             <goals>
426               <goal>restore-instrumented-classes</goal>
427             </goals>
428           </execution>
429           <execution>
430             <id>default-report</id>
431             <goals>
432               <goal>report</goal>
433             </goals>
434             <configuration>
435               <dataFile>${project.build.directory}/jacoco.exec</dataFile>
436             </configuration>
437           </execution>
438         </executions>
439       </plugin>
440
441       <plugin>
442         <groupId>org.apache.maven.plugins</groupId>
443         <artifactId>maven-site-plugin</artifactId>
444         <version>3.7.1</version>
445         <dependencies>
446           <dependency>
447             <groupId>org.apache.maven.wagon</groupId>
448             <artifactId>wagon-webdav-jackrabbit</artifactId>
449             <version>3.0.0</version>
450           </dependency>
451         </dependencies>
452       </plugin>
453
454       <!-- Set the deployment repositories properties. -->
455       <plugin>
456         <groupId>org.codehaus.gmaven</groupId>
457         <artifactId>gmaven-plugin</artifactId>
458         <executions>
459           <execution>
460             <inherited>false</inherited>
461             <phase>integration-test</phase>
462             <goals>
463               <goal>execute</goal>
464             </goals>
465             <configuration>
466               <source>
467                 pom.properties['deploy.url'] =
468                 pom.version.contains('-SNAPSHOT') ?
469                 project.distributionManagement.snapshotRepository.url :
470                 project.distributionManagement.repository.url;
471                 pom.properties['repo.id'] = pom.version.contains('-SNAPSHOT') ?
472                 project.distributionManagement.snapshotRepository.id :
473                 project.distributionManagement.repository.id;
474               </source>
475             </configuration>
476           </execution>
477         </executions>
478       </plugin>
479       <plugin>
480         <groupId>org.apache.maven.plugins</groupId>
481         <artifactId>maven-compiler-plugin</artifactId>
482         <configuration>
483           <source>1.8</source>
484           <target>1.8</target>
485         </configuration>
486       </plugin>
487       <plugin>
488         <groupId>org.apache.maven.plugins</groupId>
489         <artifactId>maven-surefire-plugin</artifactId>
490         <configuration>
491           <printSummary>false</printSummary>
492           <systemPropertyVariables>
493             <jacoco-agent.destfile>${project.build.directory}/jacoco.exec</jacoco-agent.destfile>
494           </systemPropertyVariables>
495         </configuration>
496       </plugin>
497       <plugin>
498         <groupId>pl.project13.maven</groupId>
499         <artifactId>git-commit-id-plugin</artifactId>
500         <executions>
501           <execution>
502             <goals>
503               <goal>revision</goal>
504             </goals>
505           </execution>
506         </executions>
507         <configuration>
508           <generateGitPropertiesFile>true</generateGitPropertiesFile>
509           <generateGitPropertiesFilename>${project.build.outputDirectory}/META-INF/git.properties
510           </generateGitPropertiesFilename>
511           <failOnNoGitDirectory>true</failOnNoGitDirectory>
512           <verbose>false</verbose>
513           <includeOnlyProperties>
514             <includeOnlyProperty>git.build.version</includeOnlyProperty>
515             <includeOnlyProperty>git.build.time</includeOnlyProperty>
516             <includeOnlyProperty>git.commit.id</includeOnlyProperty>
517             <includeOnlyProperty>git.commit.time</includeOnlyProperty>
518             <includeOnlyProperty>git.commit.user.name</includeOnlyProperty>
519             <includeOnlyProperty>git.commit.user.email</includeOnlyProperty>
520             <includeOnlyProperty>git.commit.message.short</includeOnlyProperty>
521             <includeOnlyProperty>git.commit.message.full</includeOnlyProperty>
522           </includeOnlyProperties>
523           <gitDescribe>
524             <skip>true</skip>
525           </gitDescribe>
526           <useNativeGit>false</useNativeGit>
527         </configuration>
528       </plugin>
529     </plugins>
530   </build>
531
532   <profiles>
533     <profile>
534       <id>all</id>
535       <activation>
536         <activeByDefault>true</activeByDefault>
537       </activation>
538       <modules>
539         <module>onboarding</module>
540         <module>common-app-logging</module>
541         <module>common-app-api</module>
542         <module>common-be</module>
543         <module>catalog-dao</module>
544         <module>catalog-model</module>
545         <module>catalog-be</module>
546         <module>asdctool</module>
547         <module>catalog-ui</module>
548         <module>catalog-fe</module>
549         <module>test-apis-ci</module>
550         <module>ui-ci</module>
551         <module>sdc-os-chef</module>
552         <module>utils/webseal-simulator</module>
553       </modules>
554
555     </profile>
556
557     <profile>
558       <id>catalog</id>
559       <activation>
560         <activeByDefault>false</activeByDefault>
561       </activation>
562       <modules>
563         <module>common-app-logging</module>
564         <module>common-app-api</module>
565         <module>common-be</module>
566         <module>catalog-dao</module>
567         <module>catalog-model</module>
568         <module>catalog-be</module>
569         <module>asdctool</module>
570         <module>catalog-ui</module>
571         <module>catalog-fe</module>
572         <module>test-apis-ci</module>
573         <module>ui-ci</module>
574       </modules>
575     </profile>
576
577     <profile>
578       <id>onboarding</id>
579       <activation>
580         <activeByDefault>false</activeByDefault>
581       </activation>
582       <modules>
583         <module>onboarding</module>
584       </modules>
585     </profile>
586
587   </profiles>
588
589   <repositories>
590     <!-- LF repositories -->
591     <repository>
592       <id>ecomp-releases</id>
593       <name>Release Repository</name>
594       <url>${nexus.proxy}/content/repositories/releases/</url>
595     </repository>
596     <repository>
597       <id>ecomp-snapshots</id>
598       <name>Snapshots Repository</name>
599       <url>${nexus.proxy}/content/repositories/snapshots/</url>
600     </repository>
601     <repository>
602       <id>ecomp-public</id>
603       <name>Public Repository</name>
604       <url>${nexus.proxy}/content/repositories/public/</url>
605     </repository>
606     <!-- LF repositories END-->
607   </repositories>
608
609   <distributionManagement>
610     <repository>
611       <id>ecomp-releases</id>
612       <name>Release Repository</name>
613       <url>${nexus.proxy}/content/repositories/releases/</url>
614     </repository>
615     <snapshotRepository>
616       <id>ecomp-snapshots</id>
617       <name>Snapshot Repository</name>
618       <url>${nexus.proxy}/content/repositories/snapshots/</url>
619     </snapshotRepository>
620     <site>
621       <id>ecomp-site</id>
622       <url>dav:${nexus.proxy}${sitePath}</url>
623     </site>
624   </distributionManagement>
625 </project>
626