update link to upper-constraints.txt
[aai/sparky-be.git] / sparkybe-onap-application / pom.xml
1 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
2          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
3     <modelVersion>4.0.0</modelVersion>
4
5         <parent>
6           <groupId>org.onap.aai</groupId>
7           <artifactId>sparky-be</artifactId>
8           <version>2.0.4-SNAPSHOT</version>
9         </parent>
10
11         <groupId>org.onap.aai.sparky-be</groupId>
12         <artifactId>sparkybe-onap-application</artifactId>
13         <version>2.0.4-SNAPSHOT</version>
14         <packaging>jar</packaging>
15
16     <properties>
17         <java.version>1.11</java.version>
18         <frontEndGroupdId>org.onap.aai</frontEndGroupdId>
19         <frontEndArtifactId>sparky-fe</frontEndArtifactId>
20         <frontEndVersion>2.0.0</frontEndVersion>
21         <serverPort>9517</serverPort>
22         <sslport>8000</sslport>
23         <nexusproxy>https://nexus.onap.org</nexusproxy>
24         <camel-spring-boot.version>2.21.1</camel-spring-boot.version>
25         <config-home>${basedir}/</config-home>
26         <version.aai-schema>1.6.6</version.aai-schema>
27         <sitePath>/content/sites/site/org/onap/aai/sparky-be/${project.artifactId}/${project.version}</sitePath>
28         <nexusproxy>https://nexus.onap.org</nexusproxy>
29         <spring.boot.version>1.5.21.RELEASE</spring.boot.version>
30         <shemaUnpackVersion>onap</shemaUnpackVersion>
31         <!-- docker related properties -->
32         <docker.image.name>sparky-be</docker.image.name>
33         <docker.fabric.version>0.28.0</docker.fabric.version>
34         <aai.docker.version>1.0.0</aai.docker.version>
35         <aai.build.directory>${project.build.directory}/${project.artifactId}-build/
36         </aai.build.directory>
37         <aai.docker.namespace>onap</aai.docker.namespace>
38         <aai.base.image>alpine</aai.base.image>
39         <aai.base.image.version>1.8.1</aai.base.image.version>
40         <!-- This will be used for the docker images as the default format of maven build has issues -->
41         <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
42     </properties>
43
44     <dependencyManagement>
45         <dependencies>
46             <dependency>
47                 <groupId>org.springframework.boot</groupId>
48                 <artifactId>spring-boot-starter-parent</artifactId>
49                 <version>${spring.boot.version}</version>
50                 <type>pom</type>
51                 <scope>import</scope>
52             </dependency>
53             <!-- Camel BOM -->
54             <dependency>
55                 <groupId>org.apache.camel</groupId>
56                 <artifactId>camel-spring-boot-dependencies</artifactId>
57                 <version>${camel-spring-boot.version}</version>
58                 <type>pom</type>
59                 <scope>import</scope>
60             </dependency>
61
62             <dependency>
63                 <groupId>ch.qos.logback</groupId>
64                 <artifactId>logback-classic</artifactId>
65                 <version>1.2.3</version>
66             </dependency>
67
68         </dependencies>
69
70     </dependencyManagement>
71
72     <dependencies>
73
74         <!-- Spring dependencies -->
75         <dependency>
76             <groupId>org.springframework.boot</groupId>
77             <artifactId>spring-boot-starter-web</artifactId>
78             <exclusions>
79                 <exclusion>
80                     <groupId>org.springframework.boot</groupId>
81                     <artifactId>spring-boot-starter-tomcat</artifactId>
82                 </exclusion>
83             </exclusions>
84         </dependency>
85
86         <dependency>
87             <groupId>org.springframework.boot</groupId>
88             <artifactId>spring-boot-starter-jetty</artifactId>
89         </dependency>
90
91         <dependency>
92             <groupId>org.springframework.boot</groupId>
93             <artifactId>spring-boot-starter-actuator</artifactId>
94         </dependency>
95
96         <dependency>
97             <groupId>org.apache.camel</groupId>
98             <artifactId>camel-restlet</artifactId>
99             <exclusions>
100                 <exclusion>
101                     <groupId>commons-logging</groupId>
102                     <artifactId>commons-logging</artifactId>
103                 </exclusion>
104             </exclusions>
105         </dependency>
106
107         <dependency>
108             <groupId>org.springframework.boot</groupId>
109             <artifactId>spring-boot-starter-logging</artifactId>
110             <exclusions>
111                 <exclusion>
112                     <groupId>ch.qos.logback</groupId>
113                     <artifactId>logback-classic</artifactId>
114                 </exclusion>
115                 <exclusion>
116                     <groupId>org.slf4j</groupId>
117                     <artifactId>log4j-over-slf4j</artifactId>
118                 </exclusion>
119             </exclusions>
120         </dependency>
121
122         <dependency>
123             <groupId>org.apache.camel</groupId>
124             <artifactId>camel-servlet</artifactId>
125             <exclusions>
126                 <exclusion>
127                     <groupId>commons-logging</groupId>
128                     <artifactId>commons-logging</artifactId>
129                 </exclusion>
130             </exclusions>
131         </dependency>
132
133         <!-- Camel BOM -->
134         <dependency>
135             <groupId>org.apache.camel</groupId>
136             <artifactId>camel-spring-boot-dependencies</artifactId>
137             <version>${camel-spring-boot.version}</version>
138             <type>pom</type>
139             <scope>import</scope>
140         </dependency>
141
142         <!-- https://mvnrepository.com/artifact/com.sun.xml.bind/jaxb-impl -->
143         <!-- <dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-impl</artifactId>
144             </dependency> <dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-core</artifactId>
145             </dependency> -->
146
147         <!-- Camel -->
148         <dependency>
149             <groupId>org.apache.camel</groupId>
150             <artifactId>camel-spring-boot-starter</artifactId>
151         </dependency>
152
153         <!-- https://mvnrepository.com/artifact/org.apache.camel/camel-restlet -->
154         <dependency>
155             <groupId>org.apache.camel</groupId>
156             <artifactId>camel-restlet</artifactId>
157         </dependency>
158
159         <dependency>
160             <groupId>commons-io</groupId>
161             <artifactId>commons-io</artifactId>
162         </dependency>
163
164         <!-- https://mvnrepository.com/artifact/org.eclipse.jetty/jetty-util -->
165         <dependency>
166             <groupId>org.eclipse.jetty</groupId>
167             <artifactId>jetty-util</artifactId>
168             <scope>provided</scope>
169         </dependency>
170
171         <dependency>
172             <groupId>org.apache.camel</groupId>
173             <artifactId>camel-servlet-starter</artifactId>
174         </dependency>
175
176         <dependency>
177             <groupId>org.springframework.boot</groupId>
178             <artifactId>spring-boot-starter-actuator</artifactId>
179         </dependency>
180
181                 <dependency>
182                         <groupId>org.onap.aai.sparky-be</groupId>
183                         <artifactId>sparkybe-onap-service</artifactId>
184                         <version>${project.version}</version>
185                 </dependency>
186
187
188         <!-- https://mvnrepository.com/artifact/commons-cli/commons-cli -->
189         <dependency>
190             <groupId>commons-cli</groupId>
191             <artifactId>commons-cli</artifactId>
192             <version>1.2</version>
193         </dependency>
194
195         <!-- <dependency> <groupId>org.apache.tomcat.embed</groupId> <artifactId>tomcat-embed-jasper</artifactId>
196             </dependency> -->
197
198
199         <!-- https://mvnrepository.com/artifact/org.apache.camel/camel-http-common -->
200         <!-- <dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-http</artifactId>
201             <version>2.15.5</version> </dependency> <dependency> <groupId>abc.def</groupId>
202             <artifactId>att-camel-dme2-servlet</artifactId> <version>2.15.5</version>
203             <scope>system</scope> <systemPath>x:/222/att-camel-dme2-servlet-2.15.5.jar</systemPath>
204             </dependency> <dependency> <groupId>abc.def</groupId> <artifactId>att-camel-static-content</artifactId>
205             <version>2.11.2.1</version> <scope>system</scope> <systemPath>x:/222/att-camel-static-content-2.11.2.1.jar</systemPath>
206             </dependency> -->
207
208         <!-- Utility dependencies -->
209
210         <dependency>
211             <groupId>com.google.guava</groupId>
212             <artifactId>guava</artifactId>
213             <version>26.0-jre</version>
214         </dependency>
215
216         <dependency>
217             <groupId>org.onap.aai.logging-service</groupId>
218             <artifactId>common-logging</artifactId>
219             <version>1.5.0</version>
220         </dependency>
221
222         <dependency>
223             <groupId>org.dom4j</groupId>
224             <artifactId>dom4j</artifactId>
225             <scope>provided</scope>
226             <version>2.1.1</version>
227         </dependency>
228
229         <dependency>
230             <groupId>org.eclipse.persistence</groupId>
231             <artifactId>eclipselink</artifactId>
232             <version>2.7.7</version>
233         </dependency>
234
235         <dependency>
236             <groupId>org.slf4j</groupId>
237             <artifactId>slf4j-api</artifactId>
238             <scope>provided</scope>
239         </dependency>
240
241         <dependency>
242             <groupId>com.fasterxml.jackson.core</groupId>
243             <artifactId>jackson-core</artifactId>
244             <scope>provided</scope>
245         </dependency>
246
247         <dependency>
248             <groupId>org.onap.aai.schema-service</groupId>
249             <artifactId>aai-schema</artifactId>
250             <version>${version.aai-schema}</version>
251         </dependency>
252
253         <dependency>
254             <groupId>org.onap.aai</groupId>
255             <artifactId>rest-client</artifactId>
256             <version>1.3.0</version>
257         </dependency>
258
259         <!-- https://mvnrepository.com/artifact/org.restlet.jee/org.restlet.ext.servlet -->
260         <dependency>
261             <groupId>org.restlet.jee</groupId>
262             <artifactId>org.restlet.ext.servlet</artifactId>
263             <version>2.1.1</version>
264         </dependency>
265
266
267         <dependency>
268             <groupId>com.openpojo</groupId>
269             <artifactId>openpojo</artifactId>
270             <version>0.8.6</version>
271         </dependency>
272
273         <dependency>
274             <groupId>com.google.code.gson</groupId>
275             <artifactId>gson</artifactId>
276             <scope>provided</scope>
277         </dependency>
278
279
280         <dependency>
281             <groupId>org.json</groupId>
282             <artifactId>json</artifactId>
283             <scope>provided</scope>
284         </dependency>
285
286         <dependency>
287             <groupId>com.fasterxml.jackson.core</groupId>
288             <artifactId>jackson-databind</artifactId>
289             <scope>provided</scope>
290         </dependency>
291
292         <dependency>
293             <groupId>org.onap.portal.sdk</groupId>
294             <artifactId>epsdk-fw</artifactId>
295             <exclusions>
296                 <exclusion>
297                     <groupId>commons-logging</groupId>
298                     <artifactId>commons-logging</artifactId>
299                 </exclusion>
300                 <exclusion>
301                     <groupId>log4j</groupId>
302                     <artifactId>log4j</artifactId>
303                 </exclusion>
304                 <exclusion>
305                     <groupId>log4j</groupId>
306                     <artifactId>apache-log4j-extras</artifactId>
307                 </exclusion>
308                 <exclusion>
309                     <groupId>org.slf4j</groupId>
310                     <artifactId>slf4j-log4j12</artifactId>
311                 </exclusion>
312             </exclusions>
313         </dependency>
314
315         <!-- Test dependencies -->
316
317         <dependency>
318             <groupId>org.mockito</groupId>
319             <artifactId>mockito-all</artifactId>
320             <version>1.10.19</version>
321             <scope>test</scope>
322         </dependency>
323
324         <dependency>
325             <groupId>org.powermock</groupId>
326             <artifactId>powermock-module-junit4</artifactId>
327             <version>1.6.2</version>
328             <scope>test</scope>
329         </dependency>
330         <dependency>
331             <groupId>org.powermock</groupId>
332             <artifactId>powermock-api-mockito</artifactId>
333             <version>1.6.2</version>
334             <scope>test</scope>
335         </dependency>
336         <dependency>
337             <groupId>org.powermock</groupId>
338             <artifactId>powermock-module-javaagent</artifactId>
339             <version>1.6.2</version>
340             <scope>test</scope>
341         </dependency>
342         <dependency>
343             <groupId>org.powermock</groupId>
344             <artifactId>powermock-module-junit4-rule-agent</artifactId>
345             <version>1.6.2</version>
346             <scope>test</scope>
347         </dependency>
348
349         <dependency>
350             <groupId>org.hamcrest</groupId>
351             <artifactId>hamcrest-library</artifactId>
352             <scope>test</scope>
353         </dependency>
354
355     </dependencies>
356
357     <profiles>
358         <profile>
359             <id>docker</id>
360             <build>
361                 <plugins>
362                     <plugin>
363                         <groupId>org.codehaus.mojo</groupId>
364                         <artifactId>build-helper-maven-plugin</artifactId>
365                         <version>3.0.0</version>
366                         <executions>
367                             <execution>
368                                 <phase>pre-clean</phase>
369                                 <id>parse-version</id>
370                                 <goals>
371                                     <goal>parse-version</goal>
372                                 </goals>
373                             </execution>
374                         </executions>
375                     </plugin>
376                     <plugin>
377                         <groupId>org.codehaus.groovy.maven</groupId>
378                         <artifactId>gmaven-plugin</artifactId>
379                         <version>1.0</version>
380                         <executions>
381                             <execution>
382                                 <phase>pre-clean</phase>
383                                 <goals>
384                                     <goal>execute</goal>
385                                 </goals>
386                                 <configuration>
387                                     <source>
388                                         def userAaiBaseImage = session.userProperties['aai.base.image']
389                                         def userAaiCommonVersion = session.userProperties['aai.base.image.version']
390                                         if (userAaiCommonVersion != null) {
391                                             project.properties['aai.base.image.version'] = userAaiCommonVersion
392                                         }
393                                         if (userAaiBaseImage != null) {
394                                             project.properties['aai.base.image'] = userAaiBaseImage
395                                         }
396                                         log.info 'Base image flavour: ' + project.properties['aai.base.image']
397                                         log.info 'Base image version: ' + project.properties['aai.base.image.version']
398                                     </source>
399                                 </configuration>
400                             </execution>
401                         </executions>
402                     </plugin>
403                     <plugin>
404                         <groupId>io.fabric8</groupId>
405                         <artifactId>docker-maven-plugin</artifactId>
406                         <version>${docker.fabric.version}</version>
407                         <configuration>
408                             <verbose>true</verbose>
409                             <apiVersion>1.23</apiVersion>
410                             <images>
411                                 <image>
412                                     <name>${docker.push.registry}/${aai.docker.namespace}/${docker.image.name}:%l
413                                     </name>
414                                     <build>
415                                         <filter>@</filter>
416                                         <tags>
417                                             <tag>latest</tag>
418                                             <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-latest</tag>
419                                             <tag>${parsedVersion.majorVersion}.${parsedVersion.minorVersion}-STAGING-${maven.build.timestamp}</tag>
420                                         </tags>
421                                         <cleanup>try</cleanup>
422                                         <dockerFileDir>${project.basedir}/src/main/docker</dockerFileDir>
423                                         <assembly>
424                                             <inline>
425                                                 <fileSets>
426                                                     <fileSet>
427                                                         <directory>${aai.build.directory}</directory>
428                                                         <outputDirectory>/${project.artifactId}</outputDirectory>
429                                                     </fileSet>
430                                                 </fileSets>
431                                             </inline>
432                                         </assembly>
433                                     </build>
434                                 </image>
435                             </images>
436                         </configuration>
437                         <executions>
438                             <execution>
439                                 <id>clean-images</id>
440                                 <phase>pre-clean</phase>
441                                 <goals>
442                                     <goal>remove</goal>
443                                 </goals>
444                                 <configuration>
445                                     <removeAll>true</removeAll>
446                                 </configuration>
447                             </execution>
448                             <execution>
449                                 <id>generate-images</id>
450                                 <phase>package</phase>
451                                 <goals>
452                                     <goal>build</goal>
453                                 </goals>
454                             </execution>
455                             <execution>
456                                 <id>push-images</id>
457                                 <phase>deploy</phase>
458                                 <goals>
459                                     <goal>push</goal>
460                                 </goals>
461                             </execution>
462                         </executions>
463                     </plugin>
464                 </plugins>
465             </build>
466         </profile>
467     </profiles>
468
469     <build>
470         <finalName>${project.artifactId}</finalName>
471         <resources>
472             <resource>
473                 <directory>${project.basedir}/src/main/resources</directory>
474             </resource>
475             <resource>
476                 <directory>${project.basedir}/config/portal/BOOT-INF/classes</directory>
477                 <filtering>true</filtering>
478                 <includes>
479                     <include>*.properties</include>
480                 </includes>
481             </resource>
482         </resources>
483         <pluginManagement>
484             <plugins>
485                 <plugin>
486                     <groupId>org.apache.maven.plugins</groupId>
487                     <artifactId>maven-compiler-plugin</artifactId>
488                     <configuration>
489                         <release>11</release>
490                     </configuration>
491                 </plugin>
492             </plugins>
493         </pluginManagement>
494
495         <plugins>
496             <plugin>
497                 <groupId>org.springframework.boot</groupId>
498                 <artifactId>spring-boot-maven-plugin</artifactId>
499                 <configuration>
500                     <folders>
501                         <folder>
502                             ${CONFIG_HOME}/portal/BOOT-INF/classes/
503                         </folder>
504                     </folders>
505                 </configuration>
506                 <executions>
507                     <execution>
508                         <phase>package</phase>
509                         <goals>
510                             <goal>repackage</goal>
511                         </goals>
512                     </execution>
513                 </executions>
514             </plugin>
515
516             <plugin>
517                 <artifactId>maven-assembly-plugin</artifactId>
518                 <configuration>
519                     <descriptors>
520                         <descriptor>src/main/assembly/descriptor.xml</descriptor>
521                     </descriptors>
522                 </configuration>
523                 <executions>
524                     <execution>
525                         <id>make-assembly</id>
526                         <phase>package</phase>
527                         <goals>
528                             <goal>single</goal>
529                         </goals>
530                     </execution>
531                 </executions>
532             </plugin>
533
534             <plugin>
535                 <groupId>org.apache.maven.plugins</groupId>
536                 <artifactId>maven-dependency-plugin</artifactId>
537                 <version>3.0.0</version>
538                 <executions>
539                     <execution>
540                         <id>copy-war-to-target</id>
541                         <phase>prepare-package</phase>
542                         <goals>
543                             <goal>unpack</goal>
544                         </goals>
545                         <configuration>
546                             <artifactItems>
547                                 <artifactItem>
548                                     <groupId>${frontEndGroupdId}</groupId>
549                                     <artifactId>${frontEndArtifactId}</artifactId>
550                                     <version>${frontEndVersion}</version>
551                                     <type>war</type>
552                                     <outputDirectory>${aai.build.directory}/static/services/aai/webapp/
553                                     </outputDirectory>
554                                 </artifactItem>
555                             </artifactItems>
556                         </configuration>
557                     </execution>
558                     <execution>
559                         <id>unpack</id>
560                         <phase>prepare-package</phase>
561                         <goals>
562                             <goal>unpack</goal>
563                         </goals>
564                         <configuration>
565                             <artifactItems>
566                                 <artifactItem>
567                                     <groupId>org.onap.aai.schema-service</groupId>
568                                     <artifactId>aai-schema</artifactId>
569                                     <version>${version.aai-schema}</version>
570                                     <type>jar</type>
571                                     <includes>/${shemaUnpackVersion}/oxm/</includes>
572                                     <outputDirectory>${aai.build.directory}</outputDirectory>
573                                 </artifactItem>
574                             </artifactItems>
575                         </configuration>
576                     </execution>
577                 </executions>
578             </plugin>
579
580             <plugin>
581                 <groupId>org.codehaus.mojo</groupId>
582                 <artifactId>cobertura-maven-plugin</artifactId>
583                 <executions>
584                     <execution>
585                         <phase/>
586                     </execution>
587                 </executions>
588             </plugin>
589
590             <plugin>
591                 <groupId>org.apache.maven.plugins</groupId>
592                 <artifactId>maven-site-plugin</artifactId>
593                 <configuration>
594                     <reportPlugins>
595                         <plugin>
596                             <groupId>org.apache.maven.plugins</groupId>
597                             <artifactId>maven-checkstyle-plugin</artifactId>
598                             <version>2.17</version>
599                             <reportSets>
600                                 <reportSet>
601                                     <reports>
602                                         <report>checkstyle</report>
603                                     </reports>
604                                 </reportSet>
605                             </reportSets>
606                         </plugin>
607                     </reportPlugins>
608                 </configuration>
609             </plugin>
610
611             <!-- <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId>
612                 <version>2.7</version> <executions> <execution> <id>copy-docker-file</id>
613                 <phase>package</phase> <goals> <goal>copy-resources</goal> </goals> <configuration>
614                 <outputDirectory>target</outputDirectory> <overwrite>true</overwrite> <resources>
615                 <resource> <directory>${basedir}/src/main/docker</directory> <filtering>true</filtering>
616                 <includes> <include>**/*</include> </includes> </resource> <resource> <directory>${basedir}/src/main/scripts/</directory>
617                 </resource> </resources> </configuration> </execution> </executions> </plugin> -->
618             <plugin>
619                 <groupId>org.apache.maven.plugins</groupId>
620                 <artifactId>maven-deploy-plugin</artifactId>
621             </plugin>
622             <!-- license plugin -->
623             <!-- <plugin> <groupId>com.mycila</groupId> <artifactId>license-maven-plugin</artifactId>
624                 <version>3.0</version> <configuration> <header>LICENSE</header> <includes>
625                 <include>src/main/java/**</include> </includes> </configuration> <executions>
626                 <execution> <goals> <goal>format</goal> </goals> <phase>process-sources</phase>
627                 </execution> </executions> </plugin> -->
628         </plugins>
629     </build>
630
631     <distributionManagement>
632         <repository>
633             <id>ecomp-releases</id>
634             <name>ECOMP Release Repository</name>
635             <url>${nexusproxy}/content/repositories/releases/</url>
636         </repository>
637         <snapshotRepository>
638             <id>ecomp-snapshots</id>
639             <name>ECOMP Snapshot Repository</name>
640             <url>${nexusproxy}/content/repositories/snapshots/</url>
641         </snapshotRepository>
642     </distributionManagement>
643
644     <repositories>
645         <repository>
646             <id>central</id>
647             <name>Maven 2 repository 2</name>
648             <url>http://repo2.maven.org/maven2/</url>
649         </repository>
650         <repository>
651             <id>ecomp-releases</id>
652             <name>ECOMP Release Repository</name>
653             <url>${nexusproxy}/content/repositories/releases/</url>
654         </repository>
655         <repository>
656             <id>ecomp-staging</id>
657             <name>ECOMP Staging Repository</name>
658             <url>${nexusproxy}/content/repositories/staging/</url>
659         </repository>
660         <repository>
661             <id>ecomp-snapshots</id>
662             <name>ECOMP Snapshot Repository</name>
663             <url>${nexusproxy}/content/repositories/snapshots/</url>
664         </repository>
665     </repositories>
666 </project>