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