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