Update springboot
[aai/search-data-service.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
22 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
23          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
24     <modelVersion>4.0.0</modelVersion>
25
26     <parent>
27       <artifactId>spring-boot-starter-parent</artifactId>
28       <groupId>org.springframework.boot</groupId>
29       <version>1.5.12.RELEASE</version>
30     </parent>
31     <groupId>org.onap.aai</groupId>
32     <artifactId>search-data-service</artifactId>
33     <version>1.2.0-SNAPSHOT</version>
34     <name>aai-search-data-service</name>
35
36     <properties>
37         <docker.location>${basedir}/target</docker.location>
38         <nexusproxy>https://nexus.onap.org</nexusproxy>
39         <java.version>1.8</java.version>
40         <generatedSourceDir>${basedir}/src/main/java-gen</generatedSourceDir>
41         <checkstyle.config.location>google_checks.xml</checkstyle.config.location>
42
43         <sonar.language>java</sonar.language>
44         <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
45         <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports
46         </sonar.surefire.reportsPath>
47         <sonar.jacoco.reportPath>${project.build.directory}/coverage-reports/jacoco.exec
48         </sonar.jacoco.reportPath>
49         <sonar.jacoco.reportMissing.force.zero>false</sonar.jacoco.reportMissing.force.zero>
50         <sonar.projectVersion>${project.version}</sonar.projectVersion>
51     </properties>
52
53     <dependencies>
54
55         <dependency>
56             <groupId>com.google.code.gson</groupId>
57             <artifactId>gson</artifactId>
58             <version>2.8.2</version>
59         </dependency>
60
61         <dependency>
62             <groupId>org.hamcrest</groupId>
63             <artifactId>hamcrest-library</artifactId>
64             <version>1.3</version>
65             <scope>test</scope>
66         </dependency>
67
68         <dependency>
69             <groupId>com.jayway.jsonpath</groupId>
70             <artifactId>json-path</artifactId>
71             <version>2.2.0</version>
72             <scope>test</scope>
73         </dependency>
74
75         <dependency>
76             <groupId>com.googlecode.json-simple</groupId>
77             <artifactId>json-simple</artifactId>
78             <version>1.1.1</version>
79         </dependency>
80
81         <dependency>
82             <groupId>dom4j</groupId>
83             <artifactId>dom4j</artifactId>
84             <version>1.6.1</version>
85             <scope>provided</scope>
86         </dependency>
87
88         <dependency>
89             <groupId>commons-io</groupId>
90             <artifactId>commons-io</artifactId>
91             <version>2.4</version>
92         </dependency>
93
94         <dependency>
95             <groupId>org.mockito</groupId>
96             <artifactId>mockito-all</artifactId>
97             <version>1.10.19</version>
98             <scope>test</scope>
99         </dependency>
100
101         <!-- Common logging framework -->
102         <dependency>
103           <groupId>org.onap.aai.logging-service</groupId>
104           <artifactId>common-logging</artifactId>
105           <version>1.2.2</version>
106         </dependency>
107
108         <dependency>
109             <groupId>org.onap.aai.logging-service</groupId>
110             <artifactId>logging-api</artifactId>
111             <version>1.2.2</version>
112         </dependency>
113
114         <dependency>
115             <groupId>org.onap.aai.logging-service</groupId>
116             <artifactId>eelf-logging</artifactId>
117             <version>1.2.2</version>
118         </dependency>
119
120         <!-- For JSON Mapping Support. -->
121         <dependency>
122             <groupId>com.fasterxml.jackson.core</groupId>
123             <artifactId>jackson-databind</artifactId>
124             <version>2.7.8</version>
125         </dependency>
126
127         <dependency>
128           <groupId>edu.emory.mathcs.backport</groupId>
129           <artifactId>com.springsource.edu.emory.mathcs.backport</artifactId>
130           <version>3.1.0</version>
131           <scope>provided</scope>
132         </dependency>
133
134         <dependency>
135           <groupId>javax.ws.rs</groupId>
136           <artifactId>javax.ws.rs-api</artifactId>
137           <version>2.0</version>
138         </dependency>
139
140         <dependency>
141           <groupId>org.apache.directory.studio</groupId>
142           <artifactId>org.apache.commons.lang</artifactId>
143           <version>2.6</version>
144         </dependency>
145
146         <dependency>
147           <groupId>radeox</groupId>
148           <artifactId>radeox</artifactId>
149           <version>0.9</version>
150         </dependency>
151
152         <dependency>
153           <groupId>com.github.fge</groupId>
154           <artifactId>json-schema-validator</artifactId>
155           <version>2.0.0</version>
156         </dependency>
157
158         <dependency>
159           <groupId>org.json</groupId>
160           <artifactId>json</artifactId>
161           <version>20180130</version>
162         </dependency>
163
164         <dependency>
165           <groupId>org.springframework.boot</groupId>
166           <artifactId>spring-boot-starter-web</artifactId>
167         </dependency>
168
169         <dependency>
170           <groupId>org.springframework.boot</groupId>
171           <artifactId>spring-boot-starter-actuator</artifactId>
172         </dependency>
173
174         <dependency>
175             <groupId>org.springframework.boot</groupId>
176             <artifactId>spring-boot-starter-test</artifactId>
177             <scope>test</scope>
178         </dependency>
179
180         <dependency>
181             <groupId>org.eclipse.jetty</groupId>
182             <artifactId>jetty-security</artifactId>
183         </dependency>
184
185         <dependency>
186             <groupId>org.springframework.boot</groupId>
187             <artifactId>spring-boot-starter-security</artifactId>
188         </dependency>
189
190         <!--Logback classic-->
191         <dependency>
192             <groupId>ch.qos.logback</groupId>
193             <artifactId>logback-classic</artifactId>
194             <version>1.2.1</version>
195         </dependency>
196
197         <dependency>
198             <groupId>ch.qos.logback</groupId>
199             <artifactId>logback-core</artifactId>
200             <version>1.2.1</version>
201         </dependency>
202
203     </dependencies>
204
205     <repositories>
206         <repository>
207             <id>central</id>
208             <name>Maven 2 repository 2</name>
209             <url>http://repo2.maven.org/maven2/</url>
210         </repository>
211         <repository>
212             <id>ecomp-releases</id>
213             <name>ECOMP Release Repository</name>
214             <url>${nexusproxy}/content/repositories/releases/</url>
215         </repository>
216         <repository>
217             <id>ecomp-snapshots</id>
218             <name>ECOMP Snapshot Repository</name>
219             <url>${nexusproxy}/content/repositories/snapshots/</url>
220         </repository>
221         <repository>
222             <id>ecomp-staging</id>
223             <name>ECOMP Staging Repository</name>
224             <url>${nexusproxy}/content/repositories/staging/</url>
225         </repository>
226     </repositories>
227
228     <build>
229         <finalName>search-data-service-package</finalName>
230       <plugins>
231             <plugin>
232           <groupId>org.springframework.boot</groupId>
233           <artifactId>spring-boot-maven-plugin</artifactId>
234         </plugin>
235             <!-- Checkstyle plugin - used to report on compliance with -->
236             <!-- the Google style guide. -->
237             <plugin>
238                 <groupId>org.apache.maven.plugins</groupId>
239                 <artifactId>maven-site-plugin</artifactId>
240                 <configuration>
241                     <reportPlugins>
242                         <plugin>
243                             <groupId>org.apache.maven.plugins</groupId>
244                             <artifactId>maven-checkstyle-plugin</artifactId>
245                             <version>2.17</version>
246                             <reportSets>
247                                 <reportSet>
248                                     <reports>
249                                         <report>checkstyle</report>
250                                     </reports>
251                                 </reportSet>
252                             </reportSets>
253                         </plugin>
254                     </reportPlugins>
255                 </configuration>
256             </plugin>
257             <!-- This plugin overrides the compiler settings to use java 1.8 -->
258             <plugin>
259                 <groupId>org.apache.maven.plugins</groupId>
260                 <artifactId>maven-compiler-plugin</artifactId>
261                 <version>3.1</version>
262                 <configuration>
263                     <compilerId>groovy-eclipse-compiler</compilerId>
264                     <verbose>true</verbose>
265                     <source>1.8</source>
266                     <target>1.8</target>
267                 </configuration>
268                 <dependencies>
269                     <dependency>
270                         <groupId>org.codehaus.groovy</groupId>
271                         <artifactId>groovy-eclipse-compiler</artifactId>
272                         <version>2.9.0-01</version>
273                     </dependency>
274                     <dependency>
275                         <groupId>org.codehaus.groovy</groupId>
276                         <artifactId>groovy-eclipse-batch</artifactId>
277                         <version>2.3.4-01</version>
278                     </dependency>
279                 </dependencies>
280             </plugin>
281             <plugin>
282                 <groupId>com.spotify</groupId>
283                 <artifactId>docker-maven-plugin</artifactId>
284                 <version>0.4.11</version>
285                 <configuration>
286                     <verbose>true</verbose>
287                     <serverId>docker-hub</serverId>
288                     <imageName>${docker.push.registry}/onap/${project.artifactId}</imageName>
289                     <dockerDirectory>${docker.location}</dockerDirectory>
290                     <imageTags>
291                         <imageTag>latest</imageTag>
292                     </imageTags>
293                     <forceTags>true</forceTags>
294                 </configuration>
295             </plugin>
296             <plugin>
297                 <groupId>org.sonatype.plugins</groupId>
298                 <artifactId>nexus-staging-maven-plugin</artifactId>
299                 <version>1.6.7</version>
300                 <extensions>true</extensions>
301                 <configuration>
302                     <nexusUrl>${nexusproxy}</nexusUrl>
303                     <stagingProfileId>176c31dfe190a</stagingProfileId>
304                     <serverId>ecomp-staging</serverId>
305                 </configuration>
306             </plugin>
307
308             <!-- This plugin is used to generate Java POJO's from json format schema
309                 file. -->
310             <plugin>
311                 <groupId>org.jsonschema2pojo</groupId>
312                 <artifactId>jsonschema2pojo-maven-plugin</artifactId>
313                 <version>0.4.26</version>
314                 <configuration>
315                     <addCompileSourceRoot>true</addCompileSourceRoot>
316                     <sourceDirectory>${basedir}/src/main/resources/json/schema</sourceDirectory>
317                     <outputDirectory>${generatedSourceDir}</outputDirectory>
318                     <targetPackage>org.onap.aai.sa.rest</targetPackage>
319                 </configuration>
320                 <executions>
321                     <execution>
322                         <goals>
323                             <goal>generate</goal>
324                         </goals>
325                     </execution>
326                 </executions>
327             </plugin>
328
329             <plugin>
330                 <groupId>org.apache.maven.plugins</groupId>
331                 <artifactId>maven-resources-plugin</artifactId>
332                 <version>2.7</version>
333                 <executions>
334                     <execution>
335                         <id>copy-docker-file</id>
336                         <phase>package</phase>
337                         <goals>
338                             <goal>copy-resources</goal>
339                         </goals>
340                         <configuration>
341                             <outputDirectory>target</outputDirectory>
342                             <overwrite>true</overwrite>
343                             <resources>
344                                 <resource>
345                                     <directory>${basedir}/src/main/docker</directory>
346                                     <filtering>true</filtering>
347                                     <includes>
348                                         <include>**/*</include>
349                                     </includes>
350                                 </resource>
351                                 <resource>
352                                     <directory>${basedir}</directory>
353                                     <filtering>true</filtering>
354                                     <includes>
355                                         <include>bundleconfig-local/**</include>
356                                     </includes>
357                                 </resource>
358                                 <resource>
359                                     <directory>${basedir}/src/main/bin/</directory>
360                                 </resource>
361                             </resources>
362                         </configuration>
363                     </execution>
364                 </executions>
365             </plugin>
366             <!-- license plugin -->
367             <plugin>
368                 <groupId>com.mycila</groupId>
369                 <artifactId>license-maven-plugin</artifactId>
370                 <version>3.0</version>
371                 <configuration>
372                     <header>License.txt</header>
373                     <includes>
374                         <include>src/main/java/**</include>
375                         <include>src/test/java/**</include>
376                     </includes>
377                 </configuration>
378                 <executions>
379                     <execution>
380                         <goals>
381                             <goal>format</goal>
382                         </goals>
383                         <phase>process-sources</phase>
384                     </execution>
385                 </executions>
386             </plugin>
387
388             <plugin>
389                 <groupId>org.apache.maven.plugins</groupId>
390                 <artifactId>maven-deploy-plugin</artifactId>
391                 <configuration>
392                     <skip>true</skip>
393                 </configuration>
394             </plugin>
395             <plugin>
396                 <groupId>org.codehaus.mojo</groupId>
397                 <artifactId>sonar-maven-plugin</artifactId>
398                 <version>3.2</version>
399             </plugin>
400             <plugin>
401                 <groupId>org.jacoco</groupId>
402                 <artifactId>jacoco-maven-plugin</artifactId>
403                 <version>0.7.7.201606060606</version>
404                 <configuration>
405                     <dumpOnExit>true</dumpOnExit>
406                 </configuration>
407                 <executions>
408                     <execution>
409                         <id>jacoco-initialize-unit-tests</id>
410                         <goals>
411                             <goal>prepare-agent</goal>
412                         </goals>
413                         <configuration>
414                             <destFile>${project.build.directory}/coverage-reports/jacoco.exec
415                             </destFile>
416                             <!-- <append>true</append> -->
417                         </configuration>
418                     </execution>
419                 </executions>
420             </plugin>
421
422             <!-- This plugin adds the generated sources directory to the clean lifecycle
423                 so that automatically generated code will get cleaned up properly. -->
424             <plugin>
425                 <artifactId>maven-clean-plugin</artifactId>
426                 <version>3.0.0</version>
427                 <configuration>
428                     <filesets>
429                         <fileset>
430                             <directory>${generatedSourceDir}</directory>
431                         </fileset>
432                     </filesets>
433                 </configuration>
434             </plugin>
435         </plugins>
436     </build>
437     <distributionManagement>
438         <repository>
439             <id>ecomp-releases</id>
440             <name>ECOMP Release Repository</name>
441             <url>${nexusproxy}/content/repositories/releases/</url>
442         </repository>
443         <snapshotRepository>
444             <id>ecomp-snapshots</id>
445             <name>ECOMP Snapshot Repository</name>
446             <url>${nexusproxy}/content/repositories/snapshots/</url>
447         </snapshotRepository>
448         <site>
449             <id>ecomp-javadoc</id>
450             <url>dav:https://ecomp-nexus:8443/repository/aai/search-data-service-javadoc/${project.version}</url>
451         </site>
452     </distributionManagement>
453 </project>