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