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