AAI-2198 Consistent code style in gizmo
[aai/gizmo.git] / pom.xml
1 <!--
2 ============LICENSE_START=======================================================
3 org.onap.aai
4 ================================================================================
5 Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
6 Copyright © 2017-2018 Amdocs
7 ================================================================================
8 Licensed under the Apache License, Version 2.0 (the "License");
9 you may not use this file except in compliance with the License.
10 You may obtain a copy of the License at
11
12       http://www.apache.org/licenses/LICENSE-2.0
13
14 Unless required by applicable law or agreed to in writing, software
15 distributed under the License is distributed on an "AS IS" BASIS,
16 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 See the License for the specific language governing permissions and
18 limitations under the License.
19 ============LICENSE_END=========================================================
20 -->
21 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
22     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
23     <modelVersion>4.0.0</modelVersion>
24
25     <parent>
26         <groupId>org.onap.oparent</groupId>
27         <artifactId>oparent</artifactId>
28         <version>1.2.0</version>
29         <relativePath />
30     </parent>
31
32     <groupId>org.onap.aai.gizmo</groupId>
33     <artifactId>gizmo</artifactId>
34     <version>1.4.0-SNAPSHOT</version>
35     <name>aai-gizmo</name>
36
37     <properties>
38         <docker.location>${basedir}/target</docker.location>
39         <version.org.onap.aai.aai-common>1.4.1-SNAPSHOT</version.org.onap.aai.aai-common>
40         <event.client.version>1.3.1</event.client.version>
41     </properties>
42
43     <dependencyManagement>
44         <dependencies>
45             <dependency>
46                 <!-- Import dependency management from Spring Boot -->
47                 <groupId>org.springframework.boot</groupId>
48                 <artifactId>spring-boot-dependencies</artifactId>
49                 <version>1.5.18.RELEASE</version>
50                 <type>pom</type>
51                 <scope>import</scope>
52             </dependency>
53         </dependencies>
54     </dependencyManagement>
55
56     <dependencies>
57         <dependency>
58             <groupId>org.springframework.boot</groupId>
59             <artifactId>spring-boot-starter-web</artifactId>
60             <exclusions>
61                 <exclusion>
62                     <groupId>org.springframework.boot</groupId>
63                     <artifactId>spring-boot-starter-tomcat</artifactId>
64                 </exclusion>
65             </exclusions>
66         </dependency>
67         <dependency>
68             <groupId>org.springframework.boot</groupId>
69             <artifactId>spring-boot-starter-jetty</artifactId>
70         </dependency>
71         <dependency>
72             <groupId>org.springframework.boot</groupId>
73             <artifactId>spring-boot-starter</artifactId>
74             <exclusions>
75                 <exclusion>
76                     <groupId>ch.qos.logback</groupId>
77                     <artifactId>logback-classic</artifactId>
78                 </exclusion>
79             </exclusions>
80         </dependency>
81         <dependency>
82             <groupId>org.springframework.boot</groupId>
83             <artifactId>spring-boot-starter-jersey</artifactId>
84             <exclusions>
85                 <exclusion>
86                     <groupId>org.springframework.boot</groupId>
87                     <artifactId>spring-boot-starter-tomcat</artifactId>
88                 </exclusion>
89             </exclusions>
90         </dependency>
91         <dependency>
92             <groupId>org.springframework.boot</groupId>
93             <artifactId>spring-boot-starter-actuator</artifactId>
94         </dependency>
95         <dependency>
96             <groupId>org.springframework.boot</groupId>
97             <artifactId>spring-boot-configuration-processor</artifactId>
98             <optional>true</optional>
99         </dependency>
100         <dependency>
101             <groupId>org.springframework.boot</groupId>
102             <artifactId>spring-boot-starter-test</artifactId>
103             <scope>test</scope>
104         </dependency>
105         <dependency>
106             <groupId>org.apache.cxf</groupId>
107             <artifactId>cxf-rt-frontend-jaxrs</artifactId>
108             <version>3.2.5</version>
109         </dependency>
110         
111
112      <dependency>
113          <groupId>io.swagger</groupId>
114          <artifactId>swagger-jersey2-jaxrs</artifactId>
115          <version>1.5.8</version>
116       </dependency>
117       <dependency>
118          <groupId>io.springfox</groupId>
119          <artifactId>springfox-swagger2</artifactId>
120          <version>2.9.2</version>
121       </dependency>
122             <dependency>
123          <groupId>io.springfox</groupId>
124          <artifactId>springfox-swagger-ui</artifactId>
125          <version>2.9.2</version>
126       </dependency>
127       
128
129         <!-- ONAP AAI-COMMON (incl. model) -->
130         <dependency>
131             <groupId>org.onap.aai.aai-common</groupId>
132             <artifactId>aai-schema</artifactId>
133             <version>${version.org.onap.aai.aai-common}</version>
134         </dependency>
135         <dependency>
136             <groupId>org.onap.aai.aai-common</groupId>
137             <artifactId>aai-schema-ingest</artifactId>
138             <version>${version.org.onap.aai.aai-common}</version>
139             <exclusions>
140                 <exclusion>
141                   <groupId>org.powermock</groupId>
142                   <artifactId>*</artifactId>
143                 </exclusion>
144             </exclusions>
145         </dependency>
146         <dependency>
147             <groupId>org.onap.aai.aai-common</groupId>
148             <artifactId>aai-utils</artifactId>
149             <version>${version.org.onap.aai.aai-common}</version>
150         </dependency>
151         <dependency>
152             <groupId>org.onap.aai.aai-common</groupId>
153             <artifactId>aai-auth</artifactId>
154             <version>${version.org.onap.aai.aai-common}</version>
155         </dependency>
156
157         <!-- ONAP EVENT CLIENT -->
158         <dependency>
159             <groupId>org.onap.aai.event-client</groupId>
160             <artifactId>event-client-dmaap</artifactId>
161            <version>${event.client.version}</version>
162             <exclusions>
163                 <exclusion>
164                     <groupId>org.slf4j</groupId>
165                     <artifactId>slf4j-api</artifactId>
166                 </exclusion>
167             </exclusions>
168         </dependency>
169         <dependency>
170             <groupId>org.onap.aai.event-client</groupId>
171             <artifactId>event-client-kafka</artifactId>
172            <version>${event.client.version}</version>
173             <exclusions>
174                 <exclusion>
175                     <groupId>org.slf4j</groupId>
176                     <artifactId>slf4j-api</artifactId>
177                 </exclusion>
178             </exclusions>
179         </dependency>
180
181         <dependency>
182            <groupId>org.onap.aai.event-client</groupId>
183            <artifactId>event-client-rabbitmq</artifactId>
184            <version>${event.client.version}</version>
185             <exclusions>
186                 <exclusion>
187                     <groupId>org.slf4j</groupId>
188                     <artifactId>slf4j-api</artifactId>
189                 </exclusion>
190             </exclusions>
191         </dependency>
192
193         <!-- ONAP COMMON LOGGING -->
194         <dependency>
195             <groupId>org.onap.aai.logging-service</groupId>
196             <artifactId>common-logging</artifactId>
197             <version>1.2.2</version>
198             <exclusions>
199                 <exclusion>
200                     <groupId>ch.qos.logback</groupId>
201                     <artifactId>logback-classic</artifactId>
202                 </exclusion>
203                 <exclusion>
204                     <groupId>ch.qos.logback</groupId>
205                     <artifactId>logback-core</artifactId>
206                 </exclusion>
207                 <exclusion>
208                     <groupId>org.slf4j</groupId>
209                     <artifactId>slf4j-api</artifactId>
210                 </exclusion>
211             </exclusions>
212         </dependency>
213
214         <!-- ONAP REST CLIENT -->
215         <dependency>
216             <groupId>org.onap.aai</groupId>
217             <artifactId>rest-client</artifactId>
218             <version>1.2.1</version>
219         </dependency>
220
221         <dependency>
222             <groupId>ch.qos.logback</groupId>
223             <artifactId>logback-classic</artifactId>
224             <version>1.2.3</version>
225         </dependency>
226         <dependency>
227             <groupId>ch.qos.logback</groupId>
228             <artifactId>logback-core</artifactId>
229             <version>1.2.3</version>
230             <exclusions>
231                 <exclusion>
232                     <groupId>ch.qos.logback</groupId>
233                     <artifactId>logback-classic</artifactId>
234                 </exclusion>
235             </exclusions>
236         </dependency>
237         <dependency>
238             <groupId>ch.qos.logback</groupId>
239             <artifactId>logback-access</artifactId>
240             <version>1.2.3</version>
241         </dependency>
242         <dependency>
243             <groupId>com.google.guava</groupId>
244             <artifactId>guava</artifactId>
245         </dependency>
246         <dependency>
247             <groupId>radeox</groupId>
248             <artifactId>radeox</artifactId>
249             <version>1.0-b2</version>
250         </dependency>
251         <dependency>
252             <groupId>org.codehaus.jackson</groupId>
253             <artifactId>jackson-mapper-asl</artifactId>
254             <version>1.4.5</version>
255         </dependency>
256         <dependency>
257             <groupId>commons-io</groupId>
258             <artifactId>commons-io</artifactId>
259             <version>2.4</version>
260         </dependency>
261         <dependency>
262             <groupId>org.apache.commons</groupId>
263             <artifactId>commons-lang3</artifactId>
264             <version>3.3.1</version>
265         </dependency>
266         <dependency>
267             <groupId>com.google.code.gson</groupId>
268             <artifactId>gson</artifactId>
269             <version>2.6.2</version>
270         </dependency>
271         <dependency>
272             <groupId>org.eclipse.persistence</groupId>
273             <artifactId>eclipselink</artifactId>
274             <version>2.6.2</version>
275         </dependency>
276         <dependency>
277             <groupId>net.dongliu</groupId>
278             <artifactId>gson-java8-datatype</artifactId>
279             <version>1.0.3</version>
280         </dependency>
281         <dependency>
282             <groupId>com.jayway.jsonpath</groupId>
283             <artifactId>json-path</artifactId>
284             <version>2.2.0</version>
285             <exclusions>
286                 <exclusion>
287                     <groupId>org.slf4j</groupId>
288                     <artifactId>slf4j-api</artifactId>
289                 </exclusion>
290             </exclusions>
291         </dependency>
292         <dependency>
293             <groupId>org.apache.tinkerpop</groupId>
294             <artifactId>gremlin-core</artifactId>
295             <version>3.2.3</version>
296             <scope>provided</scope>
297             <exclusions>
298                 <exclusion>
299                     <groupId>org.slf4j</groupId>
300                     <artifactId>slf4j-log4j12</artifactId>
301                 </exclusion>
302                 <exclusion>
303                     <groupId>org.slf4j</groupId>
304                     <artifactId>jcl-over-slf4j</artifactId>
305                 </exclusion>
306                 <exclusion>
307                     <groupId>org.slf4j</groupId>
308                     <artifactId>slf4j-api</artifactId>
309                 </exclusion>
310             </exclusions>
311         </dependency>
312         <dependency>
313             <groupId>org.apache.tinkerpop</groupId>
314             <artifactId>tinkergraph-gremlin</artifactId>
315             <version>3.2.3</version>
316             <scope>provided</scope>
317         </dependency>
318         <dependency>
319             <groupId>org.json</groupId>
320             <artifactId>json</artifactId>
321             <version>20160212</version>
322         </dependency>
323         <dependency>
324             <groupId>org.apache.httpcomponents</groupId>
325             <artifactId>httpclient</artifactId>
326             <version>4.5.3</version>
327         </dependency>
328         <dependency>
329             <groupId>org.apache.httpcomponents</groupId>
330             <artifactId>httpcore</artifactId>
331             <version>4.4.1</version>
332         </dependency>
333
334         <!-- TEST DEPENDENCIES -->
335         <dependency>
336             <groupId>junit</groupId>
337             <artifactId>junit</artifactId>
338         </dependency>
339         <dependency>
340             <groupId>org.skyscreamer</groupId>
341             <artifactId>jsonassert</artifactId>
342             <version>1.5.0</version>
343             <scope>test</scope>
344         </dependency>
345         <dependency>
346             <groupId>org.mockito</groupId>
347             <artifactId>mockito-core</artifactId>
348             <version>2.15.0</version>
349             <scope>test</scope>
350             <exclusions>
351                 <exclusion>
352                     <groupId>org.hamcrest</groupId>
353                     <artifactId>hamcrest-library</artifactId>
354                 </exclusion>
355             </exclusions>
356         </dependency>
357     </dependencies>
358
359     <build>
360         <finalName>${project.artifactId}</finalName>
361         <plugins>
362             <!--
363             Using https://code.revelc.net/formatter-maven-plugin/ for Eclipse formatter
364             Using https://github.com/diffplug/spotless/tree/master/plugin-maven for import order
365             Use in combination to rewrite code and imports, then checkstyle
366             
367             mvn formatter:format spotless:apply process-sources
368             -->
369             <plugin>
370                  <groupId>net.revelc.code.formatter</groupId>
371                  <artifactId>formatter-maven-plugin</artifactId>
372                  <version>2.8.1</version>
373                  <configuration>
374                     <configFile>${project.basedir}/onap-java-formatter.xml</configFile>
375                  </configuration>
376                  <!-- https://code.revelc.net/formatter-maven-plugin/
377                       use mvn formatter:format to rewrite source files
378                       use mvn formatter:validate to validate source files -->
379              </plugin>
380             <plugin>
381               <groupId>com.diffplug.spotless</groupId>
382               <artifactId>spotless-maven-plugin</artifactId>
383               <version>1.18.0</version>
384               <configuration>
385                 <java>
386                  <importOrder>
387                    <order>com,java,javax,org</order>
388                  </importOrder>
389                 </java>
390               </configuration>
391             <!-- https://github.com/diffplug/spotless/tree/master/plugin-maven
392                  use mvn spotless:apply to rewrite source files
393                  use mvn spotless:check to validate source files -->
394             </plugin>
395             <plugin>
396                 <groupId>org.apache.maven.plugins</groupId>
397                 <artifactId>maven-resources-plugin</artifactId>
398                 <version>2.7</version>
399                 <executions>
400                     <execution>
401                         <id>copy-docker-file</id>
402                         <phase>package</phase>
403                         <goals>
404                             <goal>copy-resources</goal>
405                         </goals>
406                         <configuration>
407                             <outputDirectory>target</outputDirectory>
408                             <overwrite>true</overwrite>
409                             <resources>
410                                 <resource>
411                                     <directory>${basedir}/src/main/docker</directory>
412                                     <filtering>true</filtering>
413                                     <includes>
414                                         <include>**/*</include>
415                                     </includes>
416                                 </resource>
417                                 <resource>
418                                     <directory>${basedir}</directory>
419                                     <filtering>true</filtering>
420                                     <includes>
421                                         <include>bundleconfig-local/**</include>
422                                     </includes>
423                                 </resource>
424                                 <resource>
425                                     <directory>${basedir}/src/main/bin/</directory>
426                                 </resource>
427                             </resources>
428                         </configuration>
429                     </execution>
430                 </executions>
431             </plugin>
432
433             <plugin>
434                 <groupId>com.spotify</groupId>
435                 <artifactId>docker-maven-plugin</artifactId>
436                 <version>0.4.11</version>
437                 <configuration>
438                     <verbose>true</verbose>
439                     <serverId>docker-hub</serverId>
440                     <imageName>${docker.push.registry}/onap/${project.artifactId}</imageName>
441                     <dockerDirectory>${docker.location}</dockerDirectory>
442                     <imageTags>
443                         <imageTag>latest</imageTag>
444                     </imageTags>
445                     <forceTags>true</forceTags>
446                 </configuration>
447             </plugin>
448
449             <!-- license plugin -->
450             <!-- Uncomment this to add a license header to every source file -->
451             <plugin>
452                 <groupId>com.mycila</groupId>
453                 <artifactId>license-maven-plugin</artifactId>
454                 <version>3.0</version>
455                 <configuration>
456                     <header>License.txt</header>
457                     <includes>
458                         <include>src/main/java/**</include>
459                         <include>src/test/java/**</include>
460                         <include>pom.xml</include>
461                     </includes>
462                     <skipExistingHeaders>true</skipExistingHeaders>
463                 </configuration>
464                 <executions>
465                     <execution>
466                         <goals>
467                             <!-- Set goal from "check" to "format" to auto update license headers -->
468                             <goal>check</goal>
469                         </goals>
470                         <phase>process-sources</phase>
471                     </execution>
472                 </executions>
473             </plugin>
474
475             <plugin>
476                 <groupId>org.apache.maven.plugins</groupId>
477                 <artifactId>maven-site-plugin</artifactId>
478                 <version>3.3</version>
479                 <configuration>
480                     <reportPlugins>
481                         <plugin>
482                             <groupId>org.apache.maven.plugins</groupId>
483                             <artifactId>maven-checkstyle-plugin</artifactId>
484                             <version>2.17</version>
485                             <reportSets>
486                                 <reportSet>
487                                     <reports>
488                                         <report>checkstyle</report>
489                                     </reports>
490                                 </reportSet>
491                             </reportSets>
492                         </plugin>
493                     </reportPlugins>
494                 </configuration>
495             </plugin>
496             <plugin>
497                 <groupId>org.apache.maven.plugins</groupId>
498                 <artifactId>maven-deploy-plugin</artifactId>
499                 <configuration>
500                     <skip>true</skip>
501                 </configuration>
502             </plugin>
503             <plugin>
504                 <groupId>org.springframework.boot</groupId>
505                 <artifactId>spring-boot-maven-plugin</artifactId>
506                 <version>2.0.1.RELEASE</version>
507                 <executions>
508                     <execution>
509                         <goals>
510                             <goal>repackage</goal>
511                         </goals>
512                     </execution>
513                 </executions>
514             </plugin>
515             <plugin>
516                 <groupId>org.apache.maven.plugins</groupId>
517                 <artifactId>maven-dependency-plugin</artifactId>
518                 <executions>
519                     <execution>
520                         <id>unpack</id>
521                         <phase>prepare-package</phase>
522                         <goals>
523                             <goal>unpack</goal>
524                         </goals>
525                         <configuration>
526                             <artifactItems>
527                                 <artifactItem>
528                                     <groupId>org.onap.aai.aai-common</groupId>
529                                     <artifactId>aai-schema</artifactId>
530                                     <version>${version.org.onap.aai.aai-common}</version>
531                                     <type>jar</type>
532                                     <includes>onap/**/</includes>
533                                     <outputDirectory>${project.build.directory}/bundleconfig-local/etc</outputDirectory>
534                                 </artifactItem>
535                             </artifactItems>
536                         </configuration>
537                     </execution>
538                 </executions>
539             </plugin>
540         </plugins>
541     </build>
542
543     <distributionManagement>
544         <site>
545             <id>ecomp-javadoc</id>
546             <url>dav:https://ecomp-nexus:8443/repository/aai/gizmo-javadoc/${project.version}</url>
547         </site>
548     </distributionManagement>
549 </project>