Update master to Honolulu
[sdc.git] / catalog-fe / pom.xml
1 <project xmlns="http://maven.apache.org/POM/4.0.0"
2   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
5   <modelVersion>4.0.0</modelVersion>
6   <artifactId>catalog-fe</artifactId>
7   <packaging>war</packaging>
8
9   <parent>
10     <groupId>org.openecomp.sdc</groupId>
11     <artifactId>sdc-main</artifactId>
12     <version>1.8.0-SNAPSHOT</version>
13   </parent>
14
15   <dependencies>
16
17     <dependency>
18       <groupId>org.projectlombok</groupId>
19       <artifactId>lombok</artifactId>
20       <version>${lombok.version}</version>
21     </dependency>
22
23     <dependency>
24       <groupId>org.functionaljava</groupId>
25       <artifactId>functionaljava</artifactId>
26       <version>${functionaljava.version}</version>
27       <scope>compile</scope>
28     </dependency>
29
30     <dependency>
31       <groupId>org.openecomp.sdc</groupId>
32       <artifactId>common-app-api</artifactId>
33       <version>${project.version}</version>
34     </dependency>
35
36     <!-- File changes listener -->
37     <dependency>
38       <groupId>ch.qos.logback</groupId>
39       <artifactId>logback-classic</artifactId>
40       <version>${logback.version}</version>
41       <scope>compile</scope>
42     </dependency>
43
44     <dependency>
45       <groupId>org.codehaus.groovy</groupId>
46       <artifactId>groovy</artifactId>
47       <scope>compile</scope>
48     </dependency>
49
50     <dependency>
51       <groupId>org.codehaus.janino</groupId>
52       <artifactId>janino</artifactId>
53       <version>${janino.version}</version>
54       <scope>compile</scope>
55     </dependency>
56
57     <dependency>
58       <groupId>org.yaml</groupId>
59       <artifactId>snakeyaml</artifactId>
60       <version>${snakeyaml.version}</version>
61       <scope>compile</scope>
62     </dependency>
63
64     <dependency>
65       <groupId>org.apache.commons</groupId>
66       <artifactId>commons-jci-core</artifactId>
67       <version>${commons-jci-core.version}</version>
68       <scope>compile</scope>
69     </dependency>
70
71     <dependency>
72       <groupId>com.google.code.gson</groupId>
73       <artifactId>gson</artifactId>
74       <version>${gson.version}</version>
75       <scope>compile</scope>
76     </dependency>
77
78     <dependency>
79       <groupId>org.glassfish.jersey.containers</groupId>
80       <artifactId>jersey-container-servlet</artifactId>
81       <version>${jersey-bom.version}</version>
82       <scope>compile</scope>
83     </dependency>
84
85     <dependency>
86       <groupId>org.glassfish.jersey.media</groupId>
87       <artifactId>jersey-media-multipart</artifactId>
88       <version>${jersey-bom.version}</version>
89       <scope>compile</scope>
90     </dependency>
91
92     <dependency>
93       <groupId>org.glassfish.jersey.media</groupId>
94       <artifactId>jersey-media-moxy</artifactId>
95       <version>${jersey-bom.version}</version>
96       <scope>compile</scope>
97     </dependency>
98
99
100     <dependency>
101       <groupId>org.glassfish.jersey.media</groupId>
102       <artifactId>jersey-media-json-jackson</artifactId>
103       <version>${jersey-bom.version}</version>
104       <scope>compile</scope>
105     </dependency>
106
107     <dependency>
108       <groupId>org.glassfish.jersey.inject</groupId>
109       <artifactId>jersey-hk2</artifactId>
110       <version>${jersey-bom.version}</version>
111     </dependency>
112
113     <dependency>
114       <groupId>com.fasterxml.jackson.core</groupId>
115       <artifactId>jackson-core</artifactId>
116       <version>${jackson.version}</version>
117       <scope>compile</scope>
118     </dependency>
119
120     <dependency>
121       <groupId>com.fasterxml.jackson.core</groupId>
122       <artifactId>jackson-databind</artifactId>
123       <version>${jackson.version}</version>
124       <exclusions>
125         <exclusion>
126           <groupId>com.fasterxml.jackson.core</groupId>
127           <artifactId>jackson-core</artifactId>
128         </exclusion>
129       </exclusions>
130     </dependency>
131
132     <dependency>
133       <groupId>com.fasterxml.jackson.core</groupId>
134       <artifactId>jackson-annotations</artifactId>
135       <version>${jackson-annotations.version}</version>
136       <scope>compile</scope>
137     </dependency>
138
139     <!-- http client -->
140     <dependency>
141       <groupId>org.apache.httpcomponents</groupId>
142       <artifactId>httpclient</artifactId>
143       <version>${httpclient.version}</version>
144       <scope>compile</scope>
145     </dependency>
146
147     <dependency>
148       <groupId>org.apache.httpcomponents</groupId>
149       <artifactId>httpcore</artifactId>
150       <version>${httpcore.version}</version>
151       <scope>compile</scope>
152     </dependency>
153
154     <dependency>
155       <groupId>org.apache.httpcomponents</groupId>
156       <artifactId>httpmime</artifactId>
157       <version>${httpclient.version}</version>
158       <scope>compile</scope>
159     </dependency>
160
161     <dependency>
162       <groupId>commons-logging</groupId>
163       <artifactId>commons-logging</artifactId>
164       <version>${commons-logging}</version>
165       <scope>compile</scope>
166     </dependency>
167
168     <dependency>
169       <groupId>commons-codec</groupId>
170       <artifactId>commons-codec</artifactId>
171       <version>${commons-codec}</version>
172       <scope>compile</scope>
173     </dependency>
174     <!-- http client END -->
175
176     <dependency>
177       <groupId>javax.servlet</groupId>
178       <artifactId>javax.servlet-api</artifactId>
179       <version>${servlet-api.version}</version>
180       <scope>provided</scope>
181     </dependency>
182
183     <!-- JSON and YAML Parsing -->
184     <dependency>
185       <groupId>com.fasterxml.jackson.dataformat</groupId>
186       <artifactId>jackson-dataformat-yaml</artifactId>
187       <version>${jackson.version}</version>
188       <scope>compile</scope>
189     </dependency>
190
191     <!-- Jetty Proxy -->
192     <dependency>
193       <groupId>org.eclipse.jetty</groupId>
194       <artifactId>jetty-proxy</artifactId>
195       <version>${jetty.version}</version>
196       <scope>compile</scope>
197     </dependency>
198
199     <dependency>
200       <groupId>org.eclipse.jetty</groupId>
201       <artifactId>jetty-servlets</artifactId>
202       <version>${jetty.version}</version>
203       <scope>compile</scope>
204     </dependency>
205
206     <!-- Proxy servlet -->
207     <dependency>
208       <groupId>com.google.guava</groupId>
209       <artifactId>guava</artifactId>
210       <version>${guava.version}</version>
211       <scope>compile</scope>
212     </dependency>
213
214     <!-- Aspects -->
215     <dependency>
216       <groupId>com.jcabi</groupId>
217       <artifactId>jcabi-aspects</artifactId>
218       <version>${jcabi.version}</version>
219       <scope>compile</scope>
220     </dependency>
221     <dependency>
222       <groupId>org.aspectj</groupId>
223       <artifactId>aspectjrt</artifactId>
224       <version>${aspectjrt.version}</version>
225       <scope>compile</scope>
226     </dependency>
227
228     <dependency>
229       <groupId>org.apache.commons</groupId>
230       <artifactId>commons-lang3</artifactId>
231       <version>${lang3.version}</version>
232       <scope>compile</scope>
233     </dependency>
234
235         <dependency>
236             <groupId>javax.xml.bind</groupId>
237             <artifactId>jaxb-api</artifactId>
238             <version>${jaxb-api.version}</version>
239             <scope>compile</scope>
240         </dependency>
241
242         <!-- Inserted for ECOMP Portal Integration -->
243         <dependency>
244             <groupId>org.owasp.esapi</groupId>
245             <artifactId>esapi</artifactId>
246             <version>2.2.0.0</version>
247         </dependency>
248         <dependency>
249             <groupId>org.onap.portal.sdk</groupId>
250             <artifactId>epsdk-fw</artifactId>
251             <version>${ecomp.version}</version>
252             <scope>compile</scope>
253             <exclusions>
254                 <exclusion>
255                     <groupId>com.att.nsa</groupId>
256                     <artifactId>cambriaClient</artifactId>
257                 </exclusion>
258                 <exclusion>
259                     <artifactId>slf4j-log4j12</artifactId>
260                     <groupId>org.slf4j</groupId>
261                 </exclusion>
262                 <exclusion>
263                     <artifactId>log4j</artifactId>
264                     <groupId>log4j</groupId>
265                 </exclusion>
266             </exclusions>
267         </dependency>
268         <!-- System metrics -->
269         <dependency>
270             <groupId>org.fusesource</groupId>
271             <artifactId>sigar</artifactId>
272             <version>${sigar.version}</version>
273             <scope>compile</scope>
274             <exclusions>
275                 <exclusion>
276                     <groupId>log4j</groupId>
277                     <artifactId>log4j</artifactId>
278                 </exclusion>
279             </exclusions>
280         </dependency>
281
282     <!-- TEST -->
283     <dependency>
284       <groupId>org.glassfish.jersey.test-framework.providers</groupId>
285       <artifactId>jersey-test-framework-provider-bundle</artifactId>
286       <version>${jersey-bom.version}</version>
287       <type>pom</type>
288       <scope>test</scope>
289     </dependency>
290
291     <dependency>
292       <groupId>com.google.code.bean-matchers</groupId>
293       <artifactId>bean-matchers</artifactId>
294       <version>${bean-matchers.version}</version>
295       <scope>test</scope>
296     </dependency>
297
298     <dependency>
299       <groupId>org.eclipse.jetty</groupId>
300       <artifactId>jetty-servlet</artifactId>
301       <version>${jetty.version}</version>
302       <scope>test</scope>
303     </dependency>
304
305     <dependency>
306       <groupId>org.eclipse.jetty</groupId>
307       <artifactId>jetty-webapp</artifactId>
308       <version>${jetty.version}</version>
309       <scope>test</scope>
310     </dependency>
311
312   </dependencies>
313
314   <build>
315
316     <finalName>${project.artifactId}-${project.version}</finalName>
317
318     <plugins>
319       <plugin>
320         <groupId>org.apache.maven.plugins</groupId>
321         <artifactId>maven-war-plugin</artifactId>
322         <configuration>
323           <archive>
324             <manifest>
325               <addDefaultImplementationEntries>true</addDefaultImplementationEntries>
326             </manifest>
327           </archive>
328
329           <webResources>
330             <resource>
331               <directory>src/main/resources</directory>
332             </resource>
333           </webResources>
334         </configuration>
335       </plugin>
336
337       <plugin>
338         <groupId>org.eclipse.jetty</groupId>
339         <artifactId>jetty-maven-plugin</artifactId>
340         <version>${jetty.version}</version>
341         <configuration>
342           <webApp>
343             <contextPath>/</contextPath>
344             <webInfIncludeJarPattern>.*/.*jersey-[^/]\.jar$</webInfIncludeJarPattern>
345           </webApp>
346           <war>${project.build.directory}/${project.build.finalName}.war</war>
347         </configuration>
348       </plugin>
349
350       <plugin>
351         <groupId>org.apache.maven.plugins</groupId>
352         <artifactId>maven-deploy-plugin</artifactId>
353         <configuration>
354           <skip>true</skip>
355         </configuration>
356       </plugin>
357
358       <plugin>
359         <groupId>com.jcabi</groupId>
360         <artifactId>jcabi-maven-plugin</artifactId>
361         <version>${jcabi.maven.plugin.version}</version>
362         <dependencies>
363             <dependency>
364                 <groupId>org.aspectj</groupId>
365                 <artifactId>aspectjtools</artifactId>
366                 <version>1.9.2</version>
367             </dependency>
368             <dependency>
369                 <groupId>org.aspectj</groupId>
370                 <artifactId>aspectjweaver</artifactId>
371                 <version>1.9.2</version>
372             </dependency>
373         </dependencies>
374         <executions>
375           <execution>
376             <goals>
377               <goal>ajc</goal>
378             </goals>
379           </execution>
380         </executions>
381       </plugin>
382       <plugin>
383         <groupId>org.apache.maven.plugins</groupId>
384         <artifactId>maven-clean-plugin</artifactId>
385         <executions>
386           <execution>
387             <id>clean.catalog.fe.folder</id>
388             <phase>clean</phase>
389             <goals>
390               <goal>clean</goal>
391             </goals>
392             <configuration>
393               <filesets>
394                 <!-- FE WAR's -->
395                 <fileset>
396                   <directory>${project.parent.basedir}/catalog-fe/sdc-frontend/</directory>
397                   <followSymlinks>false</followSymlinks>
398                   <includes>
399                     <include>*.war</include>
400                   </includes>
401                 </fileset>
402               </filesets>
403             </configuration>
404           </execution>
405         </executions>
406       </plugin>
407       <plugin>
408         <groupId>com.github.sylvainlaurent.maven</groupId>
409         <artifactId>yaml-json-validator-maven-plugin</artifactId>
410         <executions>
411           <execution>
412             <id>validate</id>
413             <phase>validate</phase>
414             <goals>
415               <goal>validate</goal>
416             </goals>
417             <configuration>
418               <validationSets>
419                 <validationSet>
420                   <includes>
421                     <include>src/main/resources/**/*.y*ml</include>
422                     <include>src/test/resources/**/*.y*ml</include>
423                   </includes>
424                 </validationSet>
425                 <validationSet>
426                   <includes>
427                     <include>src/main/resources/**/*.json</include>
428                     <include>src/test/resources/**/*.json</include>
429                   </includes>
430                 </validationSet>
431               </validationSets>
432               <skip>${skipYamlJsonValidator}</skip>
433             </configuration>
434           </execution>
435         </executions>
436       </plugin>
437
438     </plugins>
439
440     <pluginManagement>
441       <plugins>
442         <!--This plugin's configuration is used to store Eclipse m2e settings
443           only. It has no influence on the Maven build itself. -->
444         <plugin>
445           <groupId>org.eclipse.m2e</groupId>
446           <artifactId>lifecycle-mapping</artifactId>
447           <version>1.0.0</version>
448           <configuration>
449             <lifecycleMappingMetadata>
450               <pluginExecutions>
451
452                 <pluginExecution>
453                   <pluginExecutionFilter>
454                     <groupId>com.jcabi</groupId>
455                     <artifactId>jcabi-maven-plugin</artifactId>
456                     <versionRange>[0.0,)</versionRange>
457                     <goals>
458                       <goal>ajc</goal>
459                     </goals>
460                   </pluginExecutionFilter>
461                   <action>
462                     <execute/>
463                   </action>
464                 </pluginExecution>
465
466               </pluginExecutions>
467             </lifecycleMappingMetadata>
468           </configuration>
469         </plugin>
470
471         <!-- jacbi (log injection) -->
472
473       </plugins>
474     </pluginManagement>
475
476   </build>
477
478   <profiles>
479     <profile>
480       <id>catalog</id>
481       <activation>
482         <activeByDefault>false</activeByDefault>
483       </activation>
484
485       <build>
486         <finalName>${project.artifactId}-${project.version}</finalName>
487       </build>
488     </profile>
489     <profile>
490       <id>docker</id>
491       <activation>
492         <activeByDefault>false</activeByDefault>
493       </activation>
494       <properties>
495         <docker.username>docker</docker.username>
496         <docker.password>docker</docker.password>
497       </properties>
498       <build>
499         <plugins>
500           <plugin>
501             <groupId>org.apache.maven.plugins</groupId>
502             <artifactId>maven-resources-plugin</artifactId>
503             <executions>
504               <execution>
505                 <id>copy-resources-fe</id>
506                 <phase>verify</phase>
507                 <goals>
508                   <goal>copy-resources</goal>
509                 </goals>
510                 <configuration>
511                   <outputDirectory>${basedir}/sdc-frontend</outputDirectory>
512                   <resources>
513                     <resource>
514                       <directory>${project.parent.basedir}/catalog-fe/target</directory>
515                       <includes>
516                         <include>catalog-fe-${project.version}.war</include>
517                       </includes>
518                     </resource>
519                     <resource>
520                       <directory>${project.parent.basedir}/openecomp-ui/target</directory>
521                       <includes>
522                         <include>onboarding-fe-${project.version}.war</include>
523                       </includes>
524                     </resource>
525                   </resources>
526                 </configuration>
527               </execution>
528             </executions>
529           </plugin>
530           <plugin>
531             <groupId>io.fabric8</groupId>
532             <artifactId>docker-maven-plugin</artifactId>
533             <configuration>
534               <apiVersion>${docker.api.version}</apiVersion>
535               <registry>nexus3.onap.org:10001</registry>
536               <authConfig>
537                 <pull>
538                   <username>${docker.username}</username>
539                   <password>${docker.password}</password>
540                 </pull>
541               </authConfig>
542               <images>
543
544                 <!-- Build frontend image -->
545                 <image>
546                   <name>onap/sdc-frontend</name>
547                   <alias>sdc-frontend</alias>
548                   <build>
549                     <cleanup>try</cleanup>
550                     <dockerFileDir>${project.basedir}/sdc-frontend</dockerFileDir>
551                     <tags>
552                       <tag>latest</tag>
553                       <tag>
554                         ${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest
555                       </tag>
556                       <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-${maven.build.timestamp}</tag>
557                     </tags>
558                   </build>
559                 </image>
560               </images>
561             </configuration>
562             <executions>
563               <execution>
564                 <id>clean-images</id>
565                 <phase>pre-clean</phase>
566                 <goals>
567                   <goal>remove</goal>
568                 </goals>
569                 <configuration>
570                   <removeAll>true</removeAll>
571                   <image>onap/sdc-frontend</image>
572                 </configuration>
573               </execution>
574
575               <execution>
576                 <id>generate-images</id>
577                 <phase>install</phase>
578                 <goals>
579                   <goal>build</goal>
580                 </goals>
581               </execution>
582
583               <execution>
584                 <id>push-images</id>
585                 <phase>deploy</phase>
586                 <goals>
587                   <goal>push</goal>
588                 </goals>
589                 <configuration>
590                   <image>onap/sdc-frontend</image>
591                 </configuration>
592               </execution>
593             </executions>
594           </plugin>
595         </plugins>
596       </build>
597     </profile>
598   </profiles>
599 </project>