Package webpack's `dist` folder into /app/ui
[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>3.2.0</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                         <overlay>
173                             <groupId>org.onap.vid</groupId>
174                             <artifactId>vid-webpack-master</artifactId>
175                         </overlay>
176                     </overlays>
177                 </configuration>
178             </plugin>
179
180             <plugin>
181                 <groupId>org.apache.maven.plugins</groupId>
182                 <artifactId>maven-assembly-plugin</artifactId>
183                 <version>3.0.0</version>
184                 <configuration>
185                     <skipAssembly>${skipassembly}</skipAssembly>
186                     <descriptors>
187                         <descriptor>${basedir}/distribution.xml</descriptor>
188                     </descriptors>
189                 </configuration>
190                 <executions>
191                     <execution>
192                         <id>make-assembly</id>
193                         <phase>package</phase>
194                         <goals>
195                             <goal>single</goal>
196                         </goals>
197                     </execution>
198                 </executions>
199             </plugin>
200             <plugin>
201                 <groupId>org.apache.maven.plugins</groupId>
202                 <artifactId>maven-site-plugin</artifactId>
203                 <version>3.6</version>
204                 <dependencies>
205                     <dependency>
206                         <groupId>org.apache.maven.wagon</groupId>
207                         <artifactId>wagon-webdav-jackrabbit</artifactId>
208                         <version>2.10</version>
209                     </dependency>
210                 </dependencies>
211             </plugin>
212             <plugin>
213               <groupId>org.sonarsource.scanner.maven</groupId>
214               <artifactId>sonar-maven-plugin</artifactId>
215               <version>3.6.0.1398</version>
216             </plugin>
217             <plugin>
218                 <groupId>org.jacoco</groupId>
219                 <artifactId>jacoco-maven-plugin</artifactId>
220                 <version>0.8.3</version>
221                 <executions>
222                     <execution>
223                         <id>default-prepare-agent</id>
224                         <goals>
225                             <goal>prepare-agent</goal>
226                         </goals>
227                     </execution>
228                     <execution>
229                         <id>default-report</id>
230                         <goals>
231                             <goal>report</goal>
232                         </goals>
233                     </execution>
234                 </executions>
235             </plugin>
236
237         </plugins>
238     </build>
239
240     <reporting>
241         <plugins>
242             <plugin>
243                 <groupId>org.apache.maven.plugins</groupId>
244                 <artifactId>maven-javadoc-plugin</artifactId>
245                 <version>2.10.4</version>
246                 <configuration>
247                     <failOnError>false</failOnError>
248                     <doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
249                     <docletArtifact>
250                         <groupId>org.umlgraph</groupId>
251                         <artifactId>umlgraph</artifactId>
252                         <version>5.6</version>
253                     </docletArtifact>
254                     <additionalparam>-views</additionalparam>
255                     <useStandardDocletOptions>true</useStandardDocletOptions>
256                 </configuration>
257             </plugin>
258         </plugins>
259     </reporting>
260     <dependencies>
261         <!-- SDK overlay war -->
262         <dependency>
263             <groupId>org.onap.portal.sdk</groupId>
264             <artifactId>epsdk-app-overlay</artifactId>
265             <version>${epsdk.version}</version>
266             <type>war</type>
267         </dependency>
268         <dependency>
269             <groupId>org.onap.portal.sdk</groupId>
270             <artifactId>epsdk-app-common</artifactId>
271             <version>${epsdk.version}</version>
272             <type>jar</type>
273         </dependency>
274         <dependency>
275             <groupId>org.onap.vid</groupId>
276             <artifactId>vid-app-common</artifactId>
277             <version>${project.version}</version>
278             <type>war</type>
279         </dependency>
280         <dependency>
281             <groupId>org.onap.vid</groupId>
282             <artifactId>vid-app-common</artifactId>
283             <version>${project.version}</version>
284             <type>jar</type>
285             <classifier>classes</classifier>
286         </dependency>
287         <dependency>
288             <groupId>org.onap.vid</groupId>
289             <artifactId>vid-webpack-master</artifactId>
290             <version>${project.version}</version>
291             <type>war</type>
292         </dependency>
293         <!-- SDK components -->
294         <dependency>
295             <groupId>org.onap.portal.sdk</groupId>
296             <artifactId>epsdk-core</artifactId>
297             <version>${epsdk.version}</version>
298         </dependency>
299         <dependency>
300             <groupId>org.onap.portal.sdk</groupId>
301             <artifactId>epsdk-analytics</artifactId>
302             <version>${epsdk.version}</version>
303             <exclusions>
304                 <exclusion>
305                     <groupId>com.lowagie</groupId>
306                     <artifactId>itext</artifactId>
307                 </exclusion>
308             </exclusions>
309         </dependency>
310         <dependency>
311             <groupId>org.onap.portal.sdk</groupId>
312             <artifactId>epsdk-workflow</artifactId>
313             <version>${epsdk.version}</version>
314         </dependency>
315         <dependency>
316             <groupId>com.att.eelf</groupId>
317             <artifactId>eelf-core</artifactId>
318             <version>1.0.0</version>
319         </dependency>
320         <!-- Mapper -->
321         <dependency>
322             <groupId>com.fasterxml.jackson.core</groupId>
323             <artifactId>jackson-annotations</artifactId>
324             <version>${jackson.version}</version>
325         </dependency>
326         <dependency>
327             <groupId>com.fasterxml.jackson.core</groupId>
328             <artifactId>jackson-core</artifactId>
329             <version>${jackson.version}</version>
330         </dependency>
331         <dependency>
332             <groupId>com.fasterxml.jackson.core</groupId>
333             <artifactId>jackson-databind</artifactId>
334             <version>${jackson.version}</version>
335         </dependency>
336         <!-- jackson-dataformat-* are to override elasticsearch-2.2.0 deps hell -->
337         <!-- (elasticsearch is an epsdk-app-common-2.4.0 dep) -->
338         <dependency>
339             <groupId>com.fasterxml.jackson.dataformat</groupId>
340             <artifactId>jackson-dataformat-smile</artifactId>
341             <version>${jackson.version}</version>
342         </dependency>
343         <dependency>
344             <groupId>com.fasterxml.jackson.dataformat</groupId>
345             <artifactId>jackson-dataformat-yaml</artifactId>
346             <version>${jackson.version}</version>
347         </dependency>
348         <dependency>
349             <groupId>com.fasterxml.jackson.dataformat</groupId>
350             <artifactId>jackson-dataformat-cbor</artifactId>
351             <version>${jackson.version}</version>
352         </dependency>
353         <!-- c3p0 is to override epsdk-app-common's c3p0 0.9.5.2 vulnerability -->
354         <dependency>
355             <groupId>com.mchange</groupId>
356             <artifactId>c3p0</artifactId>
357             <version>0.9.5.4</version>
358         </dependency>
359         <dependency>
360             <groupId>io.searchbox</groupId>
361             <artifactId>jest</artifactId>
362             <version>2.0.0</version>
363             <exclusions>
364                 <exclusion>
365                     <groupId>commons-logging</groupId>
366                     <artifactId>commons-logging</artifactId>
367                 </exclusion>
368             </exclusions>
369         </dependency>
370         <dependency>
371             <groupId>javax.servlet</groupId>
372             <artifactId>javax.servlet-api</artifactId>
373             <version>3.1.0</version>
374         </dependency>
375         <dependency>
376             <groupId>junit</groupId>
377             <artifactId>junit</artifactId>
378             <version>4.12</version>
379         </dependency>
380         <dependency>
381             <groupId>org.json</groupId>
382             <artifactId>json</artifactId>
383             <version>20160212</version>
384         </dependency>
385         <dependency>
386             <groupId>org.quartz-scheduler</groupId>
387             <artifactId>quartz</artifactId>
388             <version>2.2.1</version>
389             <exclusions>
390                 <!-- exclude 0.9.1.1 to avoid dupe of com.mchange:c3p0:0.9.2.1 -->
391                 <exclusion>
392                     <groupId>c3p0</groupId>
393                     <artifactId>c3p0</artifactId>
394                 </exclusion>
395             </exclusions>
396         </dependency>
397         <!-- bridge to implement commons-logging using slf4j -->
398         <dependency>
399             <groupId>org.slf4j</groupId>
400             <artifactId>jcl-over-slf4j</artifactId>
401             <version>1.7.12</version>
402         </dependency>
403
404         <!-- springframework to override epsdk-app-common's and epsdk-core's versions -->
405         <dependency>
406             <groupId>org.springframework</groupId>
407             <artifactId>spring-core</artifactId>
408             <version>${springframework.version}</version>
409             <exclusions>
410                 <exclusion>
411                     <groupId>commons-logging</groupId>
412                     <artifactId>commons-logging</artifactId>
413                 </exclusion>
414             </exclusions>
415         </dependency>
416         <dependency>
417             <groupId>org.springframework</groupId>
418             <artifactId>spring-test</artifactId>
419             <version>${springframework.version}</version>
420         </dependency>
421         <dependency>
422             <groupId>org.springframework</groupId>
423             <artifactId>spring-tx</artifactId>
424             <version>${springframework.version}</version>
425         </dependency>
426         <dependency>
427             <groupId>org.springframework</groupId>
428             <artifactId>spring-web</artifactId>
429             <version>${springframework.version}</version>
430         </dependency>
431         <dependency>
432             <groupId>org.springframework</groupId>
433             <artifactId>spring-webmvc</artifactId>
434             <version>${springframework.version}</version>
435         </dependency>
436         <dependency>
437             <groupId>org.springframework</groupId>
438             <artifactId>spring-context-support</artifactId>
439             <version>${springframework.version}</version>
440         </dependency>
441         <dependency>
442             <groupId>org.springframework</groupId>
443             <artifactId>spring-orm</artifactId>
444             <version>${springframework.orm.version}</version>
445         </dependency>
446         <dependency>
447             <groupId>org.springframework</groupId>
448             <artifactId>spring-aop</artifactId>
449             <version>${springframework.version}</version>
450         </dependency>
451
452     </dependencies>
453 </project>