Fix items missed in microservice restructure
[aai/champ.git] / champ-service / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <project xmlns="http://maven.apache.org/POM/4.0.0"
3          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5     <modelVersion>4.0.0</modelVersion>
6
7     <parent>
8         <groupId>com.att.ajsc</groupId>
9         <artifactId>ajsc-archetype-parent</artifactId>
10         <version>2.0.0</version>
11     </parent>
12
13     <groupId>org.onap.aai</groupId>
14     <artifactId>champ-service</artifactId>
15     <version>1.2.0-SNAPSHOT</version>
16
17     <properties>
18         <runAjscHome>${basedir}/target/swm/package/nix/dist_files${distFilesRoot}</runAjscHome>
19         <ajscRuntimeVersion>2.0.0</ajscRuntimeVersion>
20
21         <absoluteDistFilesRoot>/appl/${project.artifactId}</absoluteDistFilesRoot>
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
30         <event.client.version>1.2.0</event.client.version>
31         <common.logging.groupid>org.onap.aai.logging-service</common.logging.groupid>
32         <common.logging.version>1.2.0</common.logging.version>
33         <org.apache.httpcomponents.httpclient.version>4.5.2</org.apache.httpcomponents.httpclient.version>
34     </properties>
35
36     <dependencies>
37         <dependency>
38             <groupId>com.sun.jersey</groupId>
39             <artifactId>jersey-core</artifactId>
40             <version>1.18.6</version>
41         </dependency>
42
43         <!-- AJSC Dependencies -->
44         <dependency>
45             <groupId>dom4j</groupId>
46             <artifactId>dom4j</artifactId>
47             <version>1.6.1</version>
48             <scope>provided</scope>
49         </dependency>
50         <dependency>
51             <groupId>com.att.aft</groupId>
52             <artifactId>dme2</artifactId>
53             <version>3.1.200</version>
54             <scope>provided</scope>
55         </dependency>
56
57         <!--Adding this dependency explicit.-->
58         <dependency>
59             <groupId>org.json</groupId>
60             <artifactId>json</artifactId>
61             <version>20160212</version>
62         </dependency>
63
64         <dependency>
65             <groupId>org.glassfish.jersey.core</groupId>
66             <artifactId>jersey-client</artifactId>
67             <version>2.23</version>
68         </dependency>
69
70         <dependency>
71             <groupId>commons-io</groupId>
72             <artifactId>commons-io</artifactId>
73             <version>2.4</version>
74         </dependency>
75
76         <dependency>
77             <groupId>com.google.code.gson</groupId>
78             <artifactId>gson</artifactId>
79             <version>2.6.2</version>
80         </dependency>
81
82         <dependency>
83             <groupId>${common.logging.groupid}</groupId>
84             <artifactId>common-logging</artifactId>
85             <version>${common.logging.version}</version>
86         </dependency>
87
88         <dependency>
89             <groupId>ch.qos.logback</groupId>
90             <artifactId>logback-core</artifactId>
91             <version>1.1.7</version>
92         </dependency>
93
94         <dependency>
95             <groupId>org.eclipse.persistence</groupId>
96             <artifactId>eclipselink</artifactId>
97             <version>2.6.2</version>
98         </dependency>
99
100         <dependency>
101             <groupId>org.apache.httpcomponents</groupId>
102             <artifactId>httpclient</artifactId>
103             <version>${org.apache.httpcomponents.httpclient.version}</version>
104         </dependency>
105
106         <!-- Event Bus Library. -->
107         <dependency>
108             <groupId>org.onap.aai.event-client</groupId>
109             <artifactId>event-client-api</artifactId>
110             <version>${event.client.version}</version>
111         </dependency>
112         <dependency>
113             <groupId>org.onap.aai.event-client</groupId>
114             <artifactId>event-client-dmaap</artifactId>
115             <version>${event.client.version}</version>
116         </dependency>
117         <dependency>
118             <groupId>org.onap.aai.event-client</groupId>
119             <artifactId>event-client-kafka</artifactId>
120             <version>${event.client.version}</version>
121         </dependency>
122
123         <!-- Champ graph database library. -->
124         <dependency>
125             <groupId>org.onap.aai</groupId>
126             <artifactId>champ-core</artifactId>
127             <version>1.2.0-SNAPSHOT</version>
128             <scope>compile</scope>
129             <exclusions>
130                 <exclusion>
131                     <groupId>org.apache.hbase</groupId>
132                     <artifactId>hbase-client</artifactId>
133                 </exclusion>
134                 <exclusion>
135                     <groupId>org.onap.aai.event-client</groupId>
136                     <artifactId>event-client-api</artifactId>
137                 </exclusion>
138                 <exclusion>
139                     <groupId>org.onap.aai.event-client</groupId>
140                     <artifactId>event-client-dmaap</artifactId>
141                 </exclusion>
142                 <exclusion>
143                     <groupId>org.onap.aai.event-client</groupId>
144                     <artifactId>event-client-kafka</artifactId>
145                 </exclusion>
146             </exclusions>
147         </dependency>
148     </dependencies>
149
150     <build>
151         <finalName>${project.artifactId}</finalName>
152         <plugins>
153             <plugin>
154                 <groupId>org.apache.maven.plugins</groupId>
155                 <artifactId>maven-resources-plugin</artifactId>
156                 <version>2.7</version>
157                 <executions>
158                     <execution>
159                         <id>copy-docker-file</id>
160                         <phase>package</phase>
161                         <goals>
162                             <goal>copy-resources</goal>
163                         </goals>
164                         <configuration>
165                             <outputDirectory>target</outputDirectory>
166                             <overwrite>true</overwrite>
167                             <resources>
168                                 <resource>
169                                     <directory>${basedir}/src/main/docker</directory>
170                                     <filtering>true</filtering>
171                                     <includes>
172                                         <include>**/*</include>
173                                     </includes>
174                                 </resource>
175                                 <resource>
176                                     <directory>${basedir}/src/main/bin/</directory>
177                                 </resource>
178                             </resources>
179                         </configuration>
180                     </execution>
181                 </executions>
182             </plugin>
183
184             <plugin>
185                 <groupId>com.mycila</groupId>
186                 <artifactId>license-maven-plugin</artifactId>
187                 <version>3.0</version>
188                 <configuration>
189                     <header>License.txt</header>
190                     <includes>
191                         <include>src/main/java/**</include>
192                     </includes>
193                 </configuration>
194                 <executions>
195                     <execution>
196                         <goals>
197                             <goal>format</goal>
198                         </goals>
199                         <phase>process-sources</phase>
200                     </execution>
201                 </executions>
202             </plugin>
203
204             <plugin>
205                 <groupId>com.spotify</groupId>
206                 <artifactId>docker-maven-plugin</artifactId>
207                 <version>0.4.11</version>
208                 <configuration>
209                     <verbose>true</verbose>
210                     <serverId>docker-hub</serverId>
211                     <imageName>${docker.push.registry}/onap/${project.artifactId}</imageName>
212                     <dockerDirectory>${docker.location}</dockerDirectory>
213                     <imageTags>
214                         <imageTag>latest</imageTag>
215                     </imageTags>
216                     <forceTags>true</forceTags>
217                 </configuration>
218             </plugin>
219
220             <plugin>
221                 <groupId>org.jacoco</groupId>
222                 <artifactId>jacoco-maven-plugin</artifactId>
223                 <version>0.7.9</version>
224                 <executions>
225                     <execution>
226                         <id>default-prepare-agent</id>
227                         <goals>
228                             <goal>prepare-agent</goal>
229                         </goals>
230                     </execution>
231                     <execution>
232                         <id>default-report</id>
233                         <phase>prepare-package</phase>
234                         <goals>
235                             <goal>report</goal>
236                         </goals>
237                     </execution>
238                     <execution>
239                         <id>default-check</id>
240                         <goals>
241                             <goal>check</goal>
242                         </goals>
243                         <configuration>
244                             <rules>
245                                 <!--  implementation is needed only for Maven 2  -->
246                                 <rule implementation="org.jacoco.maven.RuleConfiguration">
247                                     <element>BUNDLE</element>
248                                     <limits>
249                                         <!--  implementation is needed only for Maven 2  -->
250                                         <limit implementation="org.jacoco.report.check.Limit">
251                                             <counter>INSTRUCTION</counter>
252                                             <value>COVEREDRATIO</value>
253                                             <minimum>.15</minimum>
254                                         </limit>
255                                         <limit implementation="org.jacoco.report.check.Limit">
256                                             <counter>BRANCH</counter>
257                                             <value>COVEREDRATIO</value>
258                                             <minimum>.12</minimum>
259                                         </limit>
260                                         <limit implementation="org.jacoco.report.check.Limit">
261                                             <counter>COMPLEXITY</counter>
262                                             <value>COVEREDRATIO</value>
263                                             <minimum>.15</minimum>
264                                         </limit>
265                                         <limit implementation="org.jacoco.report.check.Limit">
266                                             <counter>LINE</counter>
267                                             <value>COVEREDRATIO</value>
268                                             <minimum>.10</minimum>
269                                         </limit>
270                                         <limit implementation="org.jacoco.report.check.Limit">
271                                             <counter>METHOD</counter>
272                                             <value>COVEREDRATIO</value>
273                                             <minimum>.17</minimum>
274                                         </limit>
275                                         <limit implementation="org.jacoco.report.check.Limit">
276                                             <counter>CLASS</counter>
277                                             <value>MISSEDCOUNT</value>
278                                             <maximum>5</maximum>
279                                         </limit>
280                                     </limits>
281                                 </rule>
282                             </rules>
283                         </configuration>
284                     </execution>
285                 </executions>
286             </plugin>
287         </plugins>
288     </build>
289
290     <profiles>
291         <profile>
292             <id>runAjsc</id>
293             <build>
294                 <defaultGoal>initialize</defaultGoal>
295                 <plugins>
296                     <plugin>
297                         <groupId>org.codehaus.mojo</groupId>
298                         <artifactId>exec-maven-plugin</artifactId>
299                         <version>1.3.2</version>
300                         <executions>
301                             <execution>
302                                 <phase>initialize</phase>
303                                 <goals>
304                                     <goal>java</goal>
305                                 </goals>
306                                 <configuration>
307                                     <includeProjectDependencies>false</includeProjectDependencies>
308                                     <includePluginDependencies>true</includePluginDependencies>
309                                     <executable>java</executable>
310                                     <mainClass>com.att.ajsc.runner.Runner</mainClass>
311                                     <executableDependency>
312                                         <groupId>com.att.ajsc</groupId>
313                                         <artifactId>ajsc-runner</artifactId>
314                                     </executableDependency>
315                                     <additionalClasspathElements>
316                                         <additionalClasspathElement>${basedir}/ajsc-shared-config/etc</additionalClasspathElement>
317                                     </additionalClasspathElements>
318
319                                     <environmentVariables>
320                                         <AJSC_HOME>${runAjscHome}</AJSC_HOME>
321                                     </environmentVariables>
322
323                                     <!-- Main AJSC System Properties below (necessary for proper startup) -->
324                                     <systemProperties>
325                                         <systemProperty>
326                                             <key>AJSC_HOME</key>
327                                             <value>${runAjscHome}</value>
328                                         </systemProperty>
329                                         <systemProperty>
330                                             <key>CONFIG_HOME</key>
331                                             <value>${basedir}/appconfig-local/</value>
332                                         </systemProperty>
333                                         <systemProperty>
334                                             <key>AJSC_CONF_HOME</key>
335                                             <value>${basedir}/bundleconfig-local</value>
336                                         </systemProperty>
337                                         <systemProperty>
338                                             <key>logback.configurationFile</key>
339                                             <value>${basedir}/ajsc-shared-config/etc/logback.xml</value>
340                                         </systemProperty>
341                                         <systemProperty>
342                                             <key>AJSC_SHARED_CONFIG</key>
343                                             <value>${basedir}/ajsc-shared-config</value>
344                                         </systemProperty>
345
346                                         <sysproperty>
347                                             <key>AJSC_EXTERNAL_LIB_FOLDERS</key>
348                                             <value>${basedir}/target/commonLibs</value>
349                                         </sysproperty>
350                                         <sysproperty>
351                                             <key>AJSC_EXTERNAL_PROPERTIES_FOLDERS</key>
352                                             <value>${basedir}/ajsc-shared-config/etc</value>
353                                         </sysproperty>
354
355                                         <systemProperty>
356                                             <key>AJSC_SERVICE_NAMESPACE</key>
357                                             <value>${module.ajsc.namespace.name}</value>
358                                         </systemProperty>
359                                         <systemProperty>
360                                             <key>AJSC_SERVICE_VERSION</key>
361                                             <value>${module.ajsc.namespace.version}</value>
362                                         </systemProperty>
363                                         <systemProperty>
364                                             <key>SOACLOUD_SERVICE_VERSION</key>
365                                             <value>${project.version}</value>
366                                         </systemProperty>
367                                         <systemProperty>
368                                             <key>server.port</key>
369                                             <value>${serverPort}</value>
370                                         </systemProperty>
371                                     </systemProperties>
372
373                                     <!-- Command Line Arguments to add to the java command. Here, you
374                                         can specify the port as well as the Context you want your service to run
375                                         in. Use context=/ to run in an unnamed Context (Root Context). The default
376                                         configuration of the AJSC is to run under the / Context. Setting the port
377                                         here can aid during the development phase of your service. However, you can
378                                         leave this argument out entirely, and the AJSC will default to using an Ephemeral
379                                         port. -->
380                                     <arguments>
381                                         <argument>context=/</argument>
382                                         <argument>port=${serverPort}</argument>
383                                         <argument>sslport=${sslport}</argument>
384                                     </arguments>
385                                 </configuration>
386                             </execution>
387                         </executions>
388                         <configuration>
389                             <executable>java</executable>
390                         </configuration>
391                         <dependencies>
392                             <dependency>
393                                 <groupId>com.att.ajsc</groupId>
394                                 <artifactId>ajsc-runner</artifactId>
395                                 <version>${ajscRuntimeVersion}</version>
396                             </dependency>
397                         </dependencies>
398                     </plugin>
399                 </plugins>
400             </build>
401         </profile>
402     </profiles>
403 </project>