Revisions made to the Model Loader to use Babel
[aai/model-loader.git] / 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
22 <project xmlns="http://maven.apache.org/POM/4.0.0" 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                 <artifactId>ajsc-archetype-parent</artifactId>
28                 <groupId>com.att.ajsc</groupId>
29                 <version>2.0.0</version>
30         </parent>
31
32         <groupId>org.onap.aai.model-loader</groupId>
33         <artifactId>model-loader</artifactId>
34         <version>1.2.0-SNAPSHOT</version>
35
36         <properties>
37                 <docker.location>${basedir}/target</docker.location>
38                 <module.ajsc.namespace.name>model-loader</module.ajsc.namespace.name>
39                 <module.ajsc.namespace.version>v1</module.ajsc.namespace.version>
40                 <ajscRuntimeVersion>2.0.0</ajscRuntimeVersion>
41                 <absoluteDistFilesRoot>/appl/${project.artifactId}</absoluteDistFilesRoot>
42                 <distFilesRoot>/appl/${project.artifactId}/${project.version}</distFilesRoot>
43                 <runAjscHome>${basedir}/target/swm/package/nix/dist_files${distFilesRoot}</runAjscHome>
44
45         <javax.ws.rs-api.version>2.0.1</javax.ws.rs-api.version>
46                 <apache.lang3.version>3.6</apache.lang3.version>
47                 <apache.commons-text.version>1.1</apache.commons-text.version>
48                 <commons-compress.version>1.14</commons-compress.version>
49                 <fasterxml.version>2.8.1</fasterxml.version>
50                 <mockito.version>1.10.19</mockito.version>
51                 <powermock.version>1.6.2</powermock.version>
52                 <jsr311-api.version>1.1.1</jsr311-api.version>
53                 <jersey-client.version>1.18</jersey-client.version>
54                 <gson.version>2.7</gson.version>
55                 <hamcrest-all.version>1.3</hamcrest-all.version>
56         <version.jacoco.maven.plugin>0.7.9</version.jacoco.maven.plugin>
57             
58                 <!-- Port Selection. A value of 0 will allow for dynamic port selection. 
59                         For local testing, you may choose to hardcode this value to something like 
60                         8080 -->
61                 <serverPort>9500</serverPort>
62                 <sslport>0</sslport>
63
64
65                 <!-- For SOA Cloud Installation -->
66                 <installOwnerUser>aaiadmin</installOwnerUser>
67                 <installOwnerGroup>aaiadmin</installOwnerGroup>
68                 <ownerManagementGroup>org.openecomp.aai.dev</ownerManagementGroup>
69
70                 <testRouteOffer>workstation</testRouteOffer>
71                 <testEnv>DEV</testEnv>
72
73                 <dependency.scope>provided</dependency.scope>
74                 <checkstyle.config.location>google_checks.xml</checkstyle.config.location>
75                 <maven.compiler.source>1.8</maven.compiler.source>
76                 <maven.compiler.target>1.8</maven.compiler.target>
77                 <sonar.language>java</sonar.language>
78                 <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
79                 <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath>
80                 <sonar.jacoco.reportPath>${project.build.directory}/coverage-reports/jacoco.exec</sonar.jacoco.reportPath>
81                 <sonar.jacoco.reportMissing.force.zero>false</sonar.jacoco.reportMissing.force.zero>
82                 <sonar.projectVersion>${project.version}</sonar.projectVersion>
83                 <nexusproxy>https://nexus.openecomp.org</nexusproxy>
84                 <babel.version>1.2.0-SNAPSHOT</babel.version>
85                 <aai.rest.client.version>1.2.1</aai.rest.client.version>
86         </properties>
87
88         <distributionManagement>
89                 <repository>
90                         <id>ecomp-releases</id>
91                         <name>ECOMP Release Repository</name>
92                         <url>${nexusproxy}/content/repositories/releases/</url>
93                 </repository>
94                 <snapshotRepository>
95                         <id>ecomp-snapshots</id>
96                         <name>ECOMP Snapshot Repository</name>
97                         <url>${nexusproxy}/content/repositories/snapshots/</url>
98                 </snapshotRepository>
99         </distributionManagement>
100         
101         <dependencies>
102                 <dependency>
103                         <groupId>org.onap.aai</groupId>
104                         <artifactId>babel</artifactId>
105                         <version>${babel.version}</version>
106                         <classifier>client</classifier>
107                         <exclusions>
108                                 <exclusion>
109                                         <groupId>*</groupId>
110                                         <artifactId>*</artifactId>
111                                 </exclusion>
112                         </exclusions>
113                 </dependency>
114                 <dependency>
115                         <groupId>javax.ws.rs</groupId>
116                         <artifactId>javax.ws.rs-api</artifactId>
117                         <version>${javax.ws.rs-api.version}</version>
118                 </dependency>
119                 <dependency>
120                         <groupId>javax.ws.rs</groupId>
121                         <artifactId>jsr311-api</artifactId>
122                         <version>${jsr311-api.version}</version>
123                 </dependency>
124                 <!-- https://mvnrepository.com/artifact/com.sun.jersey/jersey-bundle -->
125                 <dependency>
126                         <groupId>com.sun.jersey</groupId>
127                         <artifactId>jersey-client</artifactId>
128                         <version>${jersey-client.version}</version>
129                 </dependency>
130                 <dependency>
131                         <groupId>org.onap.aai</groupId>
132                         <artifactId>rest-client</artifactId>
133                         <version>${aai.rest.client.version}</version>
134                 </dependency>
135                 <dependency>
136                         <groupId>com.google.code.gson</groupId>
137                         <artifactId>gson</artifactId>
138                         <version>${gson.version}</version>
139                 </dependency>
140
141                 <!-- Test dependencies -->
142                 <dependency>
143                         <groupId>org.hamcrest</groupId>
144                         <artifactId>hamcrest-all</artifactId>
145                         <version>${hamcrest-all.version}</version>
146                         <scope>test</scope>
147                 </dependency>
148                 <dependency>
149                         <groupId>org.mockito</groupId>
150                         <artifactId>mockito-core</artifactId>
151                         <version>${mockito.version}</version>
152                         <scope>test</scope>
153                 </dependency>
154                 <dependency>
155                         <groupId>org.powermock</groupId>
156                         <artifactId>powermock-module-junit4</artifactId>
157                         <version>${powermock.version}</version>
158                         <scope>test</scope>
159                 </dependency>
160                 <dependency>
161                         <groupId>org.powermock</groupId>
162                         <artifactId>powermock-api-mockito</artifactId>
163                         <version>${powermock.version}</version>
164                         <scope>test</scope>
165                 </dependency>
166                 <dependency>
167                         <groupId>org.powermock</groupId>
168                         <artifactId>powermock-module-junit4-rule-agent</artifactId>
169                         <version>1.6.2</version>
170                         <scope>test</scope>
171                         <exclusions>
172                                 <exclusion>
173                                         <artifactId>powermock-module-javaagent</artifactId>
174                                         <groupId>org.powermock</groupId>
175                                 </exclusion>
176                         </exclusions>
177                 </dependency>
178                 <dependency>
179                         <groupId>org.javassist</groupId>
180                         <artifactId>javassist</artifactId>
181                         <version>3.19.0-GA</version>
182                 </dependency>
183                 <dependency>
184                         <groupId>com.fasterxml.jackson.core</groupId>
185                         <artifactId>jackson-core</artifactId>
186                         <version>${fasterxml.version}</version><!--$NO-MVN-MAN-VER$ -->
187                 </dependency>
188
189                 <!-- xjc dependencies -->
190                 <dependency>
191                         <groupId>javax.xml.bind</groupId>
192                         <artifactId>jaxb-api</artifactId>
193                         <version>2.2.11</version>
194                 </dependency>
195                 <dependency>
196                         <groupId>com.sun.xml.bind</groupId>
197                         <artifactId>jaxb-impl</artifactId>
198                         <version>2.2.11</version>
199                 </dependency>
200                 <dependency>
201                         <groupId>com.sun.xml.bind</groupId>
202                         <artifactId>jaxb-core</artifactId>
203                         <version>2.2.11</version>
204                 </dependency>
205                 <dependency>
206                         <groupId>com.sun.xml.bind</groupId>
207                         <artifactId>jaxb-xjc</artifactId>
208                         <version>2.2.11</version>
209                 </dependency>
210                 <dependency>
211                         <groupId>org.eclipse.persistence</groupId>
212                         <artifactId>org.eclipse.persistence.moxy</artifactId>
213                         <version>2.6.2</version>
214                         <scope>compile</scope>
215                 </dependency>
216                 <!-- https://mvnrepository.com/artifact/com.mikesamuel/json-sanitizer -->
217                 <dependency>
218                         <groupId>com.mikesamuel</groupId>
219                         <artifactId>json-sanitizer</artifactId>
220                         <version>1.2.0</version>
221                 </dependency>
222
223                 <!-- Common logging framework -->
224                 <dependency>
225                         <groupId>org.onap.aai.logging-service</groupId>
226                         <artifactId>common-logging</artifactId>
227                         <version>1.2.2</version>
228                 </dependency>
229                 <dependency>
230                         <groupId>ch.qos.logback</groupId>
231                         <artifactId>logback-core</artifactId>
232                         <version>1.1.7</version>
233                 </dependency>
234                 <dependency>
235                         <groupId>org.openecomp.sdc.sdc-distribution-client</groupId>
236                         <artifactId>sdc-distribution-client</artifactId>
237                         <version>1.2.2</version>
238                 </dependency>
239                 <dependency>
240                         <groupId>org.apache.httpcomponents</groupId>
241                         <artifactId>httpclient</artifactId>
242                         <version>4.5</version>
243                 </dependency>
244                 <dependency>
245                         <groupId>org.json</groupId>
246                         <artifactId>json</artifactId>
247                         <version>20131018</version><!--$NO-MVN-MAN-VER$ -->
248                 </dependency>
249                 <dependency>
250                         <groupId>org.eclipse.jetty</groupId>
251                         <artifactId>jetty-security</artifactId>
252                         <version>9.3.8.RC0</version>
253                 </dependency>
254                 <dependency>
255                         <groupId>org.springframework</groupId>
256                         <artifactId>spring-webmvc</artifactId>
257                 </dependency>
258                 <dependency>
259                         <groupId>jline</groupId>
260                         <artifactId>jline</artifactId>
261                         <version>2.12.1</version>
262                 </dependency>
263                 <dependency>
264                         <groupId>org.yaml</groupId>
265                         <artifactId>snakeyaml</artifactId>
266                         <version>1.18</version>
267                 </dependency>
268
269                 <!-- apache commons -->
270                 <dependency>
271                         <groupId>org.apache.commons</groupId>
272                         <artifactId>commons-compress</artifactId>
273                         <version>${commons-compress.version}</version>
274                 </dependency>
275                 <dependency>
276                         <groupId>commons-io</groupId>
277                         <artifactId>commons-io</artifactId>
278                 </dependency>
279                 <dependency>
280                         <groupId>org.apache.commons</groupId>
281                         <artifactId>commons-lang3</artifactId>
282                         <version>${apache.lang3.version}</version>
283                 </dependency>
284                 <dependency>
285                         <groupId>org.apache.commons</groupId>
286                         <artifactId>commons-text</artifactId>
287                         <version>${apache.commons-text.version}</version>
288                 </dependency>
289         </dependencies>
290
291         <!-- Plugins and repositories -->
292         <pluginRepositories>
293                 <pluginRepository>
294                         <id>central</id>
295                         <url>http://repo1.maven.org/maven2</url>
296                 </pluginRepository>
297                 <pluginRepository>
298                         <id>EvoSuite</id>
299                         <name>EvoSuite Repository</name>
300                         <url>http://www.evosuite.org/m2</url>
301                 </pluginRepository>
302         </pluginRepositories>
303
304         <profiles>
305                 <profile>
306                         <id>runAjsc</id>
307                         <build>
308                                 <defaultGoal>initialize</defaultGoal>
309                                 <plugins>
310                                         <plugin>
311                                                 <groupId>org.codehaus.mojo</groupId>
312                                                 <artifactId>exec-maven-plugin</artifactId>
313                                                 <version>1.3.2</version>
314                                                 <executions>
315                                                         <execution>
316                                                                 <phase>initialize</phase>
317                                                                 <goals>
318                                                                         <goal>java</goal>
319                                                                 </goals>
320                                                                 <configuration>
321                                                                         <includeProjectDependencies>false</includeProjectDependencies>
322                                                                         <includePluginDependencies>true</includePluginDependencies>
323                                                                         <executable>java</executable>
324                                                                         <mainClass>com.att.ajsc.runner.Runner</mainClass>
325                                                                         <executableDependency>
326                                                                                 <groupId>com.att.ajsc</groupId>
327                                                                                 <artifactId>ajsc-runner</artifactId>
328                                                                         </executableDependency>
329                                                                         <additionalClasspathElements>
330                                                                                 <additionalClasspathElement>${basedir}/ajsc-shared-config/etc</additionalClasspathElement>
331                                                                         </additionalClasspathElements>
332
333                                                                         <environmentVariables>
334                                                                                 <AJSC_HOME>${runAjscHome}</AJSC_HOME>
335                                                                         </environmentVariables>
336
337                                                                         <!-- Main AJSC System Properties below (necessary for proper startup) -->
338                                                                         <systemProperties>
339                                                                                 <systemProperty>
340                                                                                         <key>AJSC_HOME</key>
341                                                                                         <value>${runAjscHome}</value>
342                                                                                 </systemProperty>
343                                                                                 <systemProperty>
344                                                                                         <key>CONFIG_HOME</key>
345                                                                                         <value>${basedir}/appconfig-local/</value>
346                                                                                 </systemProperty>
347                                                                                 <systemProperty>
348                                                                                         <key>AJSC_CONF_HOME</key>
349                                                                                         <value>${basedir}/bundleconfig-local</value>
350                                                                                 </systemProperty>
351                                                                                 <systemProperty>
352                                                                                         <key>logback.configurationFile</key>
353                                                                                         <value>${basedir}/ajsc-shared-config/etc/logback.xml</value>
354                                                                                 </systemProperty>
355                                                                                 <systemProperty>
356                                                                                         <key>AJSC_SHARED_CONFIG</key>
357                                                                                         <value>${basedir}/ajsc-shared-config</value>
358                                                                                 </systemProperty>
359
360                                                                                 <sysproperty>
361                                                                                         <key>AJSC_EXTERNAL_LIB_FOLDERS</key>
362                                                                                         <value>${basedir}/target/commonLibs</value>
363                                                                                 </sysproperty>
364                                                                                 <sysproperty>
365                                                                                         <key>AJSC_EXTERNAL_PROPERTIES_FOLDERS</key>
366                                                                                         <value>${basedir}/ajsc-shared-config/etc</value>
367                                                                                 </sysproperty>
368                                                                                 <systemProperty>
369                                                                                         <key>AJSC_SERVICE_NAMESPACE</key>
370                                                                                         <value>${module.ajsc.namespace.name}</value>
371                                                                                 </systemProperty>
372                                                                                 <systemProperty>
373                                                                                         <key>AJSC_SERVICE_VERSION</key>
374                                                                                         <value>${module.ajsc.namespace.version}</value>
375                                                                                 </systemProperty>
376                                                                                 <systemProperty>
377                                                                                         <key>SOACLOUD_SERVICE_VERSION</key>
378                                                                                         <value>${project.version}</value>
379                                                                                 </systemProperty>
380                                                                                 <systemProperty>
381                                                                                         <key>server.port</key>
382                                                                                         <value>${serverPort}</value>
383                                                                                 </systemProperty>
384                                                                         </systemProperties>
385
386                                                                         <!-- Command Line Arguments to add to the java command. Here, you 
387                                                                                 can specify the port as well as the Context you want your service to run 
388                                                                                 in. Use context=/ to run in an unnamed Context (Root Context). The default 
389                                                                                 configuration of the AJSC is to run under the / Context. Setting the port 
390                                                                                 here can aid during the development phase of your service. However, you can 
391                                                                                 leave this argument out entirely, and the AJSC will default to using an Ephemeral 
392                                                                                 port. -->
393                                                                         <arguments>
394                                                                                 <argument>context=//</argument>
395                                                                                 <argument>port=${serverPort}</argument>
396                                                                                 <argument>sslport=${sslport}</argument>
397                                                                         </arguments>
398                                                                 </configuration>
399                                                         </execution>
400                                                 </executions>
401                                                 <configuration>
402                                                         <executable>java</executable>
403                                                 </configuration>
404                                                 <dependencies>
405                                                         <dependency>
406                                                                 <groupId>com.att.ajsc</groupId>
407                                                                 <artifactId>ajsc-runner</artifactId>
408                                                                 <version>${ajscRuntimeVersion}</version>
409                                                         </dependency>
410                                                 </dependencies>
411                                         </plugin>
412                                 </plugins>
413                         </build>
414                 </profile>
415         </profiles>
416
417         <build>
418                 <plugins>
419                         <plugin>
420                                 <groupId>org.apache.maven.plugins</groupId>
421                                 <artifactId>maven-resources-plugin</artifactId>
422                                 <version>2.7</version>
423                                 <executions>
424                                         <execution>
425                                                 <id>copy-docker-file</id>
426                                                 <phase>package</phase>
427                                                 <goals>
428                                                         <goal>copy-resources</goal>
429                                                 </goals>
430                                                 <configuration>
431                                                         <outputDirectory>target</outputDirectory>
432                                                         <overwrite>true</overwrite>
433                                                         <resources>
434                                                                 <resource>
435                                                                         <directory>${basedir}/src/main/docker</directory>
436                                                                         <filtering>true</filtering>
437                                                                         <includes>
438                                                                                 <include>**/*</include>
439                                                                         </includes>
440                                                                 </resource>
441                                                                 <resource>
442                                                                         <directory>${basedir}/src/main/bin/</directory>
443                                                                 </resource>
444                                                         </resources>
445                                                 </configuration>
446                                         </execution>
447                                 </executions>
448                         </plugin>
449                         <plugin>
450                                 <groupId>com.spotify</groupId>
451                                 <artifactId>docker-maven-plugin</artifactId>
452                                 <version>0.4.11</version>
453                                 <configuration>
454                                         <verbose>true</verbose>
455                                         <serverId>docker-hub</serverId>
456                                         <imageName>${docker.push.registry}/openecomp/${project.artifactId}</imageName>
457                                         <dockerDirectory>${docker.location}</dockerDirectory>
458                                         <imageTags>
459                                                 <imageTag>latest</imageTag>
460                                         </imageTags>
461                                         <forceTags>true</forceTags>
462                                 </configuration>
463                         </plugin>
464                         <plugin>
465                                 <groupId>org.apache.maven.plugins</groupId>
466                                 <artifactId>maven-dependency-plugin</artifactId>
467                                 <version>2.8</version>
468                                 <executions>
469                                         <execution>
470                                                 <id>copy-agent</id>
471                                                 <phase>process-test-classes</phase>
472                                                 <goals>
473                                                         <goal>copy</goal>
474                                                 </goals>
475                                                 <configuration>
476                                                         <artifactItems>
477                                                                 <artifactItem>
478                                                                         <groupId>org.powermock</groupId>
479                                                                         <artifactId>powermock-module-javaagent</artifactId>
480                                                                         <version>1.6.2</version>
481                                                                         <outputDirectory>${project.build.directory}/agents</outputDirectory>
482                                                                         <destFileName>powermock-javaagent.jar</destFileName>
483                                                                 </artifactItem>
484                                                         </artifactItems>
485                                                 </configuration>
486                                         </execution>
487                                 </executions>
488                         </plugin>
489                         <plugin>
490                                 <groupId>org.apache.maven.plugins</groupId>
491                                 <artifactId>maven-surefire-plugin</artifactId>
492                                 <version>2.12.4</version><!--$NO-MVN-MAN-VER$ -->
493                                 <configuration>
494                                         <argLine>-noverify ${argLine}</argLine>
495                                 </configuration>
496                         </plugin>
497                         <plugin>
498                                 <groupId>org.apache.maven.plugins</groupId>
499                                 <artifactId>maven-compiler-plugin</artifactId>
500                                 <version>3.1</version>
501                         </plugin>
502
503                         <!-- Checkstyle plugin - used to report on compliance with -->
504                         <!-- the Google style guide. -->
505                         <plugin>
506                                 <groupId>org.apache.maven.plugins</groupId>
507                                 <artifactId>maven-site-plugin</artifactId>
508                                 <version>3.3</version>
509                                 <configuration>
510                                         <reportPlugins>
511                                                 <plugin>
512                                                         <groupId>org.apache.maven.plugins</groupId>
513                                                         <artifactId>maven-checkstyle-plugin</artifactId>
514                                                         <version>2.17</version>
515                                                         <reportSets>
516                                                                 <reportSet>
517                                                                         <reports>
518                                                                                 <report>checkstyle</report>
519                                                                         </reports>
520                                                                 </reportSet>
521                                                         </reportSets>
522                                                 </plugin>
523                                         </reportPlugins>
524                                 </configuration>
525                         </plugin>
526
527                         <!-- license plugin
528                         <plugin>
529                                 <groupId>com.mycila</groupId>
530                                 <artifactId>license-maven-plugin</artifactId>
531                                 <version>3.0</version>
532                                 <configuration>
533                                         <header>License.txt</header>
534                                         <includes>
535                                                 <include>src/main/java/**</include>
536                                                 <include>src/test/java/**</include>
537                                         </includes>
538                                 </configuration>
539                                 <executions>
540                                         <execution>
541                                                 <goals>
542                                                         <goal>format</goal>
543                                                 </goals>
544                                                 <phase>process-sources</phase>
545                                         </execution>
546                                 </executions>
547                         </plugin>
548                          -->
549                         <plugin>
550                                 <groupId>org.apache.maven.plugins</groupId>
551                                 <artifactId>maven-deploy-plugin</artifactId>
552                                 <configuration>
553                                         <skip>true</skip>
554                                 </configuration>
555                         </plugin>
556                         <plugin>
557                                 <groupId>org.codehaus.mojo</groupId>
558                                 <artifactId>sonar-maven-plugin</artifactId>
559                                 <version>3.2</version>
560                         </plugin>
561             <plugin>
562                 <groupId>org.jacoco</groupId>
563                 <artifactId>jacoco-maven-plugin</artifactId>
564                 <version>${version.jacoco.maven.plugin}</version>
565                 <executions>
566                         <execution>
567                             <id>jacoco-initialize-unit-tests</id>
568                             <goals>
569                                 <goal>prepare-agent</goal>
570                             </goals>
571                         </execution>
572                         <execution> 
573                             <id>report</id>
574                             <phase>package</phase>
575                             <goals>
576                                 <goal>report</goal>
577                             </goals>
578                         </execution>
579                 </executions>
580             </plugin>
581                         <plugin>
582                                 <groupId>org.sonatype.plugins</groupId>
583                                 <artifactId>nexus-staging-maven-plugin</artifactId>
584                                 <version>1.6.7</version>
585                                 <extensions>true</extensions>
586                                 <configuration>
587                                         <nexusUrl>${nexusproxy}</nexusUrl>
588                                         <stagingProfileId>176c31dfe190a</stagingProfileId>
589                                         <serverId>ecomp-staging</serverId>
590                                 </configuration>
591                         </plugin>
592
593                 </plugins>
594         </build>
595 </project>