Merge "Update .gitreview with onap URL"
[aai/model-loader.git] / pom.xml
1 <!--
2      ============LICENSE_START=======================================================
3      MODEL LOADER SERVICE
4      ================================================================================
5      Copyright (C) 2017 AT&T Intellectual Property. All rights reserved.
6      ================================================================================
7      Licensed under the Apache License, Version 2.0 (the "License");
8      you may not use this file except in compliance with the License.
9      You may obtain a copy of the License at
10      
11      http://www.apache.org/licenses/LICENSE-2.0
12      
13      Unless required by applicable law or agreed to in writing, software
14      distributed under the License is distributed on an "AS IS" BASIS,
15      WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16      See the License for the specific language governing permissions and
17      limitations under the License.
18      ============LICENSE_END=========================================================
19    -->
20
21 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
22         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
23         <modelVersion>4.0.0</modelVersion>
24         
25         <parent>
26                 <artifactId>ajsc-archetype-parent</artifactId>
27                 <groupId>com.att.ajsc</groupId>
28                 <version>2.0.0</version>
29         </parent>
30         
31         <groupId>org.openecomp.aai.model-loader</groupId>
32         <artifactId>model-loader</artifactId>
33         <version>1.1.0-SNAPSHOT</version>
34         
35         <properties>
36                 <docker.location>${basedir}/target</docker.location>
37                 <module.ajsc.namespace.name>model-loader</module.ajsc.namespace.name>
38                 <module.ajsc.namespace.version>v1</module.ajsc.namespace.version>
39                 <ajscRuntimeVersion>2.0.0</ajscRuntimeVersion>
40                 <absoluteDistFilesRoot>/appl/${project.artifactId}</absoluteDistFilesRoot>
41                 <distFilesRoot>/appl/${project.artifactId}/${project.version}</distFilesRoot>
42                 <runAjscHome>${basedir}/target/swm/package/nix/dist_files${distFilesRoot}</runAjscHome>
43
44                 <!-- Port Selection. A value of 0 will allow for dynamic port selection. 
45                         For local testing, you may choose to hardcode this value to something like 
46                         8080 -->
47                 <serverPort>0</serverPort>
48                 <sslport>0</sslport>
49
50
51                 <!-- For SOA Cloud Installation -->
52                 <installOwnerUser>aaiadmin</installOwnerUser>
53                 <installOwnerGroup>aaiadmin</installOwnerGroup>
54                 <ownerManagementGroup>org.openecomp.aai.dev</ownerManagementGroup>
55
56                 <testRouteOffer>workstation</testRouteOffer>
57                 <testEnv>DEV</testEnv>
58
59                 <dependency.scope>provided</dependency.scope>
60                 <checkstyle.config.location>google_checks.xml</checkstyle.config.location>
61                 <maven.compiler.source>1.8</maven.compiler.source>
62                 <maven.compiler.target>1.8</maven.compiler.target>
63                <sonar.language>java</sonar.language>
64                <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
65                <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath>
66                <sonar.jacoco.reportPath>${project.build.directory}/coverage-reports/jacoco.exec</sonar.jacoco.reportPath>
67                <sonar.jacoco.reportMissing.force.zero>false</sonar.jacoco.reportMissing.force.zero>
68                <sonar.projectVersion>${project.version}</sonar.projectVersion>
69                <nexusproxy>https://nexus.onap.org</nexusproxy>
70         </properties>
71
72         <distributionManagement>
73                 <repository>
74                         <id>ecomp-releases</id>
75                         <name>ECOMP Release Repository</name>
76                         <url>${nexusproxy}/content/repositories/releases/</url>
77                 </repository>
78                 <snapshotRepository>
79                         <id>ecomp-snapshots</id>
80                         <name>ECOMP Snapshot Repository</name>
81                         <url>${nexusproxy}/content/repositories/snapshots/</url>
82                 </snapshotRepository>
83         </distributionManagement>
84         <dependencies>
85                 <dependency>
86                         <groupId>org.mockito</groupId>
87                         <artifactId>mockito-all</artifactId>
88                         <version>1.10.19</version>
89                         <scope>test</scope>
90                 </dependency>
91                 <dependency>
92                         <groupId>org.powermock</groupId>
93                         <artifactId>powermock-module-junit4</artifactId>
94                         <version>1.6.2</version>
95                         <scope>test</scope>
96                 </dependency>
97                 <dependency>
98                         <groupId>org.powermock</groupId>
99                         <artifactId>powermock-api-mockito</artifactId>
100                         <version>1.6.2</version>
101                         <scope>test</scope>
102                 </dependency>
103                 <dependency>
104                         <groupId>org.powermock</groupId>
105                         <artifactId>powermock-module-javaagent</artifactId>
106                         <version>1.6.2</version>
107                         <scope>test</scope>
108                 </dependency>
109                 <dependency>
110                         <groupId>org.powermock</groupId>
111                         <artifactId>powermock-module-junit4-rule-agent</artifactId>
112                         <version>1.6.2</version>
113                         <scope>test</scope>
114                 </dependency>
115                 <!-- xjc dependencies -->
116                 <dependency>
117                         <groupId>javax.xml.bind</groupId>
118                         <artifactId>jaxb-api</artifactId>
119                         <version>2.2.11</version>
120                 </dependency>
121                 <dependency>
122                         <groupId>com.sun.xml.bind</groupId>
123                         <artifactId>jaxb-impl</artifactId>
124                         <version>2.2.11</version>
125                 </dependency>
126                 <dependency>
127                         <groupId>com.sun.xml.bind</groupId>
128                         <artifactId>jaxb-core</artifactId>
129                         <version>2.2.11</version>
130                 </dependency>
131                 <dependency>
132                         <groupId>com.sun.xml.bind</groupId>
133                         <artifactId>jaxb-xjc</artifactId>
134                         <version>2.2.11</version>
135                 </dependency>
136                 <dependency>
137                         <groupId>org.eclipse.persistence</groupId>
138                         <artifactId>org.eclipse.persistence.moxy</artifactId>
139                         <version>2.6.2</version>
140                         <scope>compile</scope>
141                 </dependency>
142                 <dependency>
143                         <groupId>com.sun.jersey</groupId>
144                         <artifactId>jersey-client</artifactId>
145                         <version>1.18</version>
146                 </dependency>
147                 <!-- Common logging framework -->
148                 <dependency>
149                         <groupId>org.openecomp.aai.logging-service</groupId>
150                         <artifactId>common-logging</artifactId>
151                         <version>1.0.0</version>
152                 </dependency>
153                 <dependency>
154                         <groupId>ch.qos.logback</groupId>
155                         <artifactId>logback-core</artifactId>
156                         <version>1.1.7</version>
157                 </dependency>
158
159                 <dependency>
160                         <groupId>org.openecomp.sdc</groupId>
161                     <artifactId>sdc-distribution-client</artifactId>
162                     <version>1.0.0</version>
163                 </dependency>
164                 <dependency>
165                         <groupId>org.json</groupId>
166                         <artifactId>json</artifactId>
167                         <version>20131018</version>
168                 </dependency>
169                 
170                 <dependency>
171                     <groupId>org.eclipse.jetty</groupId>
172                     <artifactId>jetty-security</artifactId>
173                     <version>9.3.8.RC0</version>
174                 </dependency>
175                 
176         <dependency>
177             <groupId>org.springframework</groupId>
178             <artifactId>spring-webmvc</artifactId>
179             <version>4.0.0.RELEASE</version>
180         </dependency>
181         <dependency>
182             <groupId>jline</groupId>
183             <artifactId>jline</artifactId>
184             <version>2.12.1</version>
185         </dependency>
186         
187         </dependencies>
188         
189         <!-- Plugins and repositories -->
190           <pluginRepositories>
191                 <pluginRepository>
192                            <id>central</id>
193                           <url>http://repo1.maven.org/maven2</url>
194                    </pluginRepository>
195                   <pluginRepository>
196                           <id>EvoSuite</id>
197                         <name>EvoSuite Repository</name>
198                          <url>http://www.evosuite.org/m2</url>
199                   </pluginRepository>
200           </pluginRepositories>
201            <repositories>
202                    <repository>
203                           <id>central</id>
204                           <name>Maven 2 repository 2</name>
205                           <url>http://repo2.maven.org/maven2/</url>
206                   </repository>
207               <repository>
208                          <id>ecomp-releases</id>
209                           <name>ECOMP Release Repository</name>
210                           <url>${nexusproxy}/content/repositories/releases/</url>
211                   </repository>
212                   <repository>
213                          <id>ecomp-snapshots</id>
214                           <name>ECOMP Snapshot Repository</name>
215                           <url>${nexusproxy}/content/repositories/snapshots/</url>
216                   </repository>
217                   <repository>
218                          <id>ecomp-staging</id>
219                           <name>ECOMP Staging Repository</name>
220                           <url>${nexusproxy}/content/repositories/staging/</url>
221                   </repository>
222
223           </repositories>
224         
225         <profiles>
226                 <profile>
227                         <id>runAjsc</id>
228                         <build>
229                                 <defaultGoal>initialize</defaultGoal>
230                                 <plugins>
231                                         <plugin>
232                                                 <groupId>org.codehaus.mojo</groupId>
233                                                 <artifactId>exec-maven-plugin</artifactId>
234                                                 <version>1.3.2</version>
235                                                 <executions>
236                                                         <execution>
237                                                                 <phase>initialize</phase>
238                                                                 <goals>
239                                                                         <goal>java</goal>
240                                                                 </goals>
241                                                                 <configuration>
242                                                                         <includeProjectDependencies>false</includeProjectDependencies>
243                                                                         <includePluginDependencies>true</includePluginDependencies>
244                                                                         <executable>java</executable>
245                                                                         <mainClass>com.att.ajsc.runner.Runner</mainClass>
246                                                                         <executableDependency>
247                                                                                 <groupId>com.att.ajsc</groupId>
248                                                                                 <artifactId>ajsc-runner</artifactId>
249                                                                         </executableDependency>
250                                                                         <additionalClasspathElements>
251                                                                                 <additionalClasspathElement>${basedir}/ajsc-shared-config/etc</additionalClasspathElement>
252                                                                         </additionalClasspathElements>
253
254                                                                         <environmentVariables>
255                                                                                 <AJSC_HOME>${runAjscHome}</AJSC_HOME>
256                                                                         </environmentVariables>
257
258                                                                         <!-- Main AJSC System Properties below (necessary for proper startup) -->
259                                                                         <systemProperties>
260                                                                                 <systemProperty>
261                                                                                         <key>AJSC_HOME</key>
262                                                                                         <value>${runAjscHome}</value>
263                                                                                 </systemProperty>
264                                                                                 <systemProperty>
265                                                                                         <key>CONFIG_HOME</key>
266                                                                                         <value>${basedir}/appconfig-local/</value>
267                                                                                 </systemProperty>
268                                                                                 <systemProperty>
269                                                                                         <key>AJSC_CONF_HOME</key>
270                                                                                         <value>${basedir}/bundleconfig-local</value>
271                                                                                 </systemProperty>
272                                                                                 <systemProperty>
273                                                                                         <key>logback.configurationFile</key>
274                                                                                         <value>${basedir}/ajsc-shared-config/etc/logback.xml</value>
275                                                                                 </systemProperty>
276                                                                                 <systemProperty>
277                                                                                         <key>AJSC_SHARED_CONFIG</key>
278                                                                                         <value>${basedir}/ajsc-shared-config</value>
279                                                                                 </systemProperty>
280
281                                                                                 <sysproperty>
282                                                                                         <key>AJSC_EXTERNAL_LIB_FOLDERS</key>
283                                                                                         <value>${basedir}/target/commonLibs</value>
284                                                                                 </sysproperty>
285                                                                                 <sysproperty>
286                                                                                         <key>AJSC_EXTERNAL_PROPERTIES_FOLDERS</key>
287                                                                                         <value>${basedir}/ajsc-shared-config/etc</value>
288                                                                                 </sysproperty>
289                                                                                 <systemProperty>
290                                                                                         <key>AJSC_SERVICE_NAMESPACE</key>
291                                                                                         <value>${module.ajsc.namespace.name}</value>
292                                                                                 </systemProperty>
293                                                                                 <systemProperty>
294                                                                                         <key>AJSC_SERVICE_VERSION</key>
295                                                                                         <value>${module.ajsc.namespace.version}</value>
296                                                                                 </systemProperty>
297                                                                                 <systemProperty>
298                                                                                         <key>SOACLOUD_SERVICE_VERSION</key>
299                                                                                         <value>${project.version}</value>
300                                                                                 </systemProperty>
301                                                                                 <systemProperty>
302                                                                                         <key>server.port</key>
303                                                                                         <value>${serverPort}</value>
304                                                                                 </systemProperty>
305                                                                         </systemProperties>
306
307                                                                         <!-- Command Line Arguments to add to the java command. Here, you 
308                                                                                 can specify the port as well as the Context you want your service to run 
309                                                                                 in. Use context=/ to run in an unnamed Context (Root Context). The default 
310                                                                                 configuration of the AJSC is to run under the / Context. Setting the port 
311                                                                                 here can aid during the development phase of your service. However, you can 
312                                                                                 leave this argument out entirely, and the AJSC will default to using an Ephemeral 
313                                                                                 port. -->
314                                                                         <arguments>
315                                                                                 <argument>context=//</argument>
316                                                                                 <argument>port=${serverPort}</argument>
317                                                                                 <argument>sslport=${sslport}</argument>
318                                                                         </arguments>
319                                                                 </configuration>
320                                                         </execution>
321                                                 </executions>
322                                                 <configuration>
323                                                         <executable>java</executable>
324                                                 </configuration>
325                                                 <dependencies>
326                                                         <dependency>
327                                                                 <groupId>com.att.ajsc</groupId>
328                                                                 <artifactId>ajsc-runner</artifactId>
329                                                                 <version>${ajscRuntimeVersion}</version>
330                                                         </dependency>
331                                                 </dependencies>
332                                         </plugin>
333                                 </plugins>
334                         </build>
335                 </profile>
336         </profiles>
337         
338         <build>
339                 <plugins>
340                         <plugin>
341                                 <groupId>org.apache.maven.plugins</groupId>
342                                 <artifactId>maven-resources-plugin</artifactId>
343                                 <version>2.7</version>
344                                 <executions>
345                                         <execution>
346                                                 <id>copy-docker-file</id>
347                                                 <phase>package</phase>
348                                                 <goals>
349                                                         <goal>copy-resources</goal>
350                                                 </goals>
351                                                 <configuration>
352                                                         <outputDirectory>target</outputDirectory>
353                                                         <overwrite>true</overwrite>
354                                                         <resources>
355                                                                 <resource>
356                                                                         <directory>${basedir}/src/main/docker</directory>
357                                                                         <filtering>true</filtering>
358                                                                         <includes>
359                                                                                 <include>**/*</include>
360                                                                         </includes>
361                                                                 </resource>
362                                                                 <resource>
363                                                                         <directory>${basedir}/src/main/bin/</directory>
364                                                                 </resource>
365                                                         </resources>
366                                                 </configuration>
367                                         </execution>
368                                 </executions>
369                         </plugin>
370                         <plugin>
371                                 <groupId>com.spotify</groupId>
372                                 <artifactId>docker-maven-plugin</artifactId>
373                                 <version>0.4.11</version>
374                                 <configuration>         
375                                         <verbose>true</verbose>
376                                         <serverId>docker-hub</serverId>
377                                         <imageName>${docker.push.registry}/openecomp/${project.artifactId}</imageName>                                  
378                                         <dockerDirectory>${docker.location}</dockerDirectory>
379                                         <imageTags>
380                                                 <imageTag>latest</imageTag>
381                                         </imageTags>
382                                         <forceTags>true</forceTags>
383                                 </configuration>
384                         </plugin>
385                         <plugin>
386                                 <groupId>org.apache.maven.plugins</groupId>
387                                 <artifactId>maven-dependency-plugin</artifactId>
388                                 <version>2.8</version>
389                                 <executions>
390                                         <execution>
391                                                 <id>copy-agent</id>
392                                                 <phase>process-test-classes</phase>
393                                                 <goals>
394                                                         <goal>copy</goal>
395                                                 </goals>
396                                                 <configuration>
397                                                         <artifactItems>
398                                                                 <artifactItem>
399                                                                         <groupId>org.powermock</groupId>
400                                                                         <artifactId>powermock-module-javaagent</artifactId>
401                                                                         <version>1.6.2</version>
402                                                                         <outputDirectory>${project.build.directory}/agents</outputDirectory>
403                                                                         <destFileName>powermock-javaagent.jar</destFileName>
404                                                                 </artifactItem>
405                                                         </artifactItems>
406                                                 </configuration>
407                                         </execution>
408                                 </executions>
409                         </plugin>
410                         <plugin>
411                                 <groupId>org.apache.maven.plugins</groupId>
412                                 <artifactId>maven-surefire-plugin</artifactId>
413                                 <version>2.12.4</version>
414                                 <configuration>
415                                    <argLine>-noverify ${argLine}</argLine>
416                                 </configuration>
417                         </plugin>
418                         <plugin>
419                                 <groupId>org.codehaus.mojo</groupId>
420                                 <artifactId>jaxb2-maven-plugin</artifactId>
421                                 <version>2.2</version>
422                                 <executions>
423                                         <execution>
424                                                 <id>xjc</id>
425                                                 <goals>
426                                                         <goal>xjc</goal>
427                                                 </goals>
428                                         </execution>
429                                 </executions>
430                                 <configuration>
431                                         <clearOutputDir>false</clearOutputDir>
432                                         <outputDirectory>${project.build.directory}/generated-sources</outputDirectory>
433                                         <sources>
434                                                 <source>${project.basedir}/src/main/resources/schema</source>
435                                         </sources>
436                                         <addGeneratedAnnotation>true</addGeneratedAnnotation>
437                                 </configuration>
438                         </plugin>
439                         <plugin>
440                                 <groupId>org.apache.maven.plugins</groupId>
441                                 <artifactId>maven-compiler-plugin</artifactId>
442                                 <version>3.1</version>
443                         </plugin>
444                 
445                         <!-- Checkstyle plugin - used to report on compliance with -->
446                         <!-- the Google style guide. -->
447                         <plugin>
448                                 <groupId>org.apache.maven.plugins</groupId>
449                                 <artifactId>maven-site-plugin</artifactId>
450                                 <version>3.3</version>
451                                 <configuration>
452                                         <reportPlugins>
453                                                 <plugin>
454                                                         <groupId>org.apache.maven.plugins</groupId>
455                                                         <artifactId>maven-checkstyle-plugin</artifactId>
456                                                         <version>2.17</version>
457                                                         <reportSets>
458                                                                 <reportSet>
459                                                                         <reports>
460                                                                                 <report>checkstyle</report>
461                                                                         </reports>
462                                                                 </reportSet>
463                                                         </reportSets>
464                                                 </plugin>
465                                         </reportPlugins>
466                                 </configuration>
467                         </plugin>
468                         
469             <!-- license plugin -->
470             <plugin>
471                                 <groupId>com.mycila</groupId>
472                                 <artifactId>license-maven-plugin</artifactId>
473                                 <version>3.0</version>
474                                 <configuration>
475                                         <header>License.txt</header>
476                                         <includes>
477                                                 <include>src/main/java/**</include>
478                                                 <include>src/test/java/**</include>
479                                         </includes>
480                                 </configuration>
481                                 <executions>
482                                         <execution>
483                                                 <goals>
484                                                         <goal>format</goal>
485                                                 </goals>
486                                                 <phase>process-sources</phase>
487                                         </execution>
488                                 </executions>
489                         </plugin>
490
491              <plugin>
492                 <groupId>org.apache.maven.plugins</groupId>
493                 <artifactId>maven-deploy-plugin</artifactId>                    
494                 <configuration>
495                 <skip>true</skip>
496                 </configuration>
497              </plugin>
498              <plugin>
499               <groupId>org.codehaus.mojo</groupId>
500               <artifactId>sonar-maven-plugin</artifactId>
501               <version>3.2</version>
502             </plugin>
503             <plugin>
504               <groupId>org.jacoco</groupId>
505               <artifactId>jacoco-maven-plugin</artifactId>
506               <version>0.7.7.201606060606</version>
507               <configuration>
508                    <dumpOnExit>true</dumpOnExit>
509               </configuration>
510               <executions>
511                    <execution>
512                      <id>jacoco-initialize-unit-tests</id>
513                      <goals>
514                            <goal>prepare-agent</goal>
515                      </goals>
516                      <configuration>
517                            <destFile>${project.build.directory}/coverage-reports/jacoco.exec</destFile>
518                            <!-- <append>true</append> -->
519                      </configuration>
520                    </execution>
521               </executions>
522             </plugin>
523             <plugin>
524                 <groupId>org.sonatype.plugins</groupId>
525                 <artifactId>nexus-staging-maven-plugin</artifactId>
526                 <version>1.6.7</version>
527                 <extensions>true</extensions>
528                 <configuration>
529                         <nexusUrl>${nexusproxy}</nexusUrl>
530                         <stagingProfileId>176c31dfe190a</stagingProfileId>
531                         <serverId>ecomp-staging</serverId>
532                 </configuration>
533             </plugin>
534
535                 </plugins>              
536         </build>
537         
538         
539 </project>