Add keycloak integration
[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     <parent>
29         <groupId>org.onap.aai.resources</groupId>
30         <artifactId>resources</artifactId>
31         <version>1.7.0-SNAPSHOT</version>
32     </parent>
33     <properties>
34         <java.version>1.8</java.version>
35         <start-class>org.onap.aai.ResourcesApp</start-class>
36
37         <!-- Default docker registry that maven fabric plugin will try to pull from -->
38         <docker.registry>docker.io</docker.registry>
39         <!-- Specifying the docker push registry where the image should be pushed -->
40         <!-- This value should be overwritten at runtime to wherever need to be pushed to -->
41         <docker.push.registry>localhost:5000</docker.push.registry>
42         <aai.docker.version>1.0.0</aai.docker.version>
43         <aai.base.image>alpine</aai.base.image>
44         <aai.base.image.version>1.6.0</aai.base.image.version>
45
46         <!--
47              Location where assembly of our scripts, resources and main jar will be held
48                  Check the ${project.artifactId}/src/main/assembly/descriptor.xml for more info
49         -->
50         <aai.build.directory>${project.build.directory}/${project.artifactId}-${project.version}-build/
51         </aai.build.directory>
52         <aai.docker.namespace>onap</aai.docker.namespace>
53
54         <maven.skip.tests>true</maven.skip.tests>
55         <snapshot.file>${project.basedir}/snapshots/snapshot.graphson</snapshot.file>
56
57         <jacoco.line.coverage.limit>0.68</jacoco.line.coverage.limit>
58         <license.goal.type>check</license.goal.type>
59
60         <!-- This will be used for the docker images as the default format of maven build has issues -->
61         <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
62
63         <!-- Start of Default ONAP Schema Properties -->
64         <schema.source.name>onap</schema.source.name>
65         <schema.configuration.location>N/A</schema.configuration.location>
66         <schema.nodes.location>${project.basedir}/src/main/resources/schema/${schema.source.name}/oxm</schema.nodes.location>
67         <schema.edges.location>${project.basedir}/src/main/resources/schema/${schema.source.name}/dbedgerules</schema.edges.location>
68         <schema.version.depth.start>v10</schema.version.depth.start>
69         <schema.version.related.link.start>v10</schema.version.related.link.start>
70         <schema.version.app.root.start>v11</schema.version.app.root.start>
71         <schema.version.namespace.change.start>v12</schema.version.namespace.change.start>
72         <schema.version.edge.label.start>v12</schema.version.edge.label.start>
73         <schema.version.api.default>v20</schema.version.api.default>
74         <schema.version.list>v10,v11,v12,v13,v14,v15,v16,v17,v18,v19,v20</schema.version.list>
75         <schema.uri.base.path>/aai</schema.uri.base.path>
76         <!-- <schema.translator.list>config</schema.translator.list> -->
77         <schema.ingest.file>${project.basedir}/src/main/resources/application.properties</schema.ingest.file>
78
79         <!-- End of Default ONAP Schema Properties -->
80         <keycloak.version>11.0.2</keycloak.version>
81         <!-- Setting some default value to not complain by editor but it will be overridden by gmaven plugin -->
82     </properties>
83     <profiles>
84         <!-- Docker profile to be used for building docker image and pushing to nexus -->
85         <profile>
86             <id>docker</id>
87             <build>
88                 <plugins>
89                     <plugin>
90                         <groupId>org.codehaus.groovy.maven</groupId>
91                         <artifactId>gmaven-plugin</artifactId>
92                         <version>1.0</version>
93                         <executions>
94                             <execution>
95                                 <phase>pre-clean</phase>
96                             </execution>
97                             <execution>
98                                 <id>parse-base</id>
99                                 <phase>prepare-package</phase>
100                                 <goals>
101                                     <goal>execute</goal>
102                                 </goals>
103                                 <configuration>
104                                     <source>
105                                         def userAaiBaseImage = session.userProperties['aai.base.image']
106                                         def userAaiCommonVersion = session.userProperties['aai.base.image.version']
107                                         if (userAaiCommonVersion != null) {
108                                             project.properties['aai.base.image.version'] = userAaiCommonVersion
109                                         }
110                                         if (userAaiBaseImage != null) {
111                                             project.properties['aai.base.image'] = userAaiBaseImage
112                                         }
113                                         log.info 'Base image flavour: ' + project.properties['aai.base.image']
114                                         log.info 'Base image version: ' + project.properties['aai.base.image.version']
115                                     </source>
116                                 </configuration>
117                             </execution>
118                         </executions>
119                     </plugin>
120                     <plugin>
121                         <groupId>io.fabric8</groupId>
122                         <artifactId>docker-maven-plugin</artifactId>
123                         <configuration>
124                             <verbose>true</verbose>
125                             <apiVersion>1.23</apiVersion>
126                             <images>
127                                 <image>
128                                     <name>${docker.push.registry}/${aai.docker.namespace}/${project.artifactId}:%l
129                                     </name>
130                                     <build>
131                                         <filter>@</filter>
132                                         <tags>
133                                             <tag>latest</tag>
134                                             <tag>${project.docker.latesttag.version}</tag>
135                                             <tag>${project.major.version}.${project.minor.version}-STAGING-${maven.build.timestamp}</tag>
136                                         </tags>
137                                         <cleanup>try</cleanup>
138                                         <dockerFileDir>${project.basedir}/src/main/docker</dockerFileDir>
139                                         <assembly>
140                                             <inline>
141                                                 <fileSets>
142                                                     <fileSet>
143                                                         <directory>${aai.build.directory}</directory>
144                                                         <outputDirectory>/${project.artifactId}</outputDirectory>
145                                                     </fileSet>
146                                                 </fileSets>
147                                             </inline>
148                                         </assembly>
149                                     </build>
150                                 </image>
151                             </images>
152                         </configuration>
153                         <executions>
154                             <execution>
155                                 <id>clean-images</id>
156                                 <phase>pre-clean</phase>
157                                 <goals>
158                                     <goal>remove</goal>
159                                 </goals>
160                                 <configuration>
161                                     <removeAll>true</removeAll>
162                                 </configuration>
163                             </execution>
164                             <execution>
165                                 <id>generate-images</id>
166                                 <phase>package</phase>
167                                 <goals>
168                                     <goal>build</goal>
169                                 </goals>
170                             </execution>
171                             <execution>
172                                 <id>push-images</id>
173                                 <phase>deploy</phase>
174                                 <goals>
175                                     <goal>push</goal>
176                                 </goals>
177                             </execution>
178                         </executions>
179                     </plugin>
180                 </plugins>
181             </build>
182         </profile>
183         <!-- Start of ONAP Profile -->
184         <profile>
185             <id>onap</id>
186             <properties>
187                 <schema.source.name>onap</schema.source.name>
188                 <schema.version.namespace.change.start>v12</schema.version.namespace.change.start>
189                 <schema.version.list>v10,v11,v12,v13,v14,v15,v16</schema.version.list>
190                 <schema.ingest.file>${project.basedir}/src/main/resources/application.properties</schema.ingest.file>
191             </properties>
192         </profile>
193         <!-- End of ONAP Profile -->
194         <profile>
195             <id>runAjsc</id>
196             <properties>
197                 <skipTests>${maven.skip.tests}</skipTests>
198             </properties>
199             <build>
200                 <defaultGoal>pre-integration-test</defaultGoal>
201                 <plugins>
202                     <plugin>
203                         <groupId>org.codehaus.mojo</groupId>
204                         <artifactId>exec-maven-plugin</artifactId>
205                         <version>1.6.0</version>
206                         <executions>
207                             <execution>
208                                 <id>run-spring-boot</id>
209                                 <phase>package</phase>
210                                 <goals>
211                                     <goal>java</goal>
212                                 </goals>
213                             </execution>
214                         </executions>
215                         <configuration>
216                             <mainClass>${start-class}</mainClass>
217                             <systemProperties>
218                                 <property>
219                                     <key>snapshot.location</key>
220                                     <value>${snapshot.file}</value>
221                                 </property>
222                                 <property>
223                                     <key>schema.source.name</key>
224                                     <value>${schema.source.name}</value>
225                                 </property>
226                                 <property>
227                                     <key>schema.configuration.location</key>
228                                     <value>${schema.configuration.location}</value>
229                                 </property>
230                                 <property>
231                                     <key>schema.nodes.location</key>
232                                     <value>${schema.nodes.location}</value>
233                                 </property>
234                                 <property>
235                                     <key>schema.edges.location</key>
236                                     <value>${schema.edges.location}</value>
237                                 </property>
238                                 <property>
239                                     <key>schema.version.depth.start</key>
240                                     <value>${schema.version.depth.start}</value>
241                                 </property>
242                                 <property>
243                                     <key>schema.version.related.link.start</key>
244                                     <value>${schema.version.related.link.start}</value>
245                                 </property>
246                                 <property>
247                                     <key>schema.version.app.root.start</key>
248                                     <value>${schema.version.app.root.start}</value>
249                                 </property>
250                                 <property>
251                                     <key>schema.version.namespace.change.start</key>
252                                     <value>${schema.version.namespace.change.start}</value>
253                                 </property>
254                                 <property>
255                                     <key>schema.version.edge.label.start</key>
256                                     <value>${schema.version.edge.label.start}</value>
257                                 </property>
258                                 <property>
259                                     <key>schema.version.api.default</key>
260                                     <value>${schema.version.api.default}</value>
261                                 </property>
262                                 <property>
263                                     <key>schema.version.list</key>
264                                     <value>${schema.version.list}</value>
265                                 </property>
266                                 <property>
267                                     <key>schema.uri.base.path</key>
268                                     <value>${schema.uri.base.path}</value>
269                                 </property>
270                                 <property>
271                                     <key>schema.ingest.file</key>
272                                     <value>${schema.ingest.file}</value>
273                                 </property>
274                             </systemProperties>
275                             <executable>java</executable>
276                         </configuration>
277                     </plugin>
278                 </plugins>
279             </build>
280         </profile>
281     </profiles>
282
283     <dependencies>
284         <dependency>
285             <groupId>javax.jms</groupId>
286             <artifactId>javax.jms-api</artifactId>
287             <version>2.0.1</version>
288         </dependency>
289         <dependency>
290             <groupId>javax.ws.rs</groupId>
291             <artifactId>javax.ws.rs-api</artifactId>
292             <version>2.1</version>
293         </dependency>
294         <dependency>
295             <groupId>javax.xml.bind</groupId>
296             <artifactId>jaxb-api</artifactId>
297         </dependency>
298         <dependency>
299             <groupId>com.sun.xml.bind</groupId>
300             <artifactId>jaxb-impl</artifactId>
301         </dependency>
302         <dependency>
303             <groupId>com.sun.xml.bind</groupId>
304             <artifactId>jaxb-core</artifactId>
305         </dependency>
306
307         <dependency>
308             <groupId>net.sf.jopt-simple</groupId>
309             <artifactId>jopt-simple</artifactId>
310         </dependency>
311         <dependency>
312             <groupId>io.swagger</groupId>
313             <artifactId>swagger-core</artifactId>
314             <exclusions>
315                 <exclusion>
316                     <groupId>javax.ws.rs</groupId>
317                     <artifactId>jsr311-api</artifactId>
318                 </exclusion>
319             </exclusions>
320         </dependency>
321         <dependency>
322             <groupId>io.swagger</groupId>
323             <artifactId>swagger-annotations</artifactId>
324         </dependency>
325         <dependency>
326             <groupId>commons-configuration</groupId>
327             <artifactId>commons-configuration</artifactId>
328             <exclusions>
329                 <exclusion>
330                     <artifactId>commons-lang</artifactId>
331                     <groupId>commons-lang</groupId>
332                 </exclusion>
333             </exclusions>
334         </dependency>
335         <dependency>
336             <groupId>io.swagger</groupId>
337             <artifactId>swagger-jersey-jaxrs</artifactId>
338             <exclusions>
339                 <exclusion>
340                     <groupId>org.glassfish.jersey.media</groupId>
341                     <artifactId>jersey-media-multipart</artifactId>
342                 </exclusion>
343                 <exclusion>
344                     <artifactId>jersey-core</artifactId>
345                     <groupId>com.sun.jersey</groupId>
346                 </exclusion>
347                 <exclusion>
348                     <artifactId>jersey-json</artifactId>
349                     <groupId>com.sun.jersey</groupId>
350                 </exclusion>
351                 <exclusion>
352                     <artifactId>jersey-server</artifactId>
353                     <groupId>com.sun.jersey</groupId>
354                 </exclusion>
355                 <exclusion>
356                     <artifactId>jersey-client</artifactId>
357                     <groupId>com.sun.jersey</groupId>
358                 </exclusion>
359                 <exclusion>
360                     <artifactId>jsr311-api</artifactId>
361                     <groupId>javax.ws.rs</groupId>
362                 </exclusion>
363                 <exclusion>
364                     <artifactId>jersey-multipart</artifactId>
365                     <groupId>com.sun.jersey.contribs</groupId>
366                 </exclusion>
367             </exclusions>
368         </dependency>
369         <dependency>
370             <groupId>commons-lang</groupId>
371             <artifactId>commons-lang</artifactId>
372         </dependency>
373         <!-- eelf dependency -->
374         <dependency>
375             <groupId>com.att.eelf</groupId>
376             <artifactId>eelf-core</artifactId>
377         </dependency>
378         <dependency>
379             <groupId>ch.qos.logback</groupId>
380             <artifactId>logback-core</artifactId>
381         </dependency>
382         <dependency>
383             <groupId>ch.qos.logback</groupId>
384             <artifactId>logback-classic</artifactId>
385         </dependency>
386         <dependency>
387             <groupId>ch.qos.logback</groupId>
388             <artifactId>logback-access</artifactId>
389         </dependency>
390         <dependency>
391             <groupId>org.hamcrest</groupId>
392             <artifactId>hamcrest-junit</artifactId>
393         </dependency>
394         <dependency>
395             <groupId>junit</groupId>
396             <artifactId>junit</artifactId>
397             <scope>test</scope>
398         </dependency>
399         <dependency>
400             <groupId>com.google.guava</groupId>
401             <artifactId>guava</artifactId>
402         </dependency>
403         <dependency>
404             <groupId>com.github.jnr</groupId>
405             <artifactId>jnr-ffi</artifactId>
406         </dependency>
407         <dependency>
408             <groupId>com.fasterxml.jackson.jaxrs</groupId>
409             <artifactId>jackson-jaxrs-json-provider</artifactId>
410         </dependency>
411         <dependency>
412             <groupId>org.mockito</groupId>
413             <artifactId>mockito-all</artifactId>
414             <scope>test</scope>
415         </dependency>
416         <dependency>
417             <groupId>org.mockito</groupId>
418             <artifactId>mockito-core</artifactId>
419             <scope>test</scope>
420         </dependency>
421         <dependency>
422             <groupId>com.beust</groupId>
423             <artifactId>jcommander</artifactId>
424         </dependency>
425         <dependency>
426             <groupId>org.json</groupId>
427             <artifactId>json</artifactId>
428         </dependency>
429         <dependency>
430             <groupId>org.freemarker</groupId>
431             <artifactId>freemarker</artifactId>
432         </dependency>
433         <dependency>
434             <groupId>javax.xml.bind</groupId>
435             <artifactId>jaxb-api</artifactId>
436         </dependency>
437         <dependency>
438             <groupId>org.onap.aaf.authz</groupId>
439             <artifactId>aaf-cadi-aaf</artifactId>
440         </dependency>
441         <dependency>
442             <groupId>org.eclipse.persistence</groupId>
443             <artifactId>eclipselink</artifactId>
444         </dependency>
445         <dependency>
446             <groupId>org.eclipse.persistence</groupId>
447             <artifactId>org.eclipse.persistence.moxy</artifactId>
448             <scope>compile</scope>
449         </dependency>
450         <dependency>
451             <groupId>com.github.fge</groupId>
452             <artifactId>json-patch</artifactId>
453         </dependency>
454         <dependency>
455             <groupId>org.javatuples</groupId>
456             <artifactId>javatuples</artifactId>
457             <scope>compile</scope>
458         </dependency>
459         <dependency>
460             <groupId>com.google.code.gson</groupId>
461             <artifactId>gson</artifactId>
462         </dependency>
463         <dependency>
464             <groupId>org.onap.dmaap.messagerouter.dmaapclient</groupId>
465             <artifactId>dmaapClient</artifactId>
466             <exclusions>
467                 <exclusion>
468                     <groupId>org.slf4j</groupId>
469                     <artifactId>slf4j-log4j12</artifactId>
470                 </exclusion>
471                 <exclusion>
472                     <groupId>com.att.aft</groupId>
473                     <artifactId>dme2</artifactId>
474                 </exclusion>
475             </exclusions>
476         </dependency>
477         <dependency>
478             <groupId>com.jayway.jsonpath</groupId>
479             <artifactId>json-path</artifactId>
480         </dependency>
481         <!-- Do not use activemq-all because they force you to use a specific logging
482             and they shade it so you can't simply exclude it and when you deploy the
483             jar, you will notice failure -->
484         <dependency>
485             <groupId>org.apache.activemq</groupId>
486             <artifactId>activemq-broker</artifactId>
487         </dependency>
488         <dependency>
489             <groupId>org.apache.activemq</groupId>
490             <artifactId>activemq-client</artifactId>
491         </dependency>
492         <dependency>
493             <groupId>org.onap.aai.aai-common</groupId>
494             <artifactId>aai-core</artifactId>
495             <exclusions>
496                 <exclusion>
497                     <groupId>com.sun.jersey</groupId>
498                     <artifactId>jersey-core</artifactId>
499                 </exclusion>
500                 <exclusion>
501                     <groupId>org.codehaus.jackson</groupId>
502                     <artifactId>jackson-mapper-asl</artifactId>
503                 </exclusion>
504                 <exclusion>
505                     <groupId>org.eclipse.jetty</groupId>
506                     <artifactId>jetty-http</artifactId>
507                 </exclusion>
508                 <exclusion>
509                     <groupId>org.eclipse.jetty</groupId>
510                     <artifactId>jetty-server</artifactId>
511                 </exclusion>
512                 <exclusion>
513                     <groupId>org.springframework</groupId>
514                     <artifactId>spring-web</artifactId>
515                 </exclusion>
516             </exclusions>
517         </dependency>
518         <dependency>
519             <groupId>org.onap.aai.aai-common</groupId>
520             <artifactId>aai-schema-ingest</artifactId>
521         </dependency>
522
523         <dependency>
524             <groupId>org.springframework</groupId>
525             <artifactId>spring-jms</artifactId>
526             <exclusions>
527                 <exclusion>
528                     <groupId>com.sun.jersey</groupId>
529                     <artifactId>jersey-core</artifactId>
530                 </exclusion>
531             </exclusions>
532         </dependency>
533         <!-- Do not use the jersey-client since jersey client 1.0 version clashes
534             with jersey 2 which we are using -->
535         <!-- Use this to make http requests instead of jersey 1.0 client -->
536         <dependency>
537             <groupId>org.apache.httpcomponents</groupId>
538             <artifactId>httpclient</artifactId>
539         </dependency>
540         <dependency>
541             <groupId>org.skyscreamer</groupId>
542             <artifactId>jsonassert</artifactId>
543             <scope>test</scope>
544             <exclusions>
545                 <exclusion>
546                     <groupId>com.vaadin.external.google</groupId>
547                     <artifactId>android-json</artifactId>
548                 </exclusion>
549             </exclusions>
550         </dependency>
551         <!--
552             Explicitly stating the security spring framework and
553             exclude the bouncy castle since that is somehow overwriting
554             our p12 file decryption that's built into java security
555             This will cause the password is incorrect
556             This needs to be added back if org.bouncy castle dependency
557             sneaks backs in and causing issues with the two way ssl
558         -->
559         <dependency>
560             <groupId>org.springframework.security</groupId>
561             <artifactId>spring-security-rsa</artifactId>
562             <exclusions>
563                 <exclusion>
564                     <groupId>org.bouncycastle</groupId>
565                     <artifactId>bcpkix-jdk15on</artifactId>
566                 </exclusion>
567             </exclusions>
568         </dependency>
569         <dependency>
570             <groupId>io.netty</groupId>
571             <artifactId>netty-handler</artifactId>
572         </dependency>
573         <dependency>
574             <groupId>org.springframework.boot</groupId>
575             <artifactId>spring-boot-starter-web</artifactId>
576             <exclusions>
577                 <exclusion>
578                     <groupId>org.springframework.boot</groupId>
579                     <artifactId>spring-boot-starter-tomcat</artifactId>
580                 </exclusion>
581             </exclusions>
582         </dependency>
583         <dependency>
584             <groupId>org.springframework.boot</groupId>
585             <artifactId>spring-boot-starter-jetty</artifactId>
586         </dependency>
587         <dependency>
588             <groupId>io.netty</groupId>
589             <artifactId>netty-all</artifactId>
590         </dependency>
591         <dependency>
592             <groupId>org.codehaus.groovy</groupId>
593             <artifactId>groovy</artifactId>
594             <classifier>indy</classifier>
595         </dependency>
596         <dependency>
597             <groupId>org.springframework</groupId>
598             <artifactId>spring-test</artifactId>
599             <scope>test</scope>
600         </dependency>
601         <dependency>
602             <groupId>org.springframework.boot</groupId>
603             <artifactId>spring-boot-test</artifactId>
604             <scope>test</scope>
605         </dependency>
606         <dependency>
607             <groupId>org.apache.tinkerpop</groupId>
608             <artifactId>gremlin-groovy</artifactId>
609         </dependency>
610         <dependency>
611             <groupId>org.springframework.boot</groupId>
612             <artifactId>spring-boot-starter-security</artifactId>
613         </dependency>
614         <dependency>
615             <groupId>org.keycloak</groupId>
616             <artifactId>keycloak-spring-boot-starter</artifactId>
617         </dependency>
618     </dependencies>
619     <dependencyManagement>
620         <dependencies>
621             <dependency>
622                 <groupId>org.keycloak.bom</groupId>
623                 <artifactId>keycloak-adapter-bom</artifactId>
624                 <version>${keycloak.version}</version>
625                 <type>pom</type>
626                 <scope>import</scope>
627             </dependency>
628         </dependencies>
629     </dependencyManagement>
630     <build>
631         <resources>
632             <resource>
633                 <directory>${project.basedir}/src/main/swm</directory>
634                 <targetPath>${project.build.directory}/swm</targetPath>
635                 <filtering>false</filtering>
636             </resource>
637             <resource>
638                 <directory>${project.basedir}/src/main/resources</directory>
639                 <includes>
640                     <include>application.properties</include>
641                     <include>dme2.properties</include>
642                     <include>logback.xml</include>
643                     <include>localhost-access-logback.xml</include>
644                 </includes>
645                 <targetPath>${project.build.directory}/swm/package/nix/dist_files/opt/app/${project.artifactId}/appconfig</targetPath>
646                 <filtering>false</filtering>
647             </resource>
648             <resource>
649                 <directory>${project.basedir}/src/main/resources</directory>
650                 <includes>
651                     <include>**/*</include>
652                 </includes>
653                 <filtering>true</filtering>
654             </resource>
655             <resource>
656                 <directory>${project.basedir}/src/main/resources/etc/appprops/</directory>
657                 <includes>
658                     <include>janusgraph-realtime.properties</include>
659                     <include>janusgraph-cached.properties</include>
660                     <include>aaiconfig.properties</include>
661                 </includes>
662                 <targetPath>${project.build.directory}/swm/package/nix/dist_files/opt/app/${project.artifactId}/appconfig</targetPath>
663                 <filtering>false</filtering>
664             </resource>
665             <resource>
666                 <directory>${project.basedir}/src/main/resources/etc/auth/</directory>
667                 <includes>
668                     <include>aai-client-cert.p12</include>
669                     <include>tomcat_keystore</include>
670                     <include>aai_policy.json</include>
671                 </includes>
672                 <targetPath>${project.build.directory}/swm/package/nix/dist_files/opt/app/${project.artifactId}/appconfig</targetPath>
673                 <filtering>true</filtering>
674             </resource>
675             <resource>
676                 <directory>${project.basedir}/src/main/resources/</directory>
677                 <includes>
678                     <include>logback.xml</include>
679                     <include>localhost-access-logback.xml</include>
680                     <include>hbase-site.xml</include>
681                 </includes>
682                 <targetPath>${project.build.directory}/swm/package/nix/dist_files/opt/app/${project.artifactId}/appconfig</targetPath>
683                 <filtering>true</filtering>
684             </resource>
685             <resource>
686                 <directory>${project.basedir}/src/main/resources/schema/</directory>
687                 <includes>
688                     <include>**/oxm/**/*.xml</include>
689                     <include>**/dbedgerules/**/*.json</include>
690                 </includes>
691                 <targetPath>${project.build.directory}/swm/package/nix/dist_files/opt/app/${project.artifactId}/appconfig/schema</targetPath>
692                 <filtering>false</filtering>
693             </resource>
694             <resource>
695                 <directory>${project.basedir}/src/main/docker</directory>
696                 <includes>
697                     <include>**/*</include>
698                 </includes>
699                 <targetPath>${aai.build.directory}</targetPath>
700                 <filtering>true</filtering>
701             </resource>
702             <resource>
703                 <directory>${project.build.directory}/</directory>
704                 <includes>
705                     <include>${project.artifactId}-${project.version}.jar</include>
706                 </includes>
707                 <targetPath>${aai.build.directory}/lib/</targetPath>
708                 <filtering>false</filtering>
709             </resource>
710         </resources>
711         <pluginManagement>
712             <plugins>
713                 <plugin>
714                     <groupId>org.apache.maven.plugins</groupId>
715                     <artifactId>maven-dependency-plugin</artifactId>
716                     <version>2.8</version>
717                     <executions>
718                         <execution>
719                             <id>unpack-schema-dependency</id>
720                             <phase>initialize</phase>
721                             <goals>
722                                 <goal>unpack</goal>
723                             </goals>
724                             <configuration>
725                                 <artifactItems>
726                                     <artifactItem>
727                                         <groupId>org.onap.aai.schema-service</groupId>
728                                         <artifactId>aai-schema</artifactId>
729                                         <outputDirectory>${project.basedir}/src/main/resources/schema/</outputDirectory>
730                                         <includes>**/oxm/**/*.xml</includes>
731                                     </artifactItem>
732                                 </artifactItems>
733                                 <!-- other configurations here -->
734                             </configuration>
735                         </execution>
736                         <execution>
737                             <id>unpack-edgerules-dependency</id>
738                             <phase>initialize</phase>
739                             <goals>
740                                 <goal>unpack</goal>
741                             </goals>
742                             <configuration>
743                                 <artifactItems>
744                                     <artifactItem>
745                                         <groupId>org.onap.aai.schema-service</groupId>
746                                         <artifactId>aai-schema</artifactId>
747                                         <outputDirectory>${project.basedir}/src/main/resources/schema/</outputDirectory>
748                                         <includes>**/dbedgerules/**/*.json</includes>
749                                     </artifactItem>
750                                 </artifactItems>
751                                 <!-- other configurations here -->
752                             </configuration>
753                         </execution>
754                     </executions>
755                 </plugin>
756                 <plugin>
757                     <groupId>org.codehaus.groovy.maven</groupId>
758                     <artifactId>gmaven-plugin</artifactId>
759                     <version>1.0</version>
760                     <executions>
761                         <execution>
762                             <phase>validate</phase>
763                             <goals>
764                                 <goal>execute</goal>
765                             </goals>
766                             <configuration>
767                                 <source>
768                                     println project.properties['aai.project.version'];
769                                     def versionArray;
770                                     if (project.properties['aai.project.version'] != null) {
771                                         versionArray = project.properties['aai.project.version'].split('\\.');
772                                     }
773
774                                     project.properties["project.major.version"] = versionArray[0];
775                                     project.properties["project.minor.version"] = versionArray[1];
776                                     project.properties['project.docker.latesttag.version'] = versionArray[0] + '.' + versionArray[1] + '-STAGING-latest';
777                                     println 'New Tag for docker:' + project.properties['project.docker.latesttag.version'];
778                                 </source>
779                             </configuration>
780                         </execution>
781                     </executions>
782                 </plugin>
783                 <plugin>
784                     <groupId>com.mycila</groupId>
785                     <artifactId>license-maven-plugin</artifactId>
786                     <version>3.0</version>
787                     <configuration>
788                         <header>LICENSE.TXT</header>
789                         <includes>
790                             <include>src/main/java/**</include>
791                             <include>src/test/java/**</include>
792                             <include>pom.xml</include>
793                         </includes>
794                         <skipExistingHeaders>false</skipExistingHeaders>
795                         <skip>false</skip>
796                     </configuration>
797                 </plugin>
798             </plugins>
799         </pluginManagement>
800         <plugins>
801             <plugin>
802                 <groupId>org.springframework.boot</groupId>
803                 <artifactId>spring-boot-maven-plugin</artifactId>
804             </plugin>
805             <plugin>
806                 <groupId>org.apache.maven.plugins</groupId>
807                 <artifactId>maven-clean-plugin</artifactId>
808                 <version>2.4.1</version>
809                 <configuration>
810                     <filesets>
811                         <fileset>
812                             <directory>${project.basedir}/src/main/resources/schema</directory>
813                             <includes>
814                                 <include>**/*</include>
815                             </includes>
816                             <followSymlinks>false</followSymlinks>
817                         </fileset>
818                     </filesets>
819                 </configuration>
820             </plugin>
821             <plugin>
822                 <groupId>org.codehaus.groovy.maven</groupId>
823                 <artifactId>gmaven-plugin</artifactId>
824             </plugin>
825             <plugin>
826                 <groupId>org.apache.maven.plugins</groupId>
827                 <artifactId>maven-dependency-plugin</artifactId>
828                 <version>2.10</version>
829             </plugin>
830             <plugin>
831                 <groupId>org.apache.maven.plugins</groupId>
832                 <artifactId>maven-javadoc-plugin</artifactId>
833             </plugin>
834             <plugin>
835                 <artifactId>maven-assembly-plugin</artifactId>
836                 <configuration>
837                     <descriptors>
838                         <descriptor>src/main/assembly/descriptor.xml</descriptor>
839                     </descriptors>
840                 </configuration>
841                 <executions>
842                     <execution>
843                         <id>make-assembly</id> <!-- this is used for inheritance merges -->
844                         <phase>package</phase> <!-- bind to the packaging phase -->
845                         <goals>
846                             <goal>single</goal>
847                         </goals>
848                     </execution>
849                 </executions>
850             </plugin>
851             <plugin>
852                 <groupId>org.apache.maven.plugins</groupId>
853                 <artifactId>maven-surefire-plugin</artifactId>
854                 <configuration>
855                     <runOrder>alphabetical</runOrder>
856                 </configuration>
857             </plugin>
858             <plugin>
859                 <groupId>com.mycila</groupId>
860                 <artifactId>license-maven-plugin</artifactId>
861             </plugin>
862             <plugin>
863                 <groupId>org.apache.maven.plugins</groupId>
864                 <artifactId>maven-deploy-plugin</artifactId>
865             </plugin>
866             <plugin>
867                 <groupId>org.springframework.boot</groupId>
868                 <artifactId>spring-boot-maven-plugin</artifactId>
869                 <configuration>
870                     <mainClass>${start-class}</mainClass>
871                     <layout>ZIP</layout>
872                 </configuration>
873                 <executions>
874                     <execution>
875                         <goals>
876                             <goal>repackage</goal>
877                         </goals>
878                     </execution>
879                 </executions>
880             </plugin>
881             <plugin>
882                 <groupId>org.jacoco</groupId>
883                 <artifactId>jacoco-maven-plugin</artifactId>
884                 <configuration combine.children="append">
885                     <excludes>
886                         <exclude>**/*WebSecurityConfig.*</exclude>
887                     </excludes>
888                 </configuration>
889             </plugin>
890         </plugins>
891     </build>
892     <reporting>
893         <plugins>
894             <plugin>
895                 <groupId>org.apache.maven.plugins</groupId>
896                 <artifactId>maven-javadoc-plugin</artifactId>
897                 <version>2.10.4</version>
898                 <configuration>
899                     <failOnError>false</failOnError>
900                     <doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
901                     <docletArtifact>
902                         <groupId>org.umlgraph</groupId>
903                         <artifactId>umlgraph</artifactId>
904                         <version>5.6</version>
905                     </docletArtifact>
906                     <additionalparam>-views</additionalparam>
907                     <useStandardDocletOptions>true</useStandardDocletOptions>
908                 </configuration>
909             </plugin>
910         </plugins>
911     </reporting>
912 </project>