Upgrade to springboot 1.5.20.RELEASE
[aai/schema-service.git] / aai-schema-service / 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:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0"
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.schema-service</groupId>
27     <artifactId>aai-schema-service</artifactId>
28     <version>1.0.1-SNAPSHOT</version>
29     <parent>
30         <groupId>org.onap.aai.schema-service</groupId>
31         <artifactId>schema-service</artifactId>
32         <version>1.0.1-SNAPSHOT</version>
33     </parent>
34     <properties>
35         <java.version>1.8</java.version>
36         <start-class>org.onap.aai.schemaservice.SchemaServiceApp</start-class>
37
38         <aai.core.version>1.4.0</aai.core.version>
39
40         <spring.boot.version>1.5.20.RELEASE</spring.boot.version>
41
42         <!-- Start of the jacoco plugin properties -->
43         <sonar.language>java</sonar.language>
44         <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
45         <sonar.surefire.reportsPath>${project.build.directory}/surefire-reports</sonar.surefire.reportsPath>
46         <sonar.jacoco.reportPath>${project.build.directory}/coverage-reports/jacoco.exec</sonar.jacoco.reportPath>
47         <sonar.jacoco.reportMissing.force.zero>false</sonar.jacoco.reportMissing.force.zero>
48         <sonar.projectVersion>${project.version}</sonar.projectVersion>
49         <!-- End of the jacoco plugin properties -->
50
51         <!-- Start of Application Dependencies -->
52         <eelf.core.version>1.0.0</eelf.core.version>
53         <logback.version>1.2.3</logback.version>
54         <hamcrest.junit.version>2.0.0.0</hamcrest.junit.version>
55         <junit.version>4.12</junit.version>
56         <google.guava.version>16.0.1</google.guava.version>
57         <janusgraph.version>0.2.0</janusgraph.version>
58         <mockito.version>1.10.19</mockito.version>
59         <powermock.version>1.6.2</powermock.version>
60         <jaxb.version>2.2.11</jaxb.version>
61         <eclipse.persistence.version>2.6.2</eclipse.persistence.version>
62         <!-- End of Application Dependencies -->
63
64         <docker.fabric.version>0.23.0</docker.fabric.version>
65         <!-- Default docker registry that maven fabric plugin will try to pull from -->
66         <docker.registry>docker.io</docker.registry>
67         <!-- Specifying the docker push registry where the image should be pushed -->
68         <!-- This value should be overwritten at runtime to wherever need to be pushed to -->
69         <docker.push.registry>localhost:5000</docker.push.registry>
70
71         <!--
72              Location where assembly of our scripts, resources and main jar will be held
73                  Check the ${project.artifactId}/src/main/assembly/descriptor.xml for more info
74         -->
75         <aai.build.directory>${project.build.directory}/${project.artifactId}-${project.version}-build/
76         </aai.build.directory>
77         <aai.docker.namespace>onap</aai.docker.namespace>
78
79         <maven.skip.tests>true</maven.skip.tests>
80
81         <jacoco.line.coverage.limit>0.44</jacoco.line.coverage.limit>
82
83         <!-- This will be used for the docker images as the default format of maven build has issues -->
84         <maven.build.timestamp.format>yyyyMMdd'T'HHmmss'Z'</maven.build.timestamp.format>
85         <javadoc.plugin.version>2.10.4</javadoc.plugin.version>
86
87         <!-- Start of Default ONAP Schema Properties -->
88         <schema.source.name>onap</schema.source.name>
89         <schema.configuration.location>N/A</schema.configuration.location>
90         <schema.nodes.location>${project.basedir}/src/main/resources/schema/${schema.source.name}/oxm</schema.nodes.location>
91         <schema.edges.location>${project.basedir}/src/main/resources/schema/${schema.source.name}/dbedgerules</schema.edges.location>
92         <schema.version.depth.start>v10</schema.version.depth.start>
93         <schema.version.related.link.start>v10</schema.version.related.link.start>
94         <schema.version.app.root.start>v11</schema.version.app.root.start>
95         <schema.version.namespace.change.start>v12</schema.version.namespace.change.start>
96         <schema.version.edge.label.start>v12</schema.version.edge.label.start>
97         <schema.version.api.default>v16</schema.version.api.default>
98         <schema.version.list>v10,v11,v12,v13,v14,v15,v16</schema.version.list>
99         <schema.uri.base.path>/aai/schema-service</schema.uri.base.path>
100         <!-- End of Default ONAP Schema Properties -->
101
102         <!-- Setting some default value to not complain by editor but it will be overridden by gmaven plugin -->
103     </properties>
104     <profiles>
105         <!-- Docker profile to be used for building docker image and pushing to nexus -->
106         <profile>
107             <id>docker</id>
108             <build>
109                 <plugins>
110                     <plugin>
111                         <groupId>io.fabric8</groupId>
112                         <artifactId>docker-maven-plugin</artifactId>
113                         <version>${docker.fabric.version}</version>
114                         <configuration>
115                             <verbose>true</verbose>
116                             <apiVersion>1.23</apiVersion>
117                             <images>
118                                 <image>
119                                     <name>${docker.push.registry}/${aai.docker.namespace}/${project.artifactId}:%l</name>
120                                     <build>
121                                         <filter>@</filter>
122                                         <tags>
123                                             <tag>latest</tag>
124                                             <tag>${project.docker.latesttag.version}</tag>
125                                             <tag>${project.major.version}.${project.minor.version}-STAGING-${maven.build.timestamp}</tag>
126                                         </tags>
127                                         <cleanup>try</cleanup>
128                                         <dockerFileDir>${project.basedir}/src/main/docker</dockerFileDir>
129                                         <assembly>
130                                             <inline>
131                                                 <fileSets>
132                                                     <fileSet>
133                                                         <directory>${aai.build.directory}</directory>
134                                                         <outputDirectory>/${project.artifactId}</outputDirectory>
135                                                     </fileSet>
136                                                 </fileSets>
137                                             </inline>
138                                         </assembly>
139                                     </build>
140                                 </image>
141                             </images>
142                         </configuration>
143                         <executions>
144                             <execution>
145                                 <id>clean-images</id>
146                                 <phase>pre-clean</phase>
147                                 <goals>
148                                     <goal>remove</goal>
149                                 </goals>
150                                 <configuration>
151                                     <removeAll>true</removeAll>
152                                 </configuration>
153                             </execution>
154                             <execution>
155                                 <id>generate-images</id>
156                                 <phase>package</phase>
157                                 <goals>
158                                     <goal>build</goal>
159                                 </goals>
160                             </execution>
161                             <execution>
162                                 <id>push-images</id>
163                                 <phase>deploy</phase>
164                                 <goals>
165                                     <goal>push</goal>
166                                 </goals>
167                             </execution>
168                         </executions>
169                     </plugin>
170                 </plugins>
171             </build>
172         </profile>
173         <!-- Start of ONAP Profile -->
174         <profile>
175             <id>onap</id>
176             <properties>
177                 <schema.source.name>onap</schema.source.name>
178                 <schema.version.namespace.change.start>v12</schema.version.namespace.change.start>
179                 <schema.version.list>v10,v11,v12,v13,v14,v15,v16</schema.version.list>
180             </properties>
181         </profile>
182         <!-- End of ONAP Profile -->
183         <profile>
184             <id>runAjsc</id>
185             <properties>
186                 <skipTests>${maven.skip.tests}</skipTests>
187             </properties>
188             <build>
189                 <defaultGoal>pre-integration-test</defaultGoal>
190                 <plugins>
191                     <plugin>
192                         <groupId>org.codehaus.mojo</groupId>
193                         <artifactId>exec-maven-plugin</artifactId>
194                         <version>1.6.0</version>
195                         <executions>
196                             <execution>
197                                 <id>run-spring-boot</id>
198                                 <phase>package</phase>
199                                 <goals>
200                                     <goal>java</goal>
201                                 </goals>
202                             </execution>
203                         </executions>
204                         <configuration>
205                             <mainClass>${start-class}</mainClass>
206                             <systemProperties>
207                                 <property>
208                                     <key>schema.source.name</key>
209                                     <value>${schema.source.name}</value>
210                                 </property>
211                                 <property>
212                                     <key>schema.configuration.location</key>
213                                     <value>${schema.configuration.location}</value>
214                                 </property>
215                                 <property>
216                                     <key>schema.nodes.location</key>
217                                     <value>${schema.nodes.location}</value>
218                                 </property>
219                                 <property>
220                                     <key>schema.edges.location</key>
221                                     <value>${schema.edges.location}</value>
222                                 </property>
223                                 <property>
224                                     <key>schema.version.depth.start</key>
225                                     <value>${schema.version.depth.start}</value>
226                                 </property>
227                                 <property>
228                                     <key>schema.version.related.link.start</key>
229                                     <value>${schema.version.related.link.start}</value>
230                                 </property>
231                                 <property>
232                                     <key>schema.version.app.root.start</key>
233                                     <value>${schema.version.app.root.start}</value>
234                                 </property>
235                                 <property>
236                                     <key>schema.version.namespace.change.start</key>
237                                     <value>${schema.version.namespace.change.start}</value>
238                                 </property>
239                                 <property>
240                                     <key>schema.version.edge.label.start</key>
241                                     <value>${schema.version.edge.label.start}</value>
242                                 </property>
243                                 <property>
244                                     <key>schema.version.api.default</key>
245                                     <value>${schema.version.api.default}</value>
246                                 </property>
247                                 <property>
248                                     <key>schema.version.list</key>
249                                     <value>${schema.version.list}</value>
250                                 </property>
251                                 <property>
252                                     <key>schema.uri.base.path</key>
253                                     <value>${schema.uri.base.path}</value>
254                                 </property>
255                             </systemProperties>
256                             <executable>java</executable>
257                         </configuration>
258                     </plugin>
259                 </plugins>
260             </build>
261         </profile>
262     </profiles>
263     <dependencyManagement>
264         <dependencies>
265             <dependency>
266                 <groupId>org.springframework.boot</groupId>
267                 <artifactId>spring-boot-starter-parent</artifactId>
268                 <version>${spring.boot.version}</version>
269                 <type>pom</type>
270                 <scope>import</scope>
271             </dependency>
272         </dependencies>
273     </dependencyManagement>
274     <dependencies>
275         <dependency>
276             <groupId>com.att.eelf</groupId>
277             <artifactId>eelf-core</artifactId>
278             <version>${eelf.core.version}</version>
279         </dependency>
280         <dependency>
281             <groupId>ch.qos.logback</groupId>
282             <artifactId>logback-core</artifactId>
283             <version>${logback.version}</version>
284         </dependency>
285         <dependency>
286             <groupId>ch.qos.logback</groupId>
287             <artifactId>logback-classic</artifactId>
288             <version>${logback.version}</version>
289         </dependency>
290         <dependency>
291             <groupId>ch.qos.logback</groupId>
292             <artifactId>logback-access</artifactId>
293             <version>${logback.version}</version>
294         </dependency>
295         <dependency>
296             <groupId>org.onap.aai.aai-common</groupId>
297             <artifactId>aai-core</artifactId>
298             <version>${aai.core.version}</version>
299             <exclusions>
300                 <exclusion>
301                     <groupId>com.sun.jersey</groupId>
302                     <artifactId>jersey-core</artifactId>
303                 </exclusion>
304                 <exclusion>
305                     <groupId>org.codehaus.jackson</groupId>
306                     <artifactId>jackson-mapper-asl</artifactId>
307                 </exclusion>
308                 <exclusion>
309                     <groupId>org.eclipse.jetty</groupId>
310                     <artifactId>jetty-http</artifactId>
311                 </exclusion>
312                 <exclusion>
313                     <groupId>org.eclipse.jetty</groupId>
314                     <artifactId>jetty-server</artifactId>
315                 </exclusion>
316                 <exclusion>
317                     <groupId>org.springframework</groupId>
318                     <artifactId>spring-web</artifactId>
319                 </exclusion>
320                 <exclusion>
321                     <groupId>org.onap.aai</groupId>
322                     <artifactId>aai-schema-ingest</artifactId>
323                 </exclusion>
324             </exclusions>
325         </dependency>
326         <dependency>
327             <groupId>org.hamcrest</groupId>
328             <artifactId>hamcrest-junit</artifactId>
329             <version>${hamcrest.junit.version}</version>
330         </dependency>
331         <dependency>
332             <groupId>junit</groupId>
333             <artifactId>junit</artifactId>
334             <version>${junit.version}</version>
335             <scope>test</scope>
336         </dependency>
337         <dependency>
338             <groupId>com.google.guava</groupId>
339             <artifactId>guava</artifactId>
340             <version>${google.guava.version}</version>
341         </dependency>
342         <dependency>
343             <groupId>com.fasterxml.jackson.jaxrs</groupId>
344             <artifactId>jackson-jaxrs-json-provider</artifactId>
345         </dependency>
346         <dependency>
347             <groupId>org.mockito</groupId>
348             <artifactId>mockito-all</artifactId>
349             <version>${mockito.version}</version>
350             <scope>test</scope>
351         </dependency>
352         <dependency>
353             <groupId>javax.xml.bind</groupId>
354             <artifactId>jaxb-api</artifactId>
355             <version>${jaxb.version}</version>
356         </dependency>
357         <dependency>
358             <groupId>com.sun.xml.bind</groupId>
359             <artifactId>jaxb-impl</artifactId>
360             <version>${jaxb.version}</version>
361         </dependency>
362         <dependency>
363             <groupId>com.sun.xml.bind</groupId>
364             <artifactId>jaxb-core</artifactId>
365             <version>${jaxb.version}</version>
366         </dependency>
367         <dependency>
368             <groupId>com.sun.xml.bind</groupId>
369             <artifactId>jaxb-xjc</artifactId>
370             <version>${jaxb.version}</version>
371         </dependency>
372         <dependency>
373             <groupId>org.eclipse.persistence</groupId>
374             <artifactId>eclipselink</artifactId>
375             <version>${eclipse.persistence.version}</version>
376         </dependency>
377         <dependency>
378             <groupId>org.eclipse.persistence</groupId>
379             <artifactId>org.eclipse.persistence.moxy</artifactId>
380             <version>${eclipse.persistence.version}</version>
381             <scope>compile</scope>
382         </dependency>
383         <dependency>
384             <groupId>org.springframework.boot</groupId>
385             <artifactId>spring-boot-starter-web</artifactId>
386             <exclusions>
387                 <exclusion>
388                     <groupId>org.springframework.boot</groupId>
389                     <artifactId>spring-boot-starter-tomcat</artifactId>
390                 </exclusion>
391             </exclusions>
392         </dependency>
393         <dependency>
394             <groupId>org.springframework.boot</groupId>
395             <artifactId>spring-boot-starter-jetty</artifactId>
396         </dependency>
397         <dependency>
398             <groupId>org.springframework.boot</groupId>
399             <artifactId>spring-boot-starter-jersey</artifactId>
400         </dependency>
401         <dependency>
402             <groupId>org.springframework.boot</groupId>
403             <artifactId>spring-boot-starter-aop</artifactId>
404         </dependency>
405         <dependency>
406             <groupId>org.springframework.boot</groupId>
407             <artifactId>spring-boot-test</artifactId>
408             <scope>test</scope>
409         </dependency>
410         <dependency>
411             <groupId>org.springframework</groupId>
412             <artifactId>spring-test</artifactId>
413             <scope>test</scope>
414         </dependency>
415         <dependency>
416             <groupId>org.mockito</groupId>
417             <artifactId>mockito-all</artifactId>
418             <version>${mockito.version}</version>
419             <scope>test</scope>
420         </dependency>
421         <dependency>
422             <groupId>org.hamcrest</groupId>
423             <artifactId>hamcrest-junit</artifactId>
424             <version>${hamcrest.junit.version}</version>
425         </dependency>
426     </dependencies>
427     <build>
428         <resources>
429             <resource>
430                 <directory>${project.basedir}/src/main/swm</directory>
431                 <targetPath>${project.build.directory}/swm</targetPath>
432                 <filtering>false</filtering>
433             </resource>
434             <resource>
435                 <directory>${project.basedir}/src/main/resources</directory>
436                 <includes>
437                     <include>application.properties</include>
438                     <include>dme2.properties</include>
439                     <include>logback.xml</include>
440                     <include>localhost-access-logback.xml</include>
441                 </includes>
442                 <targetPath>${project.build.directory}/swm/package/nix/dist_files/opt/app/${project.artifactId}/appconfig</targetPath>
443                 <filtering>false</filtering>
444             </resource>
445             <resource>
446                 <directory>${project.basedir}/src/main/resources</directory>
447                 <includes>
448                     <include>**/*</include>
449                 </includes>
450                 <filtering>true</filtering>
451             </resource>
452             <resource>
453                 <directory>${project.basedir}/src/main/resources/etc/appprops/</directory>
454                 <includes>
455                     <include>aaiconfig.properties</include>
456                 </includes>
457                 <targetPath>${project.build.directory}/swm/package/nix/dist_files/opt/app/${project.artifactId}/appconfig</targetPath>
458                 <filtering>false</filtering>
459             </resource>
460             <resource>
461                 <directory>${project.basedir}/src/main/resources/etc/auth/</directory>
462                 <includes>
463                     <include>aai-client-cert.p12</include>
464                     <include>tomcat_keystore</include>
465                     <include>aai_policy.json</include>
466                 </includes>
467                 <targetPath>${project.build.directory}/swm/package/nix/dist_files/opt/app/${project.artifactId}/appconfig</targetPath>
468                 <filtering>true</filtering>
469             </resource>
470             <resource>
471                 <directory>${project.basedir}/src/main/resources/</directory>
472                 <includes>
473                     <include>logback.xml</include>
474                     <include>localhost-access-logback.xml</include>
475                     <include>hbase-site.xml</include>
476                 </includes>
477                 <targetPath>${project.build.directory}/swm/package/nix/dist_files/opt/app/${project.artifactId}/appconfig</targetPath>
478                 <filtering>true</filtering>
479             </resource>
480             <resource>
481                 <directory>${project.basedir}/src/main/docker</directory>
482                 <includes>
483                     <include>**/*</include>
484                 </includes>
485                 <targetPath>${aai.build.directory}</targetPath>
486                 <filtering>true</filtering>
487             </resource>
488             <resource>
489                 <directory>${project.build.directory}/</directory>
490                 <includes>
491                     <include>${project.artifactId}-${project.version}.jar</include>
492                 </includes>
493                 <targetPath>${aai.build.directory}/lib/</targetPath>
494                 <filtering>false</filtering>
495             </resource>
496         </resources>
497         <pluginManagement>
498             <plugins>
499                 <plugin>
500                     <groupId>org.codehaus.groovy.maven</groupId>
501                     <artifactId>gmaven-plugin</artifactId>
502                     <version>1.0</version>
503                     <executions>
504                         <execution>
505                             <phase>validate</phase>
506                             <goals>
507                                 <goal>execute</goal>
508                             </goals>
509                             <configuration>
510                                 <source>
511                                     println project.properties['aai.project.version'];
512                                     def versionArray;
513                                     if (project.properties['aai.project.version'] != null) {
514                                         versionArray = project.properties['aai.project.version'].split('\\.');
515                                     }
516
517                                     project.properties["project.major.version"] = versionArray[0];
518                                     project.properties["project.minor.version"] = versionArray[1];
519                                     project.properties['project.docker.latesttag.version'] = versionArray[0] + '.' + versionArray[1] + '-STAGING-latest';
520                                     println 'New Tag for docker:' + project.properties['project.docker.latesttag.version'];
521                                 </source>
522                             </configuration>
523                         </execution>
524                     </executions>
525                 </plugin>
526             </plugins>
527         </pluginManagement>
528         <plugins>
529             <plugin>
530                 <groupId>org.springframework.boot</groupId>
531                 <artifactId>spring-boot-maven-plugin</artifactId>
532             </plugin>
533             <plugin>
534                 <groupId>org.apache.maven.plugins</groupId>
535                 <artifactId>maven-clean-plugin</artifactId>
536                 <version>2.4.1</version>
537                 <configuration>
538                     <filesets>
539                         <fileset>
540                             <directory>${project.basedir}/src/main/resources/schema</directory>
541                             <includes>
542                                 <include>**/*</include>
543                             </includes>
544                             <followSymlinks>false</followSymlinks>
545                         </fileset>
546                     </filesets>
547                 </configuration>
548             </plugin>
549             <plugin>
550                 <groupId>org.codehaus.groovy.maven</groupId>
551                 <artifactId>gmaven-plugin</artifactId>
552             </plugin>
553             <plugin>
554                 <groupId>org.apache.maven.plugins</groupId>
555                 <artifactId>maven-dependency-plugin</artifactId>
556                 <version>2.10</version>
557             </plugin>
558             <plugin>
559                 <groupId>org.apache.maven.plugins</groupId>
560                 <artifactId>maven-javadoc-plugin</artifactId>
561                 <version>${javadoc.plugin.version}</version>
562             </plugin>
563             <plugin>
564                 <artifactId>maven-assembly-plugin</artifactId>
565                 <configuration>
566                     <descriptors>
567                         <descriptor>src/main/assembly/descriptor.xml</descriptor>
568                     </descriptors>
569                 </configuration>
570                 <executions>
571                     <execution>
572                         <id>make-assembly</id> <!-- this is used for inheritance merges -->
573                         <phase>package</phase> <!-- bind to the packaging phase -->
574                         <goals>
575                             <goal>single</goal>
576                         </goals>
577                     </execution>
578                 </executions>
579             </plugin>
580             <plugin>
581                 <artifactId>maven-resources-plugin</artifactId>
582                 <version>2.7</version>
583                 <executions>
584                     <execution>
585                         <id>copy-oxm-edgerules-project</id>
586                         <phase>initialize</phase>
587                         <goals>
588                             <goal>copy-resources</goal>
589                         </goals>
590                         <configuration>
591                             <outputDirectory>${project.basedir}/src/main/resources/schema</outputDirectory>
592                             <resources>
593                                 <resource>
594                                     <directory>${project.basedir}/../aai-schema/src/main/resources/</directory>
595                                     <includes>
596                                         <include>**/oxm/**/*.xml</include>
597                                         <include>**/dbedgerules/**/*.json</include>
598                                     </includes>
599                                 </resource>
600                             </resources>
601                         </configuration>
602                     </execution>
603                     <execution>
604                         <id>copy-queries-project</id>
605                         <phase>initialize</phase>
606                         <goals>
607                             <goal>copy-resources</goal>
608                         </goals>
609                         <configuration>
610                             <outputDirectory>${project.basedir}/src/main/resources/schema</outputDirectory>
611                             <resources>
612                                 <resource>
613                                     <directory>${project.basedir}/../aai-queries/src/main/resources/schema</directory>
614                                     <includes>
615                                         <include>**/query/**/*.json</include>
616                                     </includes>
617                                 </resource>
618                             </resources>
619                         </configuration>
620                     </execution>
621                     <execution>
622                         <id>copy-oxm-edgerules</id>
623                         <phase>initialize</phase>
624                         <goals>
625                             <goal>copy-resources</goal>
626                         </goals>
627                         <configuration>
628                             <outputDirectory>${project.build.directory}/swm/package/nix/dist_files/opt/app/${project.artifactId}/appconfig/schema/</outputDirectory>
629                             <resources>
630                                 <resource>
631                                     <directory>${project.basedir}/../aai-schema/src/main/resources/</directory>
632                                     <includes>
633                                         <include>**/oxm/**/*.xml</include>
634                                         <include>**/dbedgerules/**/*.json</include>
635                                     </includes>
636                                 </resource>
637                             </resources>
638                         </configuration>
639                     </execution>
640                     <execution>
641                         <id>copy-queries</id>
642                         <phase>initialize</phase>
643                         <goals>
644                             <goal>copy-resources</goal>
645                         </goals>
646                         <configuration>
647                             <outputDirectory>${project.build.directory}/swm/package/nix/dist_files/opt/app/${project.artifactId}/appconfig/schema/</outputDirectory>
648                             <resources>
649                                 <resource>
650                                     <directory>${project.basedir}/../aai-queries/src/main/resources/schema</directory>
651                                     <includes>
652                                         <include>**/query/**/*.json</include>
653                                     </includes>
654                                 </resource>
655                             </resources>
656                         </configuration>
657                     </execution>
658                 </executions>
659             </plugin>
660             <plugin>
661                 <groupId>org.apache.maven.plugins</groupId>
662                 <artifactId>maven-surefire-plugin</artifactId>
663                 <version>2.12.4</version>
664                 <configuration>
665                     <argLine>-noverify ${argLine}</argLine>
666                     <runOrder>alphabetical</runOrder>
667                 </configuration>
668             </plugin>
669             <plugin>
670                 <groupId>com.mycila</groupId>
671                 <artifactId>license-maven-plugin</artifactId>
672             </plugin>
673             <plugin>
674                 <groupId>org.codehaus.mojo</groupId>
675                 <artifactId>sonar-maven-plugin</artifactId>
676                 <version>3.3</version>
677             </plugin>
678             <plugin>
679                 <groupId>org.jacoco</groupId>
680                 <artifactId>jacoco-maven-plugin</artifactId>
681                 <version>0.7.9</version>
682                 <configuration>
683                     <dumpOnExit>true</dumpOnExit>
684                     <excludes>
685                         <exclude>**/**/models/**/*.class</exclude>
686                     </excludes>
687                 </configuration>
688                 <executions>
689                     <execution>
690                         <id>jacoco-initialize-unit-tests</id>
691                         <goals>
692                             <goal>prepare-agent</goal>
693                         </goals>
694                         <configuration>
695                             <destFile>${project.build.directory}/coverage-reports/jacoco.exec</destFile>
696                             <!-- <append>true</append> -->
697                         </configuration>
698                     </execution>
699                     <execution>
700                         <id>post-unit-test</id>
701                         <phase>test</phase>
702                         <goals>
703                             <goal>report</goal>
704                         </goals>
705                         <configuration>
706                             <!-- Sets the path to the file which contains the execution data. -->
707                             <dataFile>${project.build.directory}/coverage-reports/jacoco.exec</dataFile>
708                             <!-- Sets the output directory for the code coverage report. -->
709                             <outputDirectory>${project.reporting.outputDirectory}/jacoco</outputDirectory>
710                         </configuration>
711                     </execution>
712                     <execution>
713                         <id>default-check</id>
714                         <goals>
715                             <goal>check</goal>
716                         </goals>
717                         <configuration>
718                             <dataFile>${project.build.directory}/coverage-reports/jacoco.exec</dataFile>
719                             <rules>
720                                 <!--  implementation is needed only for Maven 2  -->
721                                 <rule implementation="org.jacoco.maven.RuleConfiguration">
722                                     <element>BUNDLE</element>
723                                     <limits>
724                                         <limit implementation="org.jacoco.report.check.Limit">
725                                             <counter>LINE</counter>
726                                             <value>COVEREDRATIO</value>
727                                             <minimum>${jacoco.line.coverage.limit}</minimum>
728                                         </limit>
729                                     </limits>
730                                 </rule>
731                             </rules>
732                         </configuration>
733                     </execution>
734                 </executions>
735             </plugin>
736             <plugin>
737                 <groupId>org.apache.maven.plugins</groupId>
738                 <artifactId>maven-deploy-plugin</artifactId>
739                 <executions>
740                     <execution>
741                         <id>default-deploy</id>
742                         <phase>none</phase>
743                     </execution>
744                 </executions>
745             </plugin>
746             <plugin>
747                 <groupId>org.sonatype.plugins</groupId>
748                 <artifactId>nexus-staging-maven-plugin</artifactId>
749                 <version>1.6.7</version>
750                 <extensions>true</extensions>
751                 <configuration>
752                     <nexusUrl>${nexusproxy}</nexusUrl>
753                     <stagingProfileId>176c31dfe190a</stagingProfileId>
754                     <serverId>ecomp-staging</serverId>
755                 </configuration>
756             </plugin>
757             <plugin>
758                 <groupId>org.springframework.boot</groupId>
759                 <artifactId>spring-boot-maven-plugin</artifactId>
760                 <version>${spring.boot.version}</version>
761                 <configuration>
762                     <mainClass>${start-class}</mainClass>
763                     <layout>ZIP</layout>
764                 </configuration>
765                 <executions>
766                     <execution>
767                         <goals>
768                             <goal>repackage</goal>
769                         </goals>
770                     </execution>
771                 </executions>
772             </plugin>
773             <plugin>
774                 <groupId>org.apache.maven.plugins</groupId>
775                 <artifactId>maven-clean-plugin</artifactId>
776                 <version>2.4.1</version>
777                 <configuration>
778                     <filesets>
779                         <fileset>
780                             <directory>${project.basedir}/src/main/resources/schema</directory>
781                             <includes>
782                                 <include>**/*</include>
783                             </includes>
784                             <followSymlinks>false</followSymlinks>
785                         </fileset>
786                     </filesets>
787                 </configuration>
788             </plugin>
789         </plugins>
790     </build>
791     <reporting>
792         <plugins>
793             <plugin>
794                 <groupId>org.apache.maven.plugins</groupId>
795                 <artifactId>maven-javadoc-plugin</artifactId>
796                 <version>2.10.4</version>
797                 <configuration>
798                     <failOnError>false</failOnError>
799                     <doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
800                     <docletArtifact>
801                         <groupId>org.umlgraph</groupId>
802                         <artifactId>umlgraph</artifactId>
803                         <version>5.6</version>
804                     </docletArtifact>
805                     <additionalparam>-views</additionalparam>
806                     <useStandardDocletOptions>true</useStandardDocletOptions>
807                 </configuration>
808             </plugin>
809         </plugins>
810     </reporting>
811 </project>