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