Add name to the top level pom for 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
139         <dependency>
140             <groupId>com.jayway.jsonpath</groupId>
141             <artifactId>json-path</artifactId>
142             <version>2.2.0</version>
143         </dependency>
144                 
145                 <dependency>
146                 <groupId>org.apache.tinkerpop</groupId>
147             <artifactId>gremlin-core</artifactId> 
148             <version>3.1.0-incubating</version>
149             <exclusions>
150               <exclusion>
151                     <groupId>org.slf4j</groupId>
152                     <artifactId>slf4j-log4j12</artifactId>
153                 </exclusion>
154                 <exclusion>
155                     <groupId>org.slf4j</groupId>
156                     <artifactId>jcl-over-slf4j</artifactId>
157                 </exclusion>
158             </exclusions>
159         </dependency>
160                 
161         <!-- TEST Dependencies -->
162                 
163                 <dependency>
164             <groupId>org.apache.tinkerpop</groupId>
165             <artifactId>tinkergraph-gremlin</artifactId>
166             <version>3.2.3</version>
167             <scope>test</scope>
168         </dependency>
169
170
171
172         <dependency>
173             <groupId>org.json</groupId>
174             <artifactId>json</artifactId>
175             <version>20131018</version>
176         </dependency>
177         <dependency>
178             <groupId>junit</groupId>
179             <artifactId>junit</artifactId>
180         </dependency>
181
182     </dependencies>
183
184
185     <repositories>
186       <repository>
187         <id>central</id>
188         <name>Maven 2 repository 2</name>
189         <url>http://repo2.maven.org/maven2/</url>
190       </repository>
191       <repository>
192         <id>ecomp-releases</id>
193         <name>ECOMP Release Repository</name>
194         <url>${nexusproxy}/content/repositories/releases/</url>
195       </repository>
196       <repository>
197         <id>ecomp-snapshots</id>
198         <name>ECOMP Snapshot Repository</name>
199         <url>${nexusproxy}/content/repositories/snapshots/</url>
200       </repository>
201       <repository>
202         <id>ecomp-staging</id>
203         <name>ECOMP Staging Repository</name>
204         <url>${nexusproxy}/content/repositories/staging/</url>
205       </repository>
206
207     </repositories>
208
209     <build>
210         <plugins>
211             <plugin>
212                 <groupId>org.apache.maven.plugins</groupId>
213                 <artifactId>maven-resources-plugin</artifactId>
214                 <version>2.7</version>
215                 <executions>
216                     <execution>
217                         <id>copy-docker-file</id>
218                         <phase>package</phase>
219                         <goals>
220                             <goal>copy-resources</goal>
221                         </goals>
222                         <configuration>
223                             <outputDirectory>target</outputDirectory>
224                             <overwrite>true</overwrite>
225                             <resources>
226                                 <resource>
227                                     <directory>${basedir}/src/main/docker</directory>
228                                     <filtering>true</filtering>
229                                     <includes>
230                                         <include>**/*</include>
231                                     </includes>
232                                 </resource>
233                                 <resource>
234                                   <directory>${basedir}/src/main/bin/</directory>
235                                 </resource>
236                             </resources>
237                         </configuration>
238                     </execution>
239                 </executions>
240             </plugin>
241
242             <plugin>
243               <groupId>com.spotify</groupId>
244               <artifactId>docker-maven-plugin</artifactId>
245               <version>0.4.11</version>
246               <configuration>
247                 <verbose>true</verbose>
248                 <serverId>docker-hub</serverId>
249                 <imageName>${docker.push.registry}/openecomp/${project.artifactId}</imageName>
250                 <dockerDirectory>${docker.location}</dockerDirectory>
251                 <imageTags>
252                   <imageTag>latest</imageTag>
253                 </imageTags>
254                 <forceTags>true</forceTags>
255               </configuration>
256             </plugin>
257
258             <!-- license plugin -->
259             <plugin>
260                 <groupId>com.mycila</groupId>
261                 <artifactId>license-maven-plugin</artifactId>
262                 <version>3.0</version>
263                 <configuration>
264                     <header>License.txt</header>
265                     <includes>
266                         <include>src/main/java/**</include>
267                     </includes>
268                 </configuration>
269                 <executions>
270                     <execution>
271                         <goals>
272                             <goal>format</goal>
273                         </goals>
274                         <phase>process-sources</phase>
275                     </execution>
276                 </executions>
277             </plugin>
278
279             <plugin>
280                 <groupId>org.apache.maven.plugins</groupId>
281                 <artifactId>maven-site-plugin</artifactId>
282                 <version>3.3</version>
283                 <configuration>
284                     <reportPlugins>
285                         <plugin>
286                             <groupId>org.apache.maven.plugins</groupId>
287                             <artifactId>maven-checkstyle-plugin</artifactId>
288                             <version>2.17</version>
289                             <reportSets>
290                                 <reportSet>
291                                     <reports>
292                                       <report>checkstyle</report>
293                                     </reports>
294                                 </reportSet>
295                             </reportSets>
296                         </plugin>
297                     </reportPlugins>
298                 </configuration>
299             </plugin>
300
301             <plugin>
302               <groupId>org.apache.maven.plugins</groupId>
303               <artifactId>maven-deploy-plugin</artifactId>
304               <configuration>
305                 <skip>true</skip>
306               </configuration>
307             </plugin>
308
309             <plugin>
310               <groupId>org.codehaus.mojo</groupId>
311               <artifactId>sonar-maven-plugin</artifactId>
312               <version>3.2</version>
313             </plugin>
314
315             <plugin>
316               <groupId>org.jacoco</groupId>
317               <artifactId>jacoco-maven-plugin</artifactId>
318               <version>0.7.7.201606060606</version>
319               <configuration>
320                 <dumpOnExit>true</dumpOnExit>
321               </configuration>
322               <executions>
323                 <execution>
324                   <id>jacoco-initialize-unit-tests</id>
325                   <goals>
326                     <goal>prepare-agent</goal>
327                   </goals>
328                   <configuration>
329                     <destFile>${project.build.directory}/coverage-reports/jacoco.exec
330                     </destFile>
331                     <!-- <append>true</append> -->
332                   </configuration>
333                 </execution>
334               </executions>
335             </plugin>
336         </plugins>
337     </build>
338
339     <profiles>
340         <profile>
341             <id>runAjsc</id>
342             <build>
343                 <defaultGoal>initialize</defaultGoal>
344                 <plugins>
345                     <plugin>
346                         <groupId>org.codehaus.mojo</groupId>
347                         <artifactId>exec-maven-plugin</artifactId>
348                         <version>1.3.2</version>
349                         <executions>
350                             <execution>
351                                 <phase>initialize</phase>
352                                 <goals>
353                                     <goal>java</goal>
354                                 </goals>
355                                 <configuration>
356                                     <includeProjectDependencies>false</includeProjectDependencies>
357                                     <includePluginDependencies>true</includePluginDependencies>
358                                     <executable>java</executable>
359                                     <mainClass>com.att.ajsc.runner.Runner</mainClass>
360                                     <executableDependency>
361                                         <groupId>com.att.ajsc</groupId>
362                                         <artifactId>ajsc-runner</artifactId>
363                                     </executableDependency>
364                                     <additionalClasspathElements>
365                                         <additionalClasspathElement>
366                                             ${basedir}/ajsc-shared-config/etc
367                                         </additionalClasspathElement>
368                                     </additionalClasspathElements>
369
370                                     <environmentVariables>
371                                         <AJSC_HOME>${runAjscHome}</AJSC_HOME>
372                                     </environmentVariables>
373
374                                     <!-- Main AJSC System Properties below (necessary for proper startup) -->
375                                     <systemProperties>
376                                         <systemProperty>
377                                             <key>AJSC_HOME</key>
378                                             <value>${runAjscHome}</value>
379                                         </systemProperty>
380                                         <systemProperty>
381                                             <key>CONFIG_HOME</key>
382                                             <value>${basedir}/appconfig-local/</value>
383                                         </systemProperty>
384                                         <systemProperty>
385                                             <key>AJSC_CONF_HOME</key>
386                                             <value>${basedir}/bundleconfig-local</value>
387                                         </systemProperty>
388                                         <systemProperty>
389                                             <key>logback.configurationFile</key>
390                                             <value>${basedir}/ajsc-shared-config/etc/logback.xml
391                                             </value>
392                                         </systemProperty>
393                                         <systemProperty>
394                                             <key>AJSC_SHARED_CONFIG</key>
395                                             <value>${basedir}/ajsc-shared-config</value>
396                                         </systemProperty>
397
398                                         <sysproperty>
399                                             <key>AJSC_EXTERNAL_LIB_FOLDERS</key>
400                                             <value>${basedir}/target/commonLibs</value>
401                                         </sysproperty>
402                                         <sysproperty>
403                                             <key>AJSC_EXTERNAL_PROPERTIES_FOLDERS</key>
404                                             <value>${basedir}/ajsc-shared-config/etc</value>
405                                         </sysproperty>
406
407                                         <systemProperty>
408                                             <key>AJSC_SERVICE_NAMESPACE</key>
409                                             <value>${module.ajsc.namespace.name}</value>
410                                         </systemProperty>
411                                         <systemProperty>
412                                             <key>AJSC_SERVICE_VERSION</key>
413                                             <value>${module.ajsc.namespace.version}</value>
414                                         </systemProperty>
415                                         <systemProperty>
416                                             <key>SOACLOUD_SERVICE_VERSION</key>
417                                             <value>${project.version}</value>
418                                         </systemProperty>
419                                         <systemProperty>
420                                             <key>server.port</key>
421                                             <value>${serverPort}</value>
422                                         </systemProperty>
423                                     </systemProperties>
424
425                                     <!-- Command Line Arguments to add to the java command. Here, you
426                                         can specify the port as well as the Context you want your service to run
427                                         in. Use context=/ to run in an unnamed Context (Root Context). The default
428                                         configuration of the AJSC is to run under the / Context. Setting the port
429                                         here can aid during the development phase of your service. However, you can
430                                         leave this argument out entirely, and the AJSC will default to using an Ephemeral
431                                         port. -->
432                                     <arguments>
433                                         <argument>context=/</argument>
434                                         <argument>port=${serverPort}</argument>
435                                         <argument>sslport=${sslport}</argument>
436                                     </arguments>
437                                 </configuration>
438                             </execution>
439                         </executions>
440                         <configuration>
441                             <executable>java</executable>
442                         </configuration>
443                         <dependencies>
444                             <dependency>
445                                 <groupId>com.att.ajsc</groupId>
446                                 <artifactId>ajsc-runner</artifactId>
447                                 <version>${ajscRuntimeVersion}</version>
448                             </dependency>
449                         </dependencies>
450                     </plugin>
451                 </plugins>
452             </build>
453         </profile>
454     </profiles>
455
456     <dependencyManagement>
457         <dependencies>
458             <dependency>
459                 <groupId>org.apache.httpcomponents</groupId>
460                 <artifactId>httpclient</artifactId>
461                 <version>4.5</version>
462             </dependency>
463             <dependency>
464                 <groupId>org.apache.httpcomponents</groupId>
465                 <artifactId>httpcore</artifactId>
466                 <version>4.4.1</version>
467             </dependency>
468             <dependency>
469                 <groupId>org.json</groupId>
470                 <artifactId>json</artifactId>
471                 <version>20131018</version>
472             </dependency>
473         </dependencies>
474     </dependencyManagement>
475
476     <distributionManagement>
477       <repository>
478         <id>ecomp-releases</id>
479         <name>ECOMP Release Repository</name>
480         <url>${nexusproxy}/content/repositories/releases/</url>
481       </repository>
482       <snapshotRepository>
483         <id>ecomp-snapshots</id>
484         <name>ECOMP Snapshot Repository</name>
485         <url>${nexusproxy}/content/repositories/snapshots/</url>
486       </snapshotRepository>
487       <site>
488         <id>ecomp-javadoc</id>
489         <url>dav:https://ecomp-nexus:8443/repository/aai/gizmo-javadoc/${project.version}</url>
490       </site>
491     </distributionManagement>
492 </project>