Depend on released version of logging library
[aai/search-data-service.git] / 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         <artifactId>ajsc-archetype-parent</artifactId>
7         <groupId>com.att.ajsc</groupId>
8         <version>2.0.0</version>
9     </parent>
10     <groupId>org.onap.aai</groupId>
11     <artifactId>search-data-service</artifactId>
12     <version>1.2.0-SNAPSHOT</version>
13     <name>aai-search-data-service</name>
14
15     <properties>
16         <module.ajsc.namespace.name>search-data-service</module.ajsc.namespace.name>
17         <module.ajsc.namespace.version>v1</module.ajsc.namespace.version>
18         <ajscRuntimeVersion>2.0.0</ajscRuntimeVersion>
19         <absoluteDistFilesRoot>/appl/${project.artifactId}</absoluteDistFilesRoot>
20         <docker.location>${basedir}/target</docker.location>
21         <nexusproxy>https://nexus.onap.org</nexusproxy>
22
23         <!-- For NO Versioning, REMOVE the /${project.version} from the <distFilesRoot>
24             property, below. PLEASE, NOTE: If your ${project.version} is a "-SNAPSHOT"
25             version, THIS will be used as your directory structure. If you do NOT want
26             this, simply remove the "-SNAPSHOT" from your <version> declaration at the
27             top of pom.xml -->
28         <distFilesRoot>/appl/${project.artifactId}/${project.version}</distFilesRoot>
29         <runAjscHome>${basedir}/target/swm/package/nix/dist_files${distFilesRoot}</runAjscHome>
30
31         <!-- For SOA Cloud Installation -->
32         <installOwnerUser>aaiadmin</installOwnerUser>
33         <installOwnerGroup>aaiadmin</installOwnerGroup>
34         <ownerManagementGroup>com.att.csid.lab</ownerManagementGroup>
35
36         <!-- Port Selection. A value of 0 will allow for dynamic port selection.
37             For local testing, you may choose to hardcode this value to something like
38             8080 -->
39         <serverPort>8080</serverPort>
40         <sslport>9509</sslport>
41
42         <testRouteOffer>workstation</testRouteOffer>
43         <testEnv>DEV</testEnv>
44         <generatedSourceDir>${basedir}/src/main/java-gen</generatedSourceDir>
45         <checkstyle.config.location>google_checks.xml</checkstyle.config.location>
46
47         <sonar.language>java</sonar.language>
48         <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
49         <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports
50         </sonar.surefire.reportsPath>
51         <sonar.jacoco.reportPath>${project.build.directory}/coverage-reports/jacoco.exec
52         </sonar.jacoco.reportPath>
53         <sonar.jacoco.reportMissing.force.zero>false</sonar.jacoco.reportMissing.force.zero>
54         <sonar.projectVersion>${project.version}</sonar.projectVersion>
55     </properties>
56
57     <dependencies>
58
59         <dependency>
60             <groupId>com.googlecode.json-simple</groupId>
61             <artifactId>json-simple</artifactId>
62             <version>1.1.1</version>
63         </dependency>
64         <dependency>
65             <groupId>dom4j</groupId>
66             <artifactId>dom4j</artifactId>
67             <version>1.6.1</version>
68             <scope>provided</scope>
69         </dependency>
70
71         <dependency>
72             <groupId>com.att.aft</groupId>
73             <artifactId>dme2</artifactId>
74             <version>3.1.200</version>
75             <scope>provided</scope>
76         </dependency>
77
78
79         <dependency>
80             <groupId>org.elasticsearch</groupId>
81             <artifactId>elasticsearch</artifactId>
82             <version>2.3.1</version>
83         </dependency>
84         <dependency>
85             <groupId>commons-io</groupId>
86             <artifactId>commons-io</artifactId>
87             <version>2.4</version>
88         </dependency>
89
90
91         <!-- Common logging framework -->
92         <dependency>
93           <groupId>org.onap.aai.logging-service</groupId>
94           <artifactId>common-logging</artifactId>
95           <version>1.1.0</version>
96         </dependency>
97
98         <!--  Jersey Test Framework. -->
99         <dependency>
100             <groupId>org.glassfish.jersey.test-framework.providers</groupId>
101             <artifactId>jersey-test-framework-provider-grizzly2</artifactId>
102             <version>2.23.2</version>
103             <scope>test</scope>
104         </dependency>
105
106         <!-- For JSON Mapping Support. -->
107         <dependency>
108             <groupId>com.fasterxml.jackson.core</groupId>
109             <artifactId>jackson-databind</artifactId>
110             <version>2.7.8</version>
111         </dependency>
112
113     </dependencies>
114
115     <repositories>
116         <repository>
117             <id>central</id>
118             <name>Maven 2 repository 2</name>
119             <url>http://repo2.maven.org/maven2/</url>
120         </repository>
121         <repository>
122             <id>ecomp-releases</id>
123             <name>ECOMP Release Repository</name>
124             <url>${nexusproxy}/content/repositories/releases/</url>
125         </repository>
126         <repository>
127             <id>ecomp-snapshots</id>
128             <name>ECOMP Snapshot Repository</name>
129             <url>${nexusproxy}/content/repositories/snapshots/</url>
130         </repository>
131         <repository>
132             <id>ecomp-staging</id>
133             <name>ECOMP Staging Repository</name>
134             <url>${nexusproxy}/content/repositories/staging/</url>
135         </repository>
136
137     </repositories>
138
139     <profiles>
140         <profile>
141             <id>runAjsc</id>
142             <build>
143                 <defaultGoal>initialize</defaultGoal>
144                 <plugins>
145                     <plugin>
146                         <groupId>org.codehaus.mojo</groupId>
147                         <artifactId>exec-maven-plugin</artifactId>
148                         <version>1.3.2</version>
149                         <executions>
150                             <execution>
151                                 <phase>initialize</phase>
152                                 <goals>
153                                     <goal>java</goal>
154                                 </goals>
155                                 <configuration>
156                                     <includeProjectDependencies>false</includeProjectDependencies>
157                                     <includePluginDependencies>true</includePluginDependencies>
158                                     <executable>java</executable>
159                                     <mainClass>com.att.ajsc.runner.Runner</mainClass>
160                                     <executableDependency>
161                                         <groupId>com.att.ajsc</groupId>
162                                         <artifactId>ajsc-runner</artifactId>
163                                     </executableDependency>
164                                     <additionalClasspathElements>
165                                         <additionalClasspathElement>${basedir}/ajsc-shared-config/etc
166                                         </additionalClasspathElement>
167                                     </additionalClasspathElements>
168
169                                     <environmentVariables>
170                                         <AJSC_HOME>${runAjscHome}</AJSC_HOME>
171                                     </environmentVariables>
172
173                                     <!-- Main AJSC System Properties below (necessary for proper startup) -->
174                                     <systemProperties>
175                                         <systemProperty>
176                                             <key>AJSC_HOME</key>
177                                             <value>${runAjscHome}</value>
178                                         </systemProperty>
179                                         <systemProperty>
180                                             <key>CONFIG_HOME</key>
181                                             <value>${basedir}/appconfig-local/</value>
182                                         </systemProperty>
183                                         <systemProperty>
184                                             <key>AJSC_CONF_HOME</key>
185                                             <value>${basedir}/bundleconfig-local</value>
186                                         </systemProperty>
187                                         <systemProperty>
188                                             <key>logback.configurationFile</key>
189                                             <value>${basedir}/ajsc-shared-config/etc/logback.xml</value>
190                                         </systemProperty>
191                                         <systemProperty>
192                                             <key>AJSC_SHARED_CONFIG</key>
193                                             <value>${basedir}/ajsc-shared-config</value>
194                                         </systemProperty>
195
196                                         <sysproperty>
197                                             <key>AJSC_EXTERNAL_LIB_FOLDERS</key>
198                                             <value>${basedir}/target/commonLibs</value>
199                                         </sysproperty>
200                                         <sysproperty>
201                                             <key>AJSC_EXTERNAL_PROPERTIES_FOLDERS</key>
202                                             <value>${basedir}/ajsc-shared-config/etc</value>
203                                         </sysproperty>
204
205                                         <systemProperty>
206                                             <key>AJSC_SERVICE_NAMESPACE</key>
207                                             <value>${module.ajsc.namespace.name}</value>
208                                         </systemProperty>
209                                         <systemProperty>
210                                             <key>AJSC_SERVICE_VERSION</key>
211                                             <value>${module.ajsc.namespace.version}</value>
212                                         </systemProperty>
213                                         <systemProperty>
214                                             <key>SOACLOUD_SERVICE_VERSION</key>
215                                             <value>${project.version}</value>
216                                         </systemProperty>
217                                         <systemProperty>
218                                             <key>server.port</key>
219                                             <value>${serverPort}</value>
220                                         </systemProperty>
221                                     </systemProperties>
222
223                                     <!-- Command Line Arguments to add to the java command. Here, you
224                                         can specify the port as well as the Context you want your service to run
225                                         in. Use context=/ to run in an unnamed Context (Root Context). The default
226                                         configuration of the AJSC is to run under the / Context. Setting the port
227                                         here can aid during the development phase of your service. However, you can
228                                         leave this argument out entirely, and the AJSC will default to using an Ephemeral
229                                         port. -->
230                                     <arguments>
231                                         <argument>context=//</argument>
232                                         <argument>port=${serverPort}</argument>
233                                         <argument>sslport=${sslport}</argument>
234                                     </arguments>
235                                 </configuration>
236                             </execution>
237                         </executions>
238                         <configuration>
239                             <executable>java</executable>
240                         </configuration>
241                         <dependencies>
242                             <dependency>
243                                 <groupId>com.att.ajsc</groupId>
244                                 <artifactId>ajsc-runner</artifactId>
245                                 <version>${ajscRuntimeVersion}</version>
246                             </dependency>
247                         </dependencies>
248                     </plugin>
249                 </plugins>
250             </build>
251         </profile>
252     </profiles>
253     <dependencyManagement>
254         <dependencies>
255             <dependency>
256                 <groupId>ch.qos.logback</groupId>
257                 <artifactId>logback-classic</artifactId>
258                 <version>1.1.1</version>
259             </dependency>
260             <dependency>
261                 <groupId>com.fasterxml.jackson.core</groupId>
262                 <artifactId>jackson-core</artifactId>
263                 <version>2.7.8</version>
264             </dependency>
265         </dependencies>
266     </dependencyManagement>
267
268     <build>
269         <plugins>
270             <!-- Checkstyle plugin - used to report on compliance with -->
271             <!-- the Google style guide. -->
272             <plugin>
273                 <groupId>org.apache.maven.plugins</groupId>
274                 <artifactId>maven-site-plugin</artifactId>
275                 <version>3.3</version>
276                 <configuration>
277                     <reportPlugins>
278                         <plugin>
279                             <groupId>org.apache.maven.plugins</groupId>
280                             <artifactId>maven-checkstyle-plugin</artifactId>
281                             <version>2.17</version>
282                             <reportSets>
283                                 <reportSet>
284                                     <reports>
285                                         <report>checkstyle</report>
286                                     </reports>
287                                 </reportSet>
288                             </reportSets>
289                         </plugin>
290                     </reportPlugins>
291                 </configuration>
292             </plugin>
293             <!-- This plugin overrides the compiler settings to use java 1.8 -->
294             <plugin>
295                 <groupId>org.apache.maven.plugins</groupId>
296                 <artifactId>maven-compiler-plugin</artifactId>
297                 <version>3.1</version>
298                 <configuration>
299                     <compilerId>groovy-eclipse-compiler</compilerId>
300                     <verbose>true</verbose>
301                     <source>1.8</source>
302                     <target>1.8</target>
303                 </configuration>
304                 <dependencies>
305                     <dependency>
306                         <groupId>org.codehaus.groovy</groupId>
307                         <artifactId>groovy-eclipse-compiler</artifactId>
308                         <version>2.9.0-01</version>
309                     </dependency>
310                     <dependency>
311                         <groupId>org.codehaus.groovy</groupId>
312                         <artifactId>groovy-eclipse-batch</artifactId>
313                         <version>2.3.4-01</version>
314                     </dependency>
315                 </dependencies>
316             </plugin>
317             <plugin>
318                 <groupId>com.spotify</groupId>
319                 <artifactId>docker-maven-plugin</artifactId>
320                 <version>0.4.11</version>
321                 <configuration>
322                     <verbose>true</verbose>
323                     <serverId>docker-hub</serverId>
324                     <imageName>${docker.push.registry}/onap/${project.artifactId}</imageName>
325                     <dockerDirectory>${docker.location}</dockerDirectory>
326                     <imageTags>
327                         <imageTag>latest</imageTag>
328                     </imageTags>
329                     <forceTags>true</forceTags>
330                 </configuration>
331             </plugin>
332             <plugin>
333                 <groupId>org.sonatype.plugins</groupId>
334                 <artifactId>nexus-staging-maven-plugin</artifactId>
335                 <version>1.6.7</version>
336                 <extensions>true</extensions>
337                 <configuration>
338                     <nexusUrl>${nexusproxy}</nexusUrl>
339                     <stagingProfileId>176c31dfe190a</stagingProfileId>
340                     <serverId>ecomp-staging</serverId>
341                 </configuration>
342             </plugin>
343
344             <!-- This plugin is used to generate Java POJO's from json format schema
345                 file. -->
346             <plugin>
347                 <groupId>org.jsonschema2pojo</groupId>
348                 <artifactId>jsonschema2pojo-maven-plugin</artifactId>
349                 <version>0.4.26</version>
350                 <configuration>
351                     <addCompileSourceRoot>true</addCompileSourceRoot>
352                     <sourceDirectory>${basedir}/src/main/resources/json/schema</sourceDirectory>
353                     <outputDirectory>${generatedSourceDir}</outputDirectory>
354                     <targetPackage>org.onap.aai.sa.rest</targetPackage>
355                 </configuration>
356                 <executions>
357                     <execution>
358                         <goals>
359                             <goal>generate</goal>
360                         </goals>
361                     </execution>
362                 </executions>
363             </plugin>
364
365             <plugin>
366                 <groupId>org.apache.maven.plugins</groupId>
367                 <artifactId>maven-resources-plugin</artifactId>
368                 <version>2.7</version>
369                 <executions>
370                     <execution>
371                         <id>copy-docker-file</id>
372                         <phase>package</phase>
373                         <goals>
374                             <goal>copy-resources</goal>
375                         </goals>
376                         <configuration>
377                             <outputDirectory>target</outputDirectory>
378                             <overwrite>true</overwrite>
379                             <resources>
380                                 <resource>
381                                     <directory>${basedir}/src/main/docker</directory>
382                                     <filtering>true</filtering>
383                                     <includes>
384                                         <include>**/*</include>
385                                     </includes>
386                                 </resource>
387                                 <resource>
388                                     <directory>${basedir}/src/main/bin/</directory>
389                                 </resource>
390                             </resources>
391                         </configuration>
392                     </execution>
393                 </executions>
394             </plugin>
395             <!-- license plugin -->
396             <plugin>
397                 <groupId>com.mycila</groupId>
398                 <artifactId>license-maven-plugin</artifactId>
399                 <version>3.0</version>
400                 <configuration>
401                     <header>License.txt</header>
402                     <includes>
403                         <include>src/main/java/**</include>
404                         <include>src/test/java/**</include>
405                     </includes>
406                 </configuration>
407                 <executions>
408                     <execution>
409                         <goals>
410                             <goal>format</goal>
411                         </goals>
412                         <phase>process-sources</phase>
413                     </execution>
414                 </executions>
415             </plugin>
416
417             <plugin>
418                 <groupId>org.apache.maven.plugins</groupId>
419                 <artifactId>maven-deploy-plugin</artifactId>
420                 <configuration>
421                     <skip>true</skip>
422                 </configuration>
423             </plugin>
424             <plugin>
425                 <groupId>org.codehaus.mojo</groupId>
426                 <artifactId>sonar-maven-plugin</artifactId>
427                 <version>3.2</version>
428             </plugin>
429             <plugin>
430                 <groupId>org.jacoco</groupId>
431                 <artifactId>jacoco-maven-plugin</artifactId>
432                 <version>0.7.7.201606060606</version>
433                 <configuration>
434                     <dumpOnExit>true</dumpOnExit>
435                 </configuration>
436                 <executions>
437                     <execution>
438                         <id>jacoco-initialize-unit-tests</id>
439                         <goals>
440                             <goal>prepare-agent</goal>
441                         </goals>
442                         <configuration>
443                             <destFile>${project.build.directory}/coverage-reports/jacoco.exec
444                             </destFile>
445                             <!-- <append>true</append> -->
446                         </configuration>
447                     </execution>
448                 </executions>
449             </plugin>
450
451             <!-- This plugin adds the generated sources directory to the clean lifecycle
452                 so that automatically generated code will get cleaned up properly. -->
453             <plugin>
454                 <artifactId>maven-clean-plugin</artifactId>
455                 <version>3.0.0</version>
456                 <configuration>
457                     <filesets>
458                         <fileset>
459                             <directory>${generatedSourceDir}</directory>
460                         </fileset>
461                     </filesets>
462                 </configuration>
463             </plugin>
464         </plugins>
465     </build>
466     <distributionManagement>
467         <repository>
468             <id>ecomp-releases</id>
469             <name>ECOMP Release Repository</name>
470             <url>${nexusproxy}/content/repositories/releases/</url>
471         </repository>
472         <snapshotRepository>
473             <id>ecomp-snapshots</id>
474             <name>ECOMP Snapshot Repository</name>
475             <url>${nexusproxy}/content/repositories/snapshots/</url>
476         </snapshotRepository>
477         <site>
478             <id>ecomp-javadoc</id>
479             <url>dav:https://ecomp-nexus:8443/repository/aai/search-data-service-javadoc/${project.version}</url>
480         </site>
481     </distributionManagement>
482 </project>