fde1a8c72f89907407cc669f2c06295c09fbf546
[aai/traversal.git] / aai-traversal / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3
4     ============LICENSE_START=======================================================
5     org.onap.aai
6     ================================================================================
7     Copyright © 2017-2018 AT&T Intellectual Property. All rights reserved.
8     ================================================================================
9     Licensed under the Apache License, Version 2.0 (the "License");
10     you may not use this file except in compliance with the License.
11     You may obtain a copy of the License at
12
13        http://www.apache.org/licenses/LICENSE-2.0
14
15     Unless required by applicable law or agreed to in writing, software
16     distributed under the License is distributed on an "AS IS" BASIS,
17     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18     See the License for the specific language governing permissions and
19     limitations under the License.
20     ============LICENSE_END=========================================================
21
22 -->
23 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
24          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
25     <modelVersion>4.0.0</modelVersion>
26     <groupId>org.onap.aai.traversal</groupId>
27     <artifactId>aai-traversal</artifactId>
28     <version>1.2.1</version>
29
30     <parent>
31         <groupId>org.springframework.boot</groupId>
32         <artifactId>spring-boot-starter-parent</artifactId>
33         <version>1.5.12.RELEASE</version>
34     </parent>
35
36     <properties>
37         <swagger.directory>${basedir}/target/classes/META-INF/traversal/swagger</swagger.directory>
38         <icd.file>service.json</icd.file>
39         <icd.package>com.att.ajsc.ajsc6configdemo.service.rs</icd.package>
40         <java.version>1.8</java.version>
41         <build.number>local</build.number>
42         <kube.namespace>org-onap-aai</kube.namespace>
43         <service.account>ajsc-svc-account</service.account>
44         <namespace>com.att.ajsc</namespace>
45         <start-class>org.onap.aai.TraversalApp</start-class>
46
47         <aai-schema.version>1.2.4</aai-schema.version>
48         <aai.core.version>1.2.4</aai.core.version>
49
50         <!-- Start of the jacoco plugin properties -->
51         <sonar.language>java</sonar.language>
52         <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
53         <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath>
54         <sonar.jacoco.reportPath>${project.build.directory}/coverage-reports/jacoco.exec</sonar.jacoco.reportPath>
55         <sonar.jacoco.reportMissing.force.zero>false</sonar.jacoco.reportMissing.force.zero>
56         <sonar.projectVersion>${project.version}</sonar.projectVersion>
57         <!-- End of the jacoco plugin properties -->
58
59         <jolt.version>0.0.24</jolt.version>
60         <jopt.simple.version>4.9</jopt.simple.version>
61
62         <io.swagger.version>1.5.8</io.swagger.version>
63         <apache.log4j.version>1.2.17</apache.log4j.version>
64
65         <commons.beanutils.version>1.9.2</commons.beanutils.version>
66         <commons.compress.version>1.10</commons.compress.version>
67         <commons.configuration.version>1.9</commons.configuration.version>
68
69         <googlecode.diffutils.version>1.3.0</googlecode.diffutils.version>
70         <scamper.encryption.version>1.8.20</scamper.encryption.version>
71         <httpcomponents.httpmime.version>4.5.2</httpcomponents.httpmime.version>
72         <scamper.version>1.8.36</scamper.version>
73         <dom4j.version>1.6.1</dom4j.version>
74         <commons.lang.version>2.6</commons.lang.version>
75         <eelf.core.version>1.0.0</eelf.core.version>
76         <logback.version>1.2.3</logback.version>
77         <hamcrest.junit.version>2.0.0.0</hamcrest.junit.version>
78         <janino.version>2.7.8</janino.version>
79         <google.guava.version>16.0</google.guava.version>
80         <janusgraph.version>0.2.0</janusgraph.version>
81         <gremlin.version>3.2.2</gremlin.version>
82         <smack.version>3.0.4</smack.version>
83         <json.simple.version>1.1.1</json.simple.version>
84         <mockito.version>1.10.19</mockito.version>
85         <powermock.version>1.6.2</powermock.version>
86         <jcommander.version>1.48</jcommander.version>
87         <json.version>20090211</json.version>
88         <freemarker.version>2.3.21</freemarker.version>
89         <jaxb.version>2.2.11</jaxb.version>
90         <eclipse.persistence.version>2.6.2</eclipse.persistence.version>
91         <json.patch.version>1.9</json.patch.version>
92         <javatuples.version>1.2</javatuples.version>
93         <gson.version>2.7</gson.version>
94         <dmaap.client.version>0.2.12</dmaap.client.version>
95         <httpcore.version>4.4</httpcore.version>
96         <json.path.version>2.2.0</json.path.version>
97         <activemq.version>5.15.3</activemq.version>
98         <httpclient.version>4.5.3</httpclient.version>
99         <spring.jms.version>4.3.2.RELEASE</spring.jms.version>
100         <spotify.docker.version>0.4.11</spotify.docker.version>
101         <spring.security.version>1.0.3.RELEASE</spring.security.version>
102
103         <dme2.version>2.8.5</dme2.version>
104         <async.retry.version>0.0.7</async.retry.version>
105         <jsonassert.version>1.4.0</jsonassert.version>
106
107         <eclipse.jetty.version>9.4.1.v20170120</eclipse.jetty.version>
108
109         <docker.fabric.version>0.23.0</docker.fabric.version>
110         <!-- Default docker registry that maven fabric plugin will try to pull from -->
111         <docker.registry>docker.io</docker.registry>
112         <!-- Specifying the docker push registry where the image should be pushed -->
113         <!-- This value should be overwritten at runtime to wherever need to be pushed to -->
114         <docker.push.registry>localhost:5000</docker.push.registry>
115
116         <!--
117              Location where assembly of our scripts, resources and main jar will be held
118              Check the aai-traversal/src/main/assembly/descriptor.xml for more info
119         -->
120         <aai.build.directory>${project.build.directory}/${project.artifactId}-${project.version}-build/
121         </aai.build.directory>
122         <aai.docker.namespace>onap</aai.docker.namespace>
123         <maven.skip.tests>true</maven.skip.tests>
124
125         <spring.web.version>4.3.6.RELEASE</spring.web.version>
126         <aai.project.version>1.2.0</aai.project.version>
127         <aai.docker.version>1.2</aai.docker.version>
128
129         <!--
130             Nexus Proxy Properties and Snapshot Locations
131             Ideally this can be overwritten at runtime per internal environment specific values at runtime
132         -->
133         <nexusproxy>https://nexus.onap.org</nexusproxy>
134         <site.path>/content/sites/site/org/onap/aai/traversal/${project.artifactId}/${project.version}</site.path>
135         <release.path>/content/repositories/releases/</release.path>
136         <snapshot.path>/content/repositories/snapshots/</snapshot.path>
137
138         <netty.handler.version>4.1.9.Final</netty.handler.version>
139         <netty.version>4.0.37.Final</netty.version>
140         <jackson.core.version>2.8.11.1</jackson.core.version>
141         <groovy.version>2.4.4</groovy.version>
142
143         <spring.test.version>4.3.6.RELEASE</spring.test.version>
144
145         <!-- This will be used for the docker images as the default format of maven build has issues -->
146         <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
147
148         <antlr4.visitor>true</antlr4.visitor>
149         <antlr4.listener>true</antlr4.listener>
150         <antlr.version>4.7</antlr.version>
151
152         <plexus.utils.version>3.1.0</plexus.utils.version>
153
154         <jacoco.line.coverage.limit>0.69</jacoco.line.coverage.limit>
155     </properties>
156     <profiles>
157         <!-- Docker profile to be used for building docker image and pushing to nexus -->
158         <profile>
159             <id>docker</id>
160             <build>
161                 <plugins>
162                     <plugin>
163                         <groupId>io.fabric8</groupId>
164                         <artifactId>docker-maven-plugin</artifactId>
165                         <version>${docker.fabric.version}</version>
166                         <configuration>
167                             <verbose>true</verbose>
168                             <apiVersion>1.23</apiVersion>
169                             <images>
170                                 <image>
171                                     <name>${docker.push.registry}/${aai.docker.namespace}/aai-traversal:%l</name>
172                                     <build>
173                                         <filter>@</filter>
174                                         <tags>
175                                             <tag>latest</tag>
176                                             <tag>${aai.docker.version}-STAGING-${maven.build.timestamp}</tag>
177                                             <tag>${aai.docker.version}-STAGING-latest</tag>
178                                         </tags>
179                                         <cleanup>try</cleanup>
180                                         <dockerFileDir>${project.basedir}/src/main/docker</dockerFileDir>
181                                         <assembly>
182                                             <inline>
183                                                 <fileSets>
184                                                     <fileSet>
185                                                         <directory>${aai.build.directory}</directory>
186                                                         <outputDirectory>/${project.artifactId}</outputDirectory>
187                                                     </fileSet>
188                                                 </fileSets>
189                                             </inline>
190                                         </assembly>
191                                     </build>
192                                 </image>
193                             </images>
194                         </configuration>
195                         <executions>
196                             <execution>
197                                 <id>clean-images</id>
198                                 <phase>pre-clean</phase>
199                                 <goals>
200                                     <goal>remove</goal>
201                                 </goals>
202                                 <configuration>
203                                     <removeAll>true</removeAll>
204                                 </configuration>
205                             </execution>
206                             <execution>
207                                 <id>generate-images</id>
208                                 <phase>package</phase>
209                                 <goals>
210                                     <goal>build</goal>
211                                 </goals>
212                             </execution>
213                             <execution>
214                                 <id>push-images</id>
215                                 <phase>deploy</phase>
216                                 <goals>
217                                     <goal>push</goal>
218                                 </goals>
219                             </execution>
220                         </executions>
221                     </plugin>
222                 </plugins>
223             </build>
224         </profile>
225         <!--
226             Use of this profile is a way to support legacy runAjsc profile seen using AJSC 2
227             and also because spring-boot:run doesn't work with large classpaths in windows
228             so this accommodates the behavior of running the application from maven
229         -->
230         <profile>
231             <id>runAjsc</id>
232             <properties>
233                 <skipTests>${maven.skip.tests}</skipTests>
234             </properties>
235             <build>
236                 <defaultGoal>pre-integration-test</defaultGoal>
237                 <plugins>
238                     <plugin>
239                         <groupId>org.codehaus.mojo</groupId>
240                         <artifactId>exec-maven-plugin</artifactId>
241                         <version>1.6.0</version>
242                         <executions>
243                             <execution>
244                                 <id>run-spring-boot</id>
245                                 <phase>package</phase>
246                                 <goals>
247                                     <goal>java</goal>
248                                 </goals>
249                             </execution>
250                         </executions>
251                         <configuration>
252                             <mainClass>${start-class}</mainClass>
253                             <systemProperties>
254                                 <systemProperty>
255                                     <key>snapshot.location</key>
256                                     <value>${snapshot.file}</value>
257                                 </systemProperty>
258                             </systemProperties>
259                             <executable>java</executable>
260                         </configuration>
261                     </plugin>
262                 </plugins>
263             </build>
264         </profile>
265     </profiles>
266     <dependencies>
267         <dependency>
268             <groupId>org.springframework.boot</groupId>
269             <artifactId>spring-boot-starter-jersey</artifactId>
270             <exclusions>
271                 <exclusion>
272                     <groupId>com.sun.jersey</groupId>
273                     <artifactId>jersey-servlet</artifactId>
274                 </exclusion>
275                 <exclusion>
276                     <groupId>org.springframework.boot</groupId>
277                     <artifactId>spring-boot-starter-tomcat</artifactId>
278                 </exclusion>
279             </exclusions>
280         </dependency>
281         <dependency>
282             <groupId>net.sf.jopt-simple</groupId>
283             <artifactId>jopt-simple</artifactId>
284             <version>${jopt.simple.version}</version>
285         </dependency>
286         <dependency>
287             <groupId>io.swagger</groupId>
288             <artifactId>swagger-core</artifactId>
289             <version>${io.swagger.version}</version>
290             <exclusions>
291                 <exclusion>
292                     <groupId>javax.ws.rs</groupId>
293                     <artifactId>jsr311-api</artifactId>
294                 </exclusion>
295             </exclusions>
296         </dependency>
297         <dependency>
298             <groupId>io.swagger</groupId>
299             <artifactId>swagger-annotations</artifactId>
300             <version>${io.swagger.version}</version>
301         </dependency>
302         <dependency>
303             <groupId>io.swagger</groupId>
304             <artifactId>swagger-jersey-jaxrs</artifactId>
305             <version>${io.swagger.version}</version>
306             <exclusions>
307                 <exclusion>
308                     <groupId>org.glassfish.jersey.media</groupId>
309                     <artifactId>jersey-media-multipart</artifactId>
310                 </exclusion>
311                 <exclusion>
312                     <artifactId>jersey-core</artifactId>
313                     <groupId>com.sun.jersey</groupId>
314                 </exclusion>
315                 <exclusion>
316                     <artifactId>jersey-json</artifactId>
317                     <groupId>com.sun.jersey</groupId>
318                 </exclusion>
319                 <exclusion>
320                     <artifactId>jersey-server</artifactId>
321                     <groupId>com.sun.jersey</groupId>
322                 </exclusion>
323                 <exclusion>
324                     <artifactId>jersey-client</artifactId>
325                     <groupId>com.sun.jersey</groupId>
326                 </exclusion>
327                 <exclusion>
328                     <artifactId>jsr311-api</artifactId>
329                     <groupId>javax.ws.rs</groupId>
330                 </exclusion>
331                 <exclusion>
332                     <artifactId>jersey-multipart</artifactId>
333                     <groupId>com.sun.jersey.contribs</groupId>
334                 </exclusion>
335             </exclusions>
336         </dependency>
337         <dependency>
338             <groupId>commons-configuration</groupId>
339             <artifactId>commons-configuration</artifactId>
340             <version>${commons.configuration.version}</version>
341             <exclusions>
342                 <exclusion>
343                     <artifactId>commons-lang</artifactId>
344                     <groupId>commons-lang</groupId>
345                 </exclusion>
346             </exclusions>
347         </dependency>
348         <dependency>
349             <groupId>commons-lang</groupId>
350             <artifactId>commons-lang</artifactId>
351             <version>${commons.lang.version}</version>
352         </dependency>
353         <!-- eelf dependency -->
354         <dependency>
355             <groupId>com.att.eelf</groupId>
356             <artifactId>eelf-core</artifactId>
357             <version>${eelf.core.version}</version>
358         </dependency>
359         <dependency>
360             <groupId>ch.qos.logback</groupId>
361             <artifactId>logback-core</artifactId>
362             <version>${logback.version}</version>
363         </dependency>
364         <dependency>
365             <groupId>ch.qos.logback</groupId>
366             <artifactId>logback-classic</artifactId>
367             <version>${logback.version}</version>
368         </dependency>
369         <dependency>
370             <groupId>ch.qos.logback</groupId>
371             <artifactId>logback-access</artifactId>
372             <version>${logback.version}</version>
373         </dependency>
374         <dependency>
375             <groupId>org.hamcrest</groupId>
376             <artifactId>hamcrest-junit</artifactId>
377             <version>${hamcrest.junit.version}</version>
378         </dependency>
379         <dependency>
380             <groupId>junit</groupId>
381             <artifactId>junit</artifactId>
382             <scope>test</scope>
383         </dependency>
384         <dependency>
385             <groupId>com.google.guava</groupId>
386             <artifactId>guava</artifactId>
387             <version>${google.guava.version}</version>
388         </dependency>
389         <dependency>
390             <groupId>org.janusgraph</groupId>
391             <artifactId>janusgraph-core</artifactId>
392             <version>${janusgraph.version}</version>
393             <exclusions>
394                 <exclusion>
395                     <groupId>org.slf4j</groupId>
396                     <artifactId>slf4j-log4j12</artifactId>
397                 </exclusion>
398             </exclusions>
399         </dependency>
400         <dependency>
401             <groupId>org.janusgraph</groupId>
402             <artifactId>janusgraph-cassandra</artifactId>
403             <version>${janusgraph.version}</version>
404             <exclusions>
405                 <exclusion>
406                     <groupId>org.slf4j</groupId>
407                     <artifactId>slf4j-log4j12</artifactId>
408                 </exclusion>
409             </exclusions>
410         </dependency>
411         <dependency>
412             <groupId>org.apache.tinkerpop</groupId>
413             <artifactId>gremlin-driver</artifactId>
414             <version>${gremlin.version}</version>
415         </dependency>
416         <dependency>
417             <groupId>com.fasterxml.jackson.jaxrs</groupId>
418             <artifactId>jackson-jaxrs-json-provider</artifactId>
419         </dependency>
420         <dependency>
421             <groupId>org.mockito</groupId>
422             <artifactId>mockito-all</artifactId>
423             <version>${mockito.version}</version>
424             <scope>test</scope>
425         </dependency>
426         <dependency>
427             <groupId>org.powermock</groupId>
428             <artifactId>powermock-module-junit4</artifactId>
429             <version>${powermock.version}</version>
430             <scope>test</scope>
431         </dependency>
432         <dependency>
433             <groupId>org.powermock</groupId>
434             <artifactId>powermock-api-mockito</artifactId>
435             <version>${powermock.version}</version>
436             <scope>test</scope>
437         </dependency>
438         <dependency>
439             <groupId>com.beust</groupId>
440             <artifactId>jcommander</artifactId>
441             <version>${jcommander.version}</version>
442         </dependency>
443         <dependency>
444             <groupId>org.json</groupId>
445             <artifactId>json</artifactId>
446             <version>${json.version}</version>
447         </dependency>
448         <dependency>
449             <groupId>org.freemarker</groupId>
450             <artifactId>freemarker</artifactId>
451             <version>${freemarker.version}</version>
452         </dependency>
453         <dependency>
454             <groupId>javax.xml.bind</groupId>
455             <artifactId>jaxb-api</artifactId>
456             <version>${jaxb.version}</version>
457         </dependency>
458         <dependency>
459             <groupId>com.sun.xml.bind</groupId>
460             <artifactId>jaxb-impl</artifactId>
461             <version>${jaxb.version}</version>
462         </dependency>
463         <dependency>
464             <groupId>com.sun.xml.bind</groupId>
465             <artifactId>jaxb-core</artifactId>
466             <version>${jaxb.version}</version>
467         </dependency>
468         <dependency>
469             <groupId>com.sun.xml.bind</groupId>
470             <artifactId>jaxb-xjc</artifactId>
471             <version>${jaxb.version}</version>
472         </dependency>
473         <dependency>
474             <groupId>org.eclipse.persistence</groupId>
475             <artifactId>eclipselink</artifactId>
476             <version>${eclipse.persistence.version}</version>
477         </dependency>
478         <dependency>
479             <groupId>org.eclipse.persistence</groupId>
480             <artifactId>org.eclipse.persistence.moxy</artifactId>
481             <version>${eclipse.persistence.version}</version>
482             <scope>compile</scope>
483         </dependency>
484         <dependency>
485             <groupId>org.powermock</groupId>
486             <artifactId>powermock-module-javaagent</artifactId>
487             <version>${powermock.version}</version>
488             <scope>test</scope>
489         </dependency>
490         <dependency>
491             <groupId>org.powermock</groupId>
492             <artifactId>powermock-module-junit4-rule-agent</artifactId>
493             <version>${powermock.version}</version>
494             <scope>test</scope>
495         </dependency>
496         <dependency>
497             <groupId>com.github.fge</groupId>
498             <artifactId>json-patch</artifactId>
499             <version>${json.patch.version}</version>
500         </dependency>
501         <dependency>
502             <groupId>org.javatuples</groupId>
503             <artifactId>javatuples</artifactId>
504             <version>${javatuples.version}</version>
505             <scope>compile</scope>
506         </dependency>
507         <dependency>
508             <groupId>com.google.code.gson</groupId>
509             <artifactId>gson</artifactId>
510             <version>${gson.version}</version>
511         </dependency>
512         <dependency>
513             <groupId>com.att.nsa</groupId>
514             <artifactId>dmaapClient</artifactId>
515             <version>${dmaap.client.version}</version>
516             <exclusions>
517                 <exclusion>
518                     <groupId>org.slf4j</groupId>
519                     <artifactId>slf4j-log4j12</artifactId>
520                 </exclusion>
521                 <exclusion>
522                     <groupId>com.att.aft</groupId>
523                     <artifactId>dme2</artifactId>
524                 </exclusion>
525             </exclusions>
526         </dependency>
527         <dependency>
528             <groupId>com.bazaarvoice.jolt</groupId>
529             <artifactId>jolt-complete</artifactId>
530             <version>${jolt.version}</version>
531         </dependency>
532         <dependency>
533             <groupId>com.jayway.jsonpath</groupId>
534             <artifactId>json-path</artifactId>
535             <version>${json.path.version}</version>
536         </dependency>
537         <!-- Do not use activemq-all because they force you to use a specific logging
538             and they shade it so you can't simply exclude it and when you deploy the
539             jar, you will notice failure -->
540         <dependency>
541             <groupId>org.apache.activemq</groupId>
542             <artifactId>activemq-broker</artifactId>
543             <version>${activemq.version}</version>
544         </dependency>
545         <dependency>
546             <groupId>org.apache.activemq</groupId>
547             <artifactId>activemq-client</artifactId>
548             <version>${activemq.version}</version>
549         </dependency>
550         <dependency>
551             <groupId>org.onap.aai.aai-common</groupId>
552             <artifactId>aai-core</artifactId>
553             <version>${aai.core.version}</version>
554             <exclusions>
555                 <exclusion>
556                     <groupId>com.sun.jersey</groupId>
557                     <artifactId>jersey-core</artifactId>
558                 </exclusion>
559                 <exclusion>
560                     <groupId>org.codehaus.jackson</groupId>
561                     <artifactId>jackson-mapper-asl</artifactId>
562                 </exclusion>
563             </exclusions>
564         </dependency>
565         <dependency>
566             <groupId>org.onap.aai.aai-common</groupId>
567             <artifactId>aai-schema</artifactId>
568             <version>${aai-schema.version}</version>
569         </dependency>
570         <dependency>
571             <groupId>org.springframework</groupId>
572             <artifactId>spring-jms</artifactId>
573             <version>${spring.jms.version}</version>
574             <exclusions>
575                 <exclusion>
576                     <groupId>com.sun.jersey</groupId>
577                     <artifactId>jersey-core</artifactId>
578                 </exclusion>
579             </exclusions>
580         </dependency>
581         <!-- Do not use the jersey-client since jersey client 1.0 version clashes
582             with jersey 2 which we are using -->
583         <!-- Use this to make http requests instead of jersey 1.0 client -->
584         <dependency>
585             <groupId>org.apache.httpcomponents</groupId>
586             <artifactId>httpclient</artifactId>
587             <version>${httpclient.version}</version>
588         </dependency>
589         <dependency>
590             <groupId>org.springframework.boot</groupId>
591             <artifactId>spring-boot-devtools</artifactId>
592         </dependency>
593         <dependency>
594             <groupId>org.skyscreamer</groupId>
595             <artifactId>jsonassert</artifactId>
596             <version>${jsonassert.version}</version>
597             <scope>test</scope>
598         </dependency>
599         <!--
600             Explicitly stating the security spring framework and
601             exclude the bouncy castle since that is somehow overwriting
602             our p12 file decryption that's built into java security
603             This will cause the password is incorrect
604             This needs to be added back if org.bouncy castle dependency
605             sneaks backs in and causing issues with the two way ssl
606         -->
607         <dependency>
608             <groupId>org.springframework.security</groupId>
609             <artifactId>spring-security-rsa</artifactId>
610             <version>${spring.security.version}</version>
611             <exclusions>
612                 <exclusion>
613                     <groupId>org.bouncycastle</groupId>
614                     <artifactId>bcpkix-jdk15on</artifactId>
615                 </exclusion>
616             </exclusions>
617         </dependency>
618         <dependency>
619             <groupId>io.netty</groupId>
620             <artifactId>netty-handler</artifactId>
621             <version>${netty.handler.version}</version>
622         </dependency>
623         <dependency>
624             <groupId>org.springframework.boot</groupId>
625             <artifactId>spring-boot-starter-web</artifactId>
626             <exclusions>
627                 <exclusion>
628                     <groupId>org.springframework.boot</groupId>
629                     <artifactId>spring-boot-starter-tomcat</artifactId>
630                 </exclusion>
631                 <exclusion>
632                     <groupId>org.slf4j</groupId>
633                     <artifactId>log4j-over-slf4j</artifactId>
634                 </exclusion>
635             </exclusions>
636         </dependency>
637         <dependency>
638             <groupId>org.springframework.boot</groupId>
639             <artifactId>spring-boot-starter-jetty</artifactId>
640         </dependency>
641         <dependency>
642             <groupId>org.springframework</groupId>
643             <artifactId>spring-web</artifactId>
644             <version>${spring.web.version}</version>
645         </dependency>
646         <dependency>
647             <groupId>io.netty</groupId>
648             <artifactId>netty-all</artifactId>
649             <version>${netty.version}</version>
650         </dependency>
651         <dependency>
652             <groupId>org.codehaus.groovy</groupId>
653             <artifactId>groovy</artifactId>
654             <version>${groovy.version}</version>
655             <classifier>indy</classifier>
656         </dependency>
657         <dependency>
658             <groupId>org.springframework</groupId>
659             <artifactId>spring-test</artifactId>
660             <version>${spring.test.version}</version>
661             <scope>test</scope>
662         </dependency>
663         <dependency>
664             <groupId>org.springframework.boot</groupId>
665             <artifactId>spring-boot-test</artifactId>
666             <scope>test</scope>
667         </dependency>
668         <dependency>
669             <groupId>org.antlr</groupId>
670             <artifactId>antlr4-runtime</artifactId>
671             <version>${antlr.version}</version>
672         </dependency>
673         <dependency>
674             <groupId>org.antlr</groupId>
675             <artifactId>antlr4-maven-plugin</artifactId>
676             <version>${antlr.version}</version>
677             <exclusions>
678                 <exclusion>
679                     <groupId>org.sonatype.sisu</groupId>
680                     <artifactId>sisu-guava</artifactId>
681                 </exclusion>
682             </exclusions>
683         </dependency>
684         <dependency>
685             <groupId>org.apache.tinkerpop</groupId>
686             <artifactId>gremlin-core</artifactId>
687             <version>${gremlin.version}</version>
688             <exclusions>
689                 <exclusion>
690                     <groupId>org.slf4j</groupId>
691                     <artifactId>slf4j-log4j12</artifactId>
692                 </exclusion>
693             </exclusions>
694         </dependency>
695         <dependency>
696             <groupId>org.apache.tinkerpop</groupId>
697             <artifactId>tinkergraph-gremlin</artifactId>
698             <version>${gremlin.version}</version>
699         </dependency>
700         <dependency>
701             <groupId>org.apache.tinkerpop</groupId>
702             <artifactId>gremlin-groovy</artifactId>
703             <version>${gremlin.version}</version>
704         </dependency>
705         <dependency>
706             <groupId>org.codehaus.plexus</groupId>
707             <artifactId>plexus-utils</artifactId>
708             <version>${plexus.utils.version}</version>
709         </dependency>
710     </dependencies>
711     <build>
712         <resources>
713             <resource>
714                 <directory>${project.basedir}/src/main/swm</directory>
715                 <targetPath>${project.build.directory}/swm</targetPath>
716                 <filtering>false</filtering>
717             </resource>
718             <resource>
719                 <directory>${project.basedir}/src/main/resources</directory>
720                 <includes>
721                     <include>application.properties</include>
722                     <include>dme2.properties</include>
723                     <include>logback.xml</include>
724                     <include>localhost-access-logback.xml</include>
725                 </includes>
726                 <targetPath>${project.build.directory}/swm/package/nix/dist_files/opt/app/aai-traversal/appconfig
727                 </targetPath>
728                 <filtering>false</filtering>
729             </resource>
730             <resource>
731                 <directory>${project.basedir}/src/main/resources</directory>
732                 <includes>
733                     <include>**/*</include>
734                 </includes>
735                 <filtering>true</filtering>
736             </resource>
737             <resource>
738                 <directory>${project.basedir}/src/main/resources/etc/appprops/</directory>
739                 <includes>
740                     <include>janusgraph-realtime.properties</include>
741                     <include>janusgraph-cached.properties</include>
742                     <include>aaiconfig.properties</include>
743                 </includes>
744                 <targetPath>${project.build.directory}/swm/package/nix/dist_files/opt/app/aai-traversal/appconfig
745                 </targetPath>
746                 <filtering>false</filtering>
747             </resource>
748             <resource>
749                 <directory>${project.basedir}/src/main/resources/etc/auth/</directory>
750                 <includes>
751                     <include>aai-client-cert.p12</include>
752                     <include>tomcat_keystore</include>
753                 </includes>
754                 <targetPath>${project.build.directory}/swm/package/nix/dist_files/opt/app/aai-traversal/appconfig
755                 </targetPath>
756                 <filtering>true</filtering>
757             </resource>
758             <resource>
759                 <directory>${project.basedir}/src/main/resources/</directory>
760                 <includes>
761                     <include>logback.xml</include>
762                     <include>localhost-access-logback.xml</include>
763                 </includes>
764                 <targetPath>${project.build.directory}/swm/package/nix/dist_files/opt/app/aai-traversal/appconfig
765                 </targetPath>
766                 <filtering>true</filtering>
767             </resource>
768             <resource>
769                 <directory>${project.basedir}/src/main/docker</directory>
770                 <includes>
771                     <include>**/*</include>
772                 </includes>
773                 <targetPath>${aai.build.directory}</targetPath>
774                 <filtering>true</filtering>
775             </resource>
776         </resources>
777         <pluginManagement>
778             <plugins>
779                 <plugin>
780                     <groupId>org.apache.maven.plugins</groupId>
781                     <artifactId>maven-dependency-plugin</artifactId>
782                     <version>2.8</version>
783                     <executions>
784                         <execution>
785                             <id>unpack-schema-dependency</id>
786                             <phase>initialize</phase>
787                             <goals>
788                                 <goal>unpack</goal>
789                             </goals>
790                             <configuration>
791                                 <artifactItems>
792                                     <artifactItem>
793                                         <groupId>org.onap.aai.aai-common</groupId>
794                                         <artifactId>aai-schema</artifactId>
795                                         <version>${aai.core.version}</version>
796                                         <outputDirectory>${project.basedir}/src/main/resources/etc/</outputDirectory>
797                                         <includes>oxm/*.xml</includes>
798                                     </artifactItem>
799                                 </artifactItems>
800                                 <!-- other configurations here -->
801                             </configuration>
802                         </execution>
803                     </executions>
804                 </plugin>
805                 <plugin>
806                     <groupId>org.codehaus.groovy.maven</groupId>
807                     <artifactId>gmaven-plugin</artifactId>
808                     <version>1.0</version>
809                     <executions>
810                         <execution>
811                             <phase>validate</phase>
812                             <goals>
813                                 <goal>execute</goal>
814                             </goals>
815                             <configuration>
816                                 <source>
817                                     println project.properties['aai.project.version'];
818                                     def versionArray;
819                                     if (project.properties['aai.project.version'] != null) {
820                                         versionArray = project.properties['aai.project.version'].split('\\.');
821                                     }
822
823                                     if (project.properties['aai.project.version'].endsWith("-SNAPSHOT")) {
824                                         project.properties['project.docker.latesttag.version'] = versionArray[0] + '.' + versionArray[1] + "-SNAPSHOT-latest";
825                                     } else {
826                                         project.properties['project.docker.latesttag.version'] = versionArray[0] + '.' + versionArray[1] + "-STAGING-latest";
827                                     }
828
829                                     println 'New Tag for docker:' + project.properties['project.docker.latesttag.version'];
830                                 </source>
831                             </configuration>
832                         </execution>
833                     </executions>
834                 </plugin>
835             </plugins>
836         </pluginManagement>
837         <plugins>
838             <plugin>
839                 <groupId>org.springframework.boot</groupId>
840                 <artifactId>spring-boot-maven-plugin</artifactId>
841             </plugin>
842             <plugin>
843                 <groupId>org.apache.maven.plugins</groupId>
844                 <artifactId>maven-gpg-plugin</artifactId>
845                 <configuration>
846                     <skip>true</skip>
847                 </configuration>
848             </plugin>
849             <plugin>
850                 <groupId>org.codehaus.groovy.maven</groupId>
851                 <artifactId>gmaven-plugin</artifactId>
852             </plugin>
853             <plugin>
854                 <artifactId>exec-maven-plugin</artifactId>
855                 <groupId>org.codehaus.mojo</groupId>
856             </plugin>
857             <plugin>
858                 <groupId>org.apache.maven.plugins</groupId>
859                 <artifactId>maven-javadoc-plugin</artifactId>
860                 <configuration>
861                     <additionalparam>-Xdoclint:none</additionalparam>
862                 </configuration>
863             </plugin>
864             <plugin>
865                 <artifactId>maven-assembly-plugin</artifactId>
866                 <configuration>
867                     <descriptors>
868                         <descriptor>src/main/assembly/descriptor.xml</descriptor>
869                     </descriptors>
870                 </configuration>
871                 <executions>
872                     <execution>
873                         <id>make-assembly</id> <!-- this is used for inheritance merges -->
874                         <phase>package</phase> <!-- bind to the packaging phase -->
875                         <goals>
876                             <goal>single</goal>
877                         </goals>
878                     </execution>
879                 </executions>
880             </plugin>
881             <plugin>
882                 <groupId>org.apache.maven.plugins</groupId>
883                 <artifactId>maven-surefire-plugin</artifactId>
884                 <version>2.12.4</version>
885                 <configuration>
886                     <argLine>-noverify ${argLine}</argLine>
887                     <runOrder>alphabetical</runOrder>
888                 </configuration>
889             </plugin>
890             <plugin>
891                 <groupId>org.codehaus.mojo</groupId>
892                 <artifactId>sonar-maven-plugin</artifactId>
893                 <version>3.3</version>
894             </plugin>
895             <plugin>
896                 <groupId>org.jacoco</groupId>
897                 <artifactId>jacoco-maven-plugin</artifactId>
898                 <version>0.7.9</version>
899                 <configuration>
900                     <dumpOnExit>true</dumpOnExit>
901                     <excludes>
902                         <exclude>**/**/models/**/*.class</exclude>
903                     </excludes>
904                 </configuration>
905                 <executions>
906                     <execution>
907                         <id>jacoco-initialize-unit-tests</id>
908                         <goals>
909                             <goal>prepare-agent</goal>
910                         </goals>
911                         <configuration>
912                             <destFile>${project.build.directory}/coverage-reports/jacoco.exec</destFile>
913                             <!-- <append>true</append> -->
914                         </configuration>
915                     </execution>
916                     <execution>
917                         <id>post-unit-test</id>
918                         <phase>test</phase>
919                         <goals>
920                             <goal>report</goal>
921                         </goals>
922                         <configuration>
923                             <!-- Sets the path to the file which contains the execution data. -->
924                             <dataFile>${project.build.directory}/coverage-reports/jacoco.exec</dataFile>
925                             <!-- Sets the output directory for the code coverage report. -->
926                             <outputDirectory>${project.reporting.outputDirectory}/jacoco</outputDirectory>
927                         </configuration>
928                     </execution>
929                     <execution>
930                         <id>default-check</id>
931                         <goals>
932                             <goal>check</goal>
933                         </goals>
934                         <configuration>
935                             <dataFile>${project.build.directory}/coverage-reports/jacoco.exec</dataFile>
936                             <rules>
937                                 <!--  implementation is needed only for Maven 2  -->
938                                 <rule implementation="org.jacoco.maven.RuleConfiguration">
939                                     <element>BUNDLE</element>
940                                     <limits>
941                                         <limit implementation="org.jacoco.report.check.Limit">
942                                             <counter>LINE</counter>
943                                             <value>COVEREDRATIO</value>
944                                             <minimum>${jacoco.line.coverage.limit}</minimum>
945                                         </limit>
946                                     </limits>
947                                 </rule>
948                             </rules>
949                         </configuration>
950                     </execution>
951                 </executions>
952             </plugin>
953             <plugin>
954                 <groupId>org.apache.maven.plugins</groupId>
955                 <artifactId>maven-deploy-plugin</artifactId>
956                 <executions>
957                     <execution>
958                         <id>default-deploy</id>
959                         <phase>none</phase>
960                     </execution>
961                 </executions>
962             </plugin>
963             <plugin>
964                 <groupId>org.sonatype.plugins</groupId>
965                 <artifactId>nexus-staging-maven-plugin</artifactId>
966                 <version>1.6.7</version>
967                 <extensions>true</extensions>
968                 <configuration>
969                     <nexusUrl>${nexusproxy}</nexusUrl>
970                     <stagingProfileId>176c31dfe190a</stagingProfileId>
971                     <serverId>ecomp-staging</serverId>
972                 </configuration>
973             </plugin>
974             <plugin>
975                 <groupId>org.springframework.boot</groupId>
976                 <artifactId>spring-boot-maven-plugin</artifactId>
977                 <configuration>
978                     <mainClass>${start-class}</mainClass>
979                     <layout>ZIP</layout>
980                 </configuration>
981                 <executions>
982                     <execution>
983                         <goals>
984                             <goal>repackage</goal>
985                         </goals>
986                     </execution>
987                 </executions>
988             </plugin>
989             <plugin>
990                 <groupId>org.antlr</groupId>
991                 <artifactId>antlr4-maven-plugin</artifactId>
992                 <version>4.7</version>
993                 <executions>
994                     <execution>
995                         <goals>
996                             <goal>antlr4</goal>
997                         </goals>
998                         <configuration>
999                             <sourceDirectory>src/main/resources/antlr4</sourceDirectory>
1000                             <!-- <outputDirectory>src/main/java/antlr4</outputDirectory> -->
1001                         </configuration>
1002                     </execution>
1003                 </executions>
1004             </plugin>
1005             <plugin>
1006                 <groupId>org.apache.maven.plugins</groupId>
1007                 <artifactId>maven-dependency-plugin</artifactId>
1008                 <version>2.8</version>
1009                 <executions>
1010                     <execution>
1011                         <id>unpack-schema-dependency</id>
1012                         <phase>initialize</phase>
1013                         <goals>
1014                             <goal>unpack</goal>
1015                         </goals>
1016                     </execution>
1017                 </executions>
1018                 <configuration>
1019                     <artifactItems>
1020                         <artifactItem>
1021                             <groupId>org.onap.aai.aai-common</groupId>
1022                             <artifactId>aai-schema</artifactId>
1023                             <version>${aai-schema.version}</version>
1024                             <outputDirectory>src/main/resources/etc</outputDirectory>
1025                             <includes>oxm/*.xml</includes>
1026                         </artifactItem>
1027                     </artifactItems>
1028                     <!-- other configurations here -->
1029                 </configuration>
1030             </plugin>
1031             <plugin>
1032                 <groupId>com.mycila</groupId>
1033                 <artifactId>license-maven-plugin</artifactId>
1034                 <version>3.0</version>
1035                 <configuration>
1036                     <header>LICENSE.TXT</header>
1037                     <includes>
1038                         <include>src/main/java/**</include>
1039                         <include>src/test/java/**</include>
1040                         <include>pom.xml</include>
1041                     </includes>
1042                     <skipExistingHeaders>true</skipExistingHeaders>
1043                     <skip>false</skip>
1044                 </configuration>
1045                 <executions>
1046                     <execution>
1047                         <goals>
1048                             <!-- Set goal to "format" to auto update license headers -->
1049                             <goal>check</goal>
1050                         </goals>
1051                         <phase>process-sources</phase>
1052                     </execution>
1053                 </executions>
1054             </plugin>
1055         </plugins>
1056     </build>
1057     <reporting>
1058         <plugins>
1059             <plugin>
1060                 <groupId>org.apache.maven.plugins</groupId>
1061                 <artifactId>maven-javadoc-plugin</artifactId>
1062                 <version>2.10.4</version>
1063                 <configuration>
1064                     <failOnError>false</failOnError>
1065                     <doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
1066                     <docletArtifact>
1067                         <groupId>org.umlgraph</groupId>
1068                         <artifactId>umlgraph</artifactId>
1069                         <version>5.6</version>
1070                     </docletArtifact>
1071                     <additionalparam>-views</additionalparam>
1072                     <useStandardDocletOptions>true</useStandardDocletOptions>
1073                 </configuration>
1074             </plugin>
1075         </plugins>
1076     </reporting>
1077     <distributionManagement>
1078         <repository>
1079             <id>ecomp-releases</id>
1080             <name>ECOMP Release Repository</name>
1081             <url>${nexusproxy}${release.path}</url>
1082         </repository>
1083         <snapshotRepository>
1084             <id>ecomp-snapshots</id>
1085             <name>ECOMP Snapshot Repository</name>
1086             <url>${nexusproxy}${snapshot.path}</url>
1087         </snapshotRepository>
1088         <site>
1089             <id>ecomp-site</id>
1090             <url>dav:${nexusproxy}${site.path}</url>
1091         </site>
1092     </distributionManagement>
1093 </project>