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