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