Merge "[AAI-125] DataRouter to consume aai-schema jar"
[aai/data-router.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.data-router</groupId>
11     <artifactId>data-router</artifactId>
12     <version>1.1.0-SNAPSHOT</version>
13
14     <properties>
15         <docker.location>${basedir}/target</docker.location>
16         <module.ajsc.namespace.name>data-router</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>0</serverPort>
38         <sslport>9502</sslport>
39
40         <testRouteOffer>workstation</testRouteOffer>
41         <testEnv>DEV</testEnv>
42         <checkstyle.config.location>google_checks.xml</checkstyle.config.location>
43         <nexusproxy>https://nexus.onap.org</nexusproxy>
44     </properties>
45
46     <dependencies>
47
48         <dependency>
49             <groupId>dom4j</groupId>
50             <artifactId>dom4j</artifactId>
51             <version>1.6.1</version>
52             <scope>provided</scope>
53         </dependency>
54
55         <dependency>
56             <groupId>com.att.aft</groupId>
57             <artifactId>dme2</artifactId>
58             <version>3.1.200</version>
59             <scope>provided</scope>
60         </dependency>
61         <dependency>
62             <groupId>org.onap.aai.aai-common</groupId>
63             <artifactId>aai-schema</artifactId>
64             <version>1.1.0-SNAPSHOT</version>
65         </dependency>
66         <dependency>
67             <groupId>org.onap.aai.router-core</groupId>
68             <artifactId>router-core</artifactId>
69             <version>1.1.0-SNAPSHOT</version>
70         </dependency>
71
72         <dependency>
73             <groupId>org.json</groupId>
74             <artifactId>json</artifactId>
75         </dependency>
76
77         <dependency>
78             <groupId>com.google.code.gson</groupId>
79             <artifactId>gson</artifactId>
80             <version>2.6.2</version>
81         </dependency>
82
83         <dependency>
84             <groupId>org.eclipse.persistence</groupId>
85             <artifactId>eclipselink</artifactId>
86             <version>2.6.2</version>
87         </dependency>
88
89         <dependency>
90             <groupId>org.openecomp.aai.logging-service</groupId>
91             <artifactId>common-logging</artifactId>
92             <version>1.0.0</version>
93         </dependency>
94
95         <dependency>
96             <groupId>org.openecomp.aai</groupId>
97             <artifactId>rest-client</artifactId>
98             <version>1.1.0</version>
99         </dependency>
100
101         <dependency>
102             <groupId>ch.qos.logback</groupId>
103             <artifactId>logback-core</artifactId>
104             <version>1.1.7</version>
105         </dependency>
106
107     </dependencies>
108
109     <build>
110         <plugins>
111             <!-- Checkstyle plugin - used to report on compliance with -->
112             <!-- the Google style guide. -->
113             <plugin>
114                 <groupId>org.apache.maven.plugins</groupId>
115                 <artifactId>maven-site-plugin</artifactId>
116                 <version>3.3</version>
117                 <configuration>
118                     <reportPlugins>
119                         <plugin>
120                             <groupId>org.apache.maven.plugins</groupId>
121                             <artifactId>maven-checkstyle-plugin</artifactId>
122                             <version>2.17</version>
123                             <reportSets>
124                                 <reportSet>
125                                     <reports>
126                                         <report>checkstyle</report>
127                                     </reports>
128                                 </reportSet>
129                             </reportSets>
130                         </plugin>
131                     </reportPlugins>
132                 </configuration>
133             </plugin>
134             <plugin>
135                 <groupId>org.apache.maven.plugins</groupId>
136                 <artifactId>maven-resources-plugin</artifactId>
137                 <version>2.7</version>
138                 <executions>
139                     <execution>
140                         <id>copy-docker-file</id>
141                         <phase>package</phase>
142                         <goals>
143                             <goal>copy-resources</goal>
144                         </goals>
145                         <configuration>
146                             <outputDirectory>target</outputDirectory>
147                             <overwrite>true</overwrite>
148                             <resources>
149                                 <resource>
150                                     <directory>${basedir}/src/main/docker</directory>
151                                     <filtering>true</filtering>
152                                     <includes>
153                                         <include>**/*</include>
154                                     </includes>
155                                 </resource>
156                                 <resource>
157                                     <directory>${basedir}/src/main/bin/</directory>
158                                 </resource>
159                             </resources>
160                         </configuration>
161                     </execution>
162                 </executions>
163             </plugin>
164             <plugin>
165                 <groupId>com.spotify</groupId>
166                 <artifactId>docker-maven-plugin</artifactId>
167                 <version>0.4.11</version>
168                 <configuration>
169                     <verbose>true</verbose>
170                     <serverId>docker-hub</serverId>
171                     <imageName>${docker.push.registry}/openecomp/${project.artifactId}</imageName>                              
172                     <dockerDirectory>${docker.location}</dockerDirectory>
173                     <imageTags>
174                         <imageTag>latest</imageTag>
175                     </imageTags>
176                     <forceTags>true</forceTags>
177                 </configuration>
178             </plugin>
179             <!-- license plugin -->
180             <plugin>
181                 <groupId>com.mycila</groupId>
182                 <artifactId>license-maven-plugin</artifactId>
183                 <version>3.0</version>
184                 <configuration>
185                     <header>License.txt</header>
186                     <includes>
187                         <include>src/main/java/**</include>
188                     </includes>
189                 </configuration>
190                 <executions>
191                     <execution>
192                         <goals>
193                             <goal>format</goal>
194                         </goals>
195                         <phase>process-sources</phase>
196                     </execution>
197                 </executions>
198             </plugin>
199             <plugin>
200                 <groupId>org.sonatype.plugins</groupId>
201                 <artifactId>nexus-staging-maven-plugin</artifactId>
202                 <version>1.6.7</version>
203                 <extensions>true</extensions>
204                 <configuration>
205                     <nexusUrl>${nexusproxy}</nexusUrl>
206                     <stagingProfileId>176c31dfe190a</stagingProfileId>
207                     <serverId>ecomp-staging</serverId>
208                 </configuration>
209             </plugin>
210             <plugin>
211                 <groupId>org.apache.maven.plugins</groupId>
212                 <artifactId>maven-deploy-plugin</artifactId>
213                 <configuration>
214                     <skip>true</skip>
215                 </configuration>
216             </plugin>
217             <plugin>
218                 <groupId>org.codehaus.mojo</groupId>
219                 <artifactId>sonar-maven-plugin</artifactId>
220                 <version>3.2</version>
221             </plugin>
222             <plugin>
223                 <groupId>org.jacoco</groupId>
224                 <artifactId>jacoco-maven-plugin</artifactId>
225                 <version>0.7.7.201606060606</version>
226                 <configuration>
227                     <dumpOnExit>true</dumpOnExit>
228                 </configuration>
229                 <executions>
230                     <execution>
231                         <id>jacoco-initialize-unit-tests</id>
232                         <goals>
233                             <goal>prepare-agent</goal>
234                         </goals>
235                         <configuration>
236                             <destFile>${project.build.directory}/coverage-reports/jacoco.exec
237                             </destFile>
238                         </configuration>
239                     </execution>
240                 </executions>
241             </plugin>
242         </plugins>
243     </build>
244
245     <profiles>
246         <profile>
247             <id>runAjsc</id>
248             <build>
249                 <defaultGoal>initialize</defaultGoal>
250                 <plugins>
251                     <plugin>
252                         <groupId>org.codehaus.mojo</groupId>
253                         <artifactId>exec-maven-plugin</artifactId>
254                         <version>1.3.2</version>
255                         <executions>
256                             <execution>
257                                 <phase>initialize</phase>
258                                 <goals>
259                                     <goal>java</goal>
260                                 </goals>
261                                 <configuration>
262                                     <includeProjectDependencies>false</includeProjectDependencies>
263                                     <includePluginDependencies>true</includePluginDependencies>
264                                     <executable>java</executable>
265                                     <mainClass>com.att.ajsc.runner.Runner</mainClass>
266                                     <executableDependency>
267                                         <groupId>com.att.ajsc</groupId>
268                                         <artifactId>ajsc-runner</artifactId>
269                                     </executableDependency>
270                                     <additionalClasspathElements>
271                                         <additionalClasspathElement>${basedir}/ajsc-shared-config/etc</additionalClasspathElement>
272                                     </additionalClasspathElements>
273
274                                     <environmentVariables>
275                                         <AJSC_HOME>${runAjscHome}</AJSC_HOME>
276                                     </environmentVariables>
277
278                                     <!-- Main AJSC System Properties below (necessary for proper startup) -->
279                                     <systemProperties>
280                                         <systemProperty>
281                                             <key>AJSC_HOME</key>
282                                             <value>${runAjscHome}</value>
283                                         </systemProperty>
284
285                                         <systemProperty>
286                                             <key>CONFIG_HOME</key>
287                                             <value>${basedir}/appconfig-local/</value>
288                                         </systemProperty>
289
290                                         <systemProperty>
291                                             <key>AJSC_CONF_HOME</key>
292                                             <value>${basedir}/bundleconfig-local</value>
293                                         </systemProperty>
294                                         <systemProperty>
295                                             <key>logback.configurationFile</key>
296                                             <value>${basedir}/ajsc-shared-config/etc/logback.xml</value>
297                                         </systemProperty>
298                                         <systemProperty>
299                                             <key>AJSC_SHARED_CONFIG</key>
300                                             <value>${basedir}/ajsc-shared-config</value>
301                                         </systemProperty>
302
303                                         <sysproperty>
304                                             <key>AJSC_EXTERNAL_LIB_FOLDERS</key>
305                                             <value>${basedir}/target/commonLibs</value>
306                                         </sysproperty>
307                                         <sysproperty>
308                                             <key>AJSC_EXTERNAL_PROPERTIES_FOLDERS</key>
309                                             <value>${basedir}/ajsc-shared-config/etc</value>
310                                         </sysproperty>
311
312                                         <systemProperty>
313                                             <key>AJSC_SERVICE_NAMESPACE</key>
314                                             <value>${module.ajsc.namespace.name}</value>
315                                         </systemProperty>
316                                         <systemProperty>
317                                             <key>AJSC_SERVICE_VERSION</key>
318                                             <value>${module.ajsc.namespace.version}</value>
319                                         </systemProperty>
320                                         <systemProperty>
321                                             <key>SOACLOUD_SERVICE_VERSION</key>
322                                             <value>${project.version}</value>
323                                         </systemProperty>
324                                         <systemProperty>
325                                             <key>server.port</key>
326                                             <value>${serverPort}</value>
327                                         </systemProperty>
328                                     </systemProperties>
329
330                                     <!-- Command Line Arguments to add to the java command. Here, you
331                                         can specify the port as well as the Context you want your service to run
332                                         in. Use context=/ to run in an unnamed Context (Root Context). The default
333                                         configuration of the AJSC is to run under the / Context. Setting the port
334                                         here can aid during the development phase of your service. However, you can
335                                         leave this argument out entirely, and the AJSC will default to using an Ephemeral
336                                         port. -->
337                                     <arguments>
338                                         <argument>context=/</argument>
339                                         <argument>port=${serverPort}</argument>
340                                         <argument>sslport=${sslport}</argument>
341                                     </arguments>
342                                 </configuration>
343                             </execution>
344                         </executions>
345                         <configuration>
346                             <executable>java</executable>
347                         </configuration>
348                         <dependencies>
349                             <dependency>
350                                 <groupId>com.att.ajsc</groupId>
351                                 <artifactId>ajsc-runner</artifactId>
352                                 <version>${ajscRuntimeVersion}</version>
353                             </dependency>
354                         </dependencies>
355                     </plugin>
356                 </plugins>
357             </build>
358         </profile>
359     </profiles>
360     <dependencyManagement>
361         <dependencies>
362             <dependency>
363                 <groupId>org.apache.httpcomponents</groupId>
364                 <artifactId>httpclient</artifactId>
365                 <version>4.5</version>
366             </dependency>
367             <dependency>
368                 <groupId>org.apache.httpcomponents</groupId>
369                 <artifactId>httpcore</artifactId>
370                 <version>4.4.1</version>
371             </dependency>
372             <dependency>
373                 <groupId>org.json</groupId>
374                 <artifactId>json</artifactId>
375                 <version>20131018</version>
376             </dependency>
377         </dependencies>
378     </dependencyManagement>
379     <distributionManagement>
380         <repository>
381             <id>ecomp-releases</id>
382             <name>ECOMP Release Repository</name>
383             <url>${nexusproxy}/content/repositories/releases/</url>
384         </repository>
385         <snapshotRepository>
386             <id>ecomp-snapshots</id>
387             <name>ECOMP Snapshot Repository</name>
388             <url>${nexusproxy}/content/repositories/snapshots/</url>
389         </snapshotRepository>
390     </distributionManagement>
391 </project>