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