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