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