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