Merge changes Ib4430bf2,Icc0bdb9e,I2736b984
[vid.git] / epsdk-app-onap / pom.xml
1 <?xml version="1.0"?>
2 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
3          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4     <modelVersion>4.0.0</modelVersion>
5
6     <!-- This is the Maven project object model (POM) file for the open-source
7         SDK web app. This is NOT the Portal - but it is developed and supported by
8         the Portal team. -->
9     <groupId>org.onap.vid</groupId>
10     <artifactId>epsdk-app-onap</artifactId>
11     <version>5.0.0-SNAPSHOT</version>
12     <packaging>war</packaging>
13     <name>ECOMP SDK Webapp for OpenSource</name>
14     <description>ECOMP SDK Web Application for public release</description>
15
16     <parent>
17         <groupId>org.onap.oparent</groupId>
18         <artifactId>oparent</artifactId>
19         <version>2.0.0</version>
20         <relativePath/>
21     </parent>
22
23     <properties>
24         <encoding>UTF-8</encoding>
25         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
26         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
27         <epsdk.version>2.4.0</epsdk.version>
28         <jackson.version>2.9.8</jackson.version>
29         <springframework.version>5.1.6.RELEASE</springframework.version>
30         <!-- epsdk-core is importing this class, which is only on spring-orm 4 but not in orm 5:
31          org.springframework.orm.hibernate4.HibernateTransactionManager
32          so following orm.version lets epsdk-core find it -->
33         <springframework.orm.version>4.3.22.RELEASE</springframework.orm.version>
34         <hibernate.version>4.3.11.Final</hibernate.version>
35         <!-- Skip assembling the zip; assemble via mvn -Dskipassembly=false .. -->
36         <skipassembly>true</skipassembly>
37         <nexusproxy>https://nexus.onap.org</nexusproxy>
38         <snapshotNexusPath>content/repositories/snapshots/</snapshotNexusPath>
39         <releaseNexusPath>content/repositories/releases/</releaseNexusPath>
40         <stagingNexusPath>content/repositories/staging/</stagingNexusPath>
41         <sitePath>content/sites/site/org/onap/vid/${project.version}</sitePath>
42
43         <!-- SONAR -->
44         <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
45         <sonar.surefire.reportPaths>${project.build.directory}/surefire-reports</sonar.surefire.reportPaths>
46         <sonar.projectVersion>${project.version}</sonar.projectVersion>
47         <!-- ignore all .js files on sonar coverage report -->
48         <sonar.coverage.exclusions>**/webapp/**/*,**/*.js</sonar.coverage.exclusions>
49     </properties>
50
51     <repositories>
52         <repository>
53             <id>ecomp-releases</id>
54             <name>VID Release Repository</name>
55             <url>${nexusproxy}/${releaseNexusPath}</url>
56         </repository>
57         <repository>
58             <id>ecomp-snapshots</id>
59             <name>VID Snapshot Repository</name>
60             <url>${nexusproxy}/${snapshotNexusPath}</url>
61         </repository>
62         <repository>
63             <id>ecomp-staging</id>
64             <name>VID Staging Repository</name>
65             <url>${nexusproxy}/${stagingNexusPath}</url>
66         </repository>
67         <repository>
68             <!-- Snapshots repository has ECOMP snapshot artifacts -->
69             <id>oss-snapshots</id>
70             <name>oss Central - Snapshots</name>
71             <url>https://oss.sonatype.org/service/local/repositories/releases/content/</url>
72         </repository>
73     </repositories>
74     <distributionManagement>
75         <repository>
76             <id>ecomp-releases</id>
77             <name>VID Release Repository</name>
78             <url>${nexusproxy}/${releaseNexusPath}</url>
79         </repository>
80         <snapshotRepository>
81             <id>ecomp-snapshots</id>
82             <name>VID Snapshot Repository</name>
83             <url>${nexusproxy}/${snapshotNexusPath}</url>
84         </snapshotRepository>
85         <!-- added for javadoc -->
86         <site>
87             <id>ecomp-site</id>
88             <url>dav:${nexusproxy}/${sitePath}</url>
89         </site>
90     </distributionManagement>
91
92     <profiles>
93         <!-- disable doclint, a new feature in Java 8, when generating javadoc -->
94         <profile>
95             <id>doclint-java8-disable</id>
96             <activation>
97                 <jdk>[1.8,)</jdk>
98             </activation>
99             <build>
100                 <plugins>
101                     <plugin>
102                         <groupId>org.apache.maven.plugins</groupId>
103                         <artifactId>maven-javadoc-plugin</artifactId>
104                         <version>2.10.4</version>
105                         <configuration>
106                             <additionalparam>-Xdoclint:none</additionalparam>
107                         </configuration>
108                     </plugin>
109                 </plugins>
110             </build>
111         </profile>
112     </profiles>
113
114     <build>
115         <finalName>vid</finalName>
116         <plugins>
117             <!-- Compile to Java 1.8 class output format -->
118             <plugin>
119                 <groupId>org.apache.maven.plugins</groupId>
120                 <artifactId>maven-compiler-plugin</artifactId>
121                 <version>3.1</version>
122                 <configuration>
123                     <source>1.8</source>
124                     <target>1.8</target>
125                 </configuration>
126             </plugin>
127
128             <plugin>
129                 <groupId>org.apache.maven.plugins</groupId>
130                 <artifactId>maven-surefire-plugin</artifactId>
131                 <version>2.22.1</version>
132                 <configuration>
133                     <includes>
134                         <include>**/Test*.java</include>
135                         <include>**/*Test.java</include>
136                         <include>**/*TestCase.java</include>
137                     </includes>
138                     <additionalClasspathElements>
139                         <additionalClasspathElement>${basedir}/war</additionalClasspathElement>
140                     </additionalClasspathElements>
141                     <systemPropertyVariables>
142                         <container.classpath>classpath:</container.classpath>
143                     </systemPropertyVariables>
144                     <useSystemClassLoader>false</useSystemClassLoader>
145                 </configuration>
146             </plugin>
147
148             <!-- add version number to manifest -->
149             <plugin>
150                 <groupId>org.apache.maven.plugins</groupId>
151                 <artifactId>maven-war-plugin</artifactId>
152                 <version>2.0.2</version>
153                 <configuration>
154                     <archive>
155                         <manifest>
156                             <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
157                         </manifest>
158                         <manifestEntries>
159                             <Build-Number>${project.version}</Build-Number>
160                             <Build-Time>${maven.build.timestamp}</Build-Time>
161                         </manifestEntries>
162                     </archive>
163                     <overlays>
164                         <overlay>
165                             <groupId>org.onap.vid</groupId>
166                             <artifactId>vid-app-common</artifactId>
167                         </overlay>
168                         <overlay>
169                             <groupId>org.onap.portal.sdk</groupId>
170                             <artifactId>epsdk-app-overlay</artifactId>
171                         </overlay>
172                     </overlays>
173                 </configuration>
174             </plugin>
175
176             <plugin>
177                 <groupId>org.apache.maven.plugins</groupId>
178                 <artifactId>maven-assembly-plugin</artifactId>
179                 <version>3.0.0</version>
180                 <configuration>
181                     <skipAssembly>${skipassembly}</skipAssembly>
182                     <descriptors>
183                         <descriptor>${basedir}/distribution.xml</descriptor>
184                     </descriptors>
185                 </configuration>
186                 <executions>
187                     <execution>
188                         <id>make-assembly</id>
189                         <phase>package</phase>
190                         <goals>
191                             <goal>single</goal>
192                         </goals>
193                     </execution>
194                 </executions>
195             </plugin>
196             <plugin>
197                 <groupId>org.apache.maven.plugins</groupId>
198                 <artifactId>maven-site-plugin</artifactId>
199                 <version>3.6</version>
200                 <dependencies>
201                     <dependency>
202                         <groupId>org.apache.maven.wagon</groupId>
203                         <artifactId>wagon-webdav-jackrabbit</artifactId>
204                         <version>2.10</version>
205                     </dependency>
206                 </dependencies>
207             </plugin>
208             <plugin>
209               <groupId>org.sonarsource.scanner.maven</groupId>
210               <artifactId>sonar-maven-plugin</artifactId>
211               <version>3.6.0.1398</version>
212             </plugin>
213             <plugin>
214                 <groupId>org.jacoco</groupId>
215                 <artifactId>jacoco-maven-plugin</artifactId>
216                 <version>0.8.3</version>
217                 <executions>
218                     <execution>
219                         <id>default-prepare-agent</id>
220                         <goals>
221                             <goal>prepare-agent</goal>
222                         </goals>
223                     </execution>
224                     <execution>
225                         <id>default-report</id>
226                         <goals>
227                             <goal>report</goal>
228                         </goals>
229                     </execution>
230                 </executions>
231             </plugin>
232
233         </plugins>
234     </build>
235
236     <reporting>
237         <plugins>
238             <plugin>
239                 <groupId>org.apache.maven.plugins</groupId>
240                 <artifactId>maven-javadoc-plugin</artifactId>
241                 <version>2.10.4</version>
242                 <configuration>
243                     <failOnError>false</failOnError>
244                     <doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
245                     <docletArtifact>
246                         <groupId>org.umlgraph</groupId>
247                         <artifactId>umlgraph</artifactId>
248                         <version>5.6</version>
249                     </docletArtifact>
250                     <additionalparam>-views</additionalparam>
251                     <useStandardDocletOptions>true</useStandardDocletOptions>
252                 </configuration>
253             </plugin>
254         </plugins>
255     </reporting>
256     <dependencies>
257         <!-- SDK overlay war -->
258         <dependency>
259             <groupId>org.onap.portal.sdk</groupId>
260             <artifactId>epsdk-app-overlay</artifactId>
261             <version>${epsdk.version}</version>
262             <type>war</type>
263         </dependency>
264         <dependency>
265             <groupId>org.onap.portal.sdk</groupId>
266             <artifactId>epsdk-app-common</artifactId>
267             <version>${epsdk.version}</version>
268             <type>jar</type>
269         </dependency>
270         <dependency>
271             <groupId>org.onap.vid</groupId>
272             <artifactId>vid-app-common</artifactId>
273             <version>${project.version}</version>
274             <type>war</type>
275         </dependency>
276         <dependency>
277             <groupId>org.onap.vid</groupId>
278             <artifactId>vid-app-common</artifactId>
279             <version>${project.version}</version>
280             <type>jar</type>
281             <classifier>classes</classifier>
282         </dependency>
283         <!-- SDK components -->
284         <dependency>
285             <groupId>org.onap.portal.sdk</groupId>
286             <artifactId>epsdk-core</artifactId>
287             <version>${epsdk.version}</version>
288         </dependency>
289         <dependency>
290             <groupId>org.onap.portal.sdk</groupId>
291             <artifactId>epsdk-analytics</artifactId>
292             <version>${epsdk.version}</version>
293             <exclusions>
294                 <exclusion>
295                     <groupId>com.lowagie</groupId>
296                     <artifactId>itext</artifactId>
297                 </exclusion>
298             </exclusions>
299         </dependency>
300         <dependency>
301             <groupId>org.onap.portal.sdk</groupId>
302             <artifactId>epsdk-workflow</artifactId>
303             <version>${epsdk.version}</version>
304         </dependency>
305         <dependency>
306             <groupId>com.att.eelf</groupId>
307             <artifactId>eelf-core</artifactId>
308             <version>1.0.0</version>
309         </dependency>
310         <!-- Mapper -->
311         <dependency>
312             <groupId>com.fasterxml.jackson.core</groupId>
313             <artifactId>jackson-annotations</artifactId>
314             <version>${jackson.version}</version>
315         </dependency>
316         <dependency>
317             <groupId>com.fasterxml.jackson.core</groupId>
318             <artifactId>jackson-core</artifactId>
319             <version>${jackson.version}</version>
320         </dependency>
321         <dependency>
322             <groupId>com.fasterxml.jackson.core</groupId>
323             <artifactId>jackson-databind</artifactId>
324             <version>${jackson.version}</version>
325         </dependency>
326         <!-- jackson-dataformat-* are to override elasticsearch-2.2.0 deps hell -->
327         <!-- (elasticsearch is an epsdk-app-common-2.4.0 dep) -->
328         <dependency>
329             <groupId>com.fasterxml.jackson.dataformat</groupId>
330             <artifactId>jackson-dataformat-smile</artifactId>
331             <version>${jackson.version}</version>
332         </dependency>
333         <dependency>
334             <groupId>com.fasterxml.jackson.dataformat</groupId>
335             <artifactId>jackson-dataformat-yaml</artifactId>
336             <version>${jackson.version}</version>
337         </dependency>
338         <dependency>
339             <groupId>com.fasterxml.jackson.dataformat</groupId>
340             <artifactId>jackson-dataformat-cbor</artifactId>
341             <version>${jackson.version}</version>
342         </dependency>
343         <!-- c3p0 is to override epsdk-app-common's c3p0 0.9.5.2 vulnerability -->
344         <dependency>
345             <groupId>com.mchange</groupId>
346             <artifactId>c3p0</artifactId>
347             <version>0.9.5.4</version>
348         </dependency>
349         <dependency>
350             <groupId>io.searchbox</groupId>
351             <artifactId>jest</artifactId>
352             <version>2.0.0</version>
353             <exclusions>
354                 <exclusion>
355                     <groupId>commons-logging</groupId>
356                     <artifactId>commons-logging</artifactId>
357                 </exclusion>
358             </exclusions>
359         </dependency>
360         <dependency>
361             <groupId>javax.servlet</groupId>
362             <artifactId>javax.servlet-api</artifactId>
363             <version>3.1.0</version>
364         </dependency>
365         <dependency>
366             <groupId>junit</groupId>
367             <artifactId>junit</artifactId>
368             <version>4.12</version>
369         </dependency>
370         <dependency>
371             <groupId>org.json</groupId>
372             <artifactId>json</artifactId>
373             <version>20160212</version>
374         </dependency>
375         <dependency>
376             <groupId>org.quartz-scheduler</groupId>
377             <artifactId>quartz</artifactId>
378             <version>2.2.1</version>
379             <exclusions>
380                 <!-- exclude 0.9.1.1 to avoid dupe of com.mchange:c3p0:0.9.2.1 -->
381                 <exclusion>
382                     <groupId>c3p0</groupId>
383                     <artifactId>c3p0</artifactId>
384                 </exclusion>
385             </exclusions>
386         </dependency>
387         <!-- bridge to implement commons-logging using slf4j -->
388         <dependency>
389             <groupId>org.slf4j</groupId>
390             <artifactId>jcl-over-slf4j</artifactId>
391             <version>1.7.12</version>
392         </dependency>
393
394         <!-- springframework to override epsdk-app-common's and epsdk-core's versions -->
395         <dependency>
396             <groupId>org.springframework</groupId>
397             <artifactId>spring-core</artifactId>
398             <version>${springframework.version}</version>
399             <exclusions>
400                 <exclusion>
401                     <groupId>commons-logging</groupId>
402                     <artifactId>commons-logging</artifactId>
403                 </exclusion>
404             </exclusions>
405         </dependency>
406         <dependency>
407             <groupId>org.springframework</groupId>
408             <artifactId>spring-test</artifactId>
409             <version>${springframework.version}</version>
410         </dependency>
411         <dependency>
412             <groupId>org.springframework</groupId>
413             <artifactId>spring-tx</artifactId>
414             <version>${springframework.version}</version>
415         </dependency>
416         <dependency>
417             <groupId>org.springframework</groupId>
418             <artifactId>spring-web</artifactId>
419             <version>${springframework.version}</version>
420         </dependency>
421         <dependency>
422             <groupId>org.springframework</groupId>
423             <artifactId>spring-webmvc</artifactId>
424             <version>${springframework.version}</version>
425         </dependency>
426         <dependency>
427             <groupId>org.springframework</groupId>
428             <artifactId>spring-context-support</artifactId>
429             <version>${springframework.version}</version>
430         </dependency>
431         <dependency>
432             <groupId>org.springframework</groupId>
433             <artifactId>spring-orm</artifactId>
434             <version>${springframework.orm.version}</version>
435         </dependency>
436         <dependency>
437             <groupId>org.springframework</groupId>
438             <artifactId>spring-aop</artifactId>
439             <version>${springframework.version}</version>
440         </dependency>
441
442     </dependencies>
443 </project>