Package upgrades
[ccsdk/parent.git] / springboot / springboot1 / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
3     <modelVersion>4.0.0</modelVersion>
4
5     <!-- PLEASE READ !!!!! This file is generated from ccsdk/parent/springboot/spring-boot-setup/src/main/template/pom-template.xml
6         Any updates needed should be made to that template and not to the generated
7         pom.xml file -->
8     <parent>
9         <groupId>org.springframework.boot</groupId>
10         <artifactId>spring-boot-starter-parent</artifactId>
11         <version>1.5.22.RELEASE</version>
12         <relativePath/>
13     </parent>
14
15     <groupId>org.onap.ccsdk.parent</groupId>
16     <artifactId>spring-boot-1-starter-parent</artifactId>
17     <version>2.2.0-SNAPSHOT</version>
18     <packaging>pom</packaging>
19
20     <name>ONAP :: ${project.groupId} :: ${project.artifactId}</name>
21     <description>Root POM to be used in place of spring-boot parent for CCSDK based projects</description>
22     <url>http://wiki.onap.org</url>
23     <organization>
24         <name>ONAP</name>
25     </organization>
26
27     <issueManagement>
28         <system>JIRA</system>
29         <url>https://jira.onap.org/</url>
30     </issueManagement>
31
32     <distributionManagement>
33         <repository>
34             <id>ecomp-releases</id>
35             <url>${onap.nexus.release-url}</url>
36         </repository>
37         <snapshotRepository>
38             <id>ecomp-snapshots</id>
39             <url>${onap.nexus.snapshot-url}</url>
40         </snapshotRepository>
41     </distributionManagement>
42
43     <properties>
44         <!-- Sonar properties -->
45         <sonar.scanner.version>3.7.0.1746</sonar.scanner.version>
46         <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
47         <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
48         <!-- Default Sonar configuration -->
49         <sonar.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml,${project.reporting.outputDirectory}/jacoco-it/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
50         <!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
51         <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
52
53         <!-- Jacoco properties -->
54         <jacoco.version>0.8.5</jacoco.version>
55         <!-- properties from oparent -->
56
57         <maven.compiler.source>1.8</maven.compiler.source>
58         <maven.compiler.target>1.8</maven.compiler.target>
59         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
60         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
61         <!-- sitePath may be overridden in the inheriting POM if desired -->
62         <sitePath>/content/sites/site/${project.groupId}/${project.artifactId}/${project.version}</sitePath>
63
64         <!-- If following file exist, auto-generation of swagger.json will be done -->
65         <swagger-properties>${basedir}/src/main/resources/swagger.properties</swagger-properties>
66         <!-- If following file exist, auto-generation of sdk will be done -->
67         <swagger-json>${basedir}/src/main/resources/swagger.json</swagger-json>
68         <!-- end of properties from oparent -->
69
70         <!-- ONAP repositories -->
71         <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
72         <onap.nexus.host>nexus.onap.org</onap.nexus.host>
73         <onap.nexus.port>443</onap.nexus.port>
74         <onap.nexus.protocol>https</onap.nexus.protocol>
75         <onap.nexus.public-url>https://nexus.onap.org/content/groups/public</onap.nexus.public-url>
76         <onap.nexus.staging-url>https://nexus.onap.org/content/groups/staging</onap.nexus.staging-url>
77         <onap.nexus.release-url>https://nexus.onap.org/content/repositories/releases</onap.nexus.release-url>
78         <onap.nexus.snapshot-url>https://nexus.onap.org/content/repositories/snapshots</onap.nexus.snapshot-url>
79         <onap.nexus.staging.server-id>ecomp-staging</onap.nexus.staging.server-id>
80         <onap.nexus.staging.profile-id>176c31dfe190a</onap.nexus.staging.profile-id>
81
82         <java.version.source>1.8</java.version.source>
83         <java.version.target>1.8</java.version.target>
84         <bundle.plugin.version>2.5.0</bundle.plugin.version>
85         <maven.compile.plugin.version>2.5.1</maven.compile.plugin.version>
86         <features.file>features.xml</features.file>
87         <jmxGeneratorPath>src/main/yang-gen-config</jmxGeneratorPath>
88         <salGeneratorPath>src/main/yang-gen-sal</salGeneratorPath>
89         <checkstyle.skip>true</checkstyle.skip>
90
91         <!-- logging-analytics versions -->
92         <logging-analytics.version>1.6.9</logging-analytics.version>
93
94         <!-- CCSDK component versions -->
95         <ccsdk.cds.version>(1.1.99999,1.2.99999-SNAPSHOT)</ccsdk.cds.version>
96         <ccsdk.features.version>(1.1.99999, 1.2.99999-SNAPSHOT)</ccsdk.features.version>
97         <ccsdk.distribution.version>(1.1.99999, 1.2.99999-SNAPSHOT)</ccsdk.distribution.version>
98         <ccsdk.sli.version>(1.2.99999, 1.3.99999-SNAPSHOT)</ccsdk.sli.version>
99         <ccsdk.sli.core.version>${ccsdk.sli.version}</ccsdk.sli.core.version>
100         <ccsdk.sli.adaptors.version>${ccsdk.sli.version}</ccsdk.sli.adaptors.version>
101         <ccsdk.sli.northbound.version>${ccsdk.sli.version}</ccsdk.sli.northbound.version>
102         <ccsdk.sli.plugins.version>${ccsdk.sli.version}</ccsdk.sli.plugins.version>
103
104         <!-- Spring versions -->
105         <spring.boot.version>1.5.22.RELEASE</spring.boot.version>
106         <spring.version>4.3.25.RELEASE</spring.version>
107
108         <!-- Kotlin versions -->
109         <kotlin.compiler.jvmTarget>1.8</kotlin.compiler.jvmTarget>
110         <kotlin.version>1.3.61</kotlin.version>
111         <kotlin.maven.version>1.3.61</kotlin.maven.version>
112         <kotlin.couroutines.version>1.3.3</kotlin.couroutines.version>
113         <kotlinpoet.version>1.5.0</kotlinpoet.version>
114         <kroto-plus.version>0.5.0</kroto-plus.version>
115         <nats.version>2.6.6</nats.version>
116         <nats.streaming.version>2.2.3</nats.streaming.version>
117         <mockk.version>1.9.3</mockk.version>
118
119         <!-- Managed dependency versions -->
120         <antlr.version>4.8-1</antlr.version>
121         <commons.lang.version>2.6</commons.lang.version>
122         <apache.httpcomponents.core.version>4.4.14</apache.httpcomponents.core.version>
123         <apache.httpcomponents.client.version>4.5.13</apache.httpcomponents.client.version>
124         <derby.version>10.14.2.0</derby.version>
125         <eelf.version>1.0.0</eelf.version>
126         <grpc.version>1.25.0</grpc.version>
127         <netty-ssl>2.0.39.Final</netty-ssl>
128         <protobuff.java.version>3.10.0</protobuff.java.version>
129         <protobuff.java.utils.version>3.10.0</protobuff.java.utils.version>
130         <jersey.version>2.30.1</jersey.version>
131         <jersey.client.version>2.30.1</jersey.client.version>
132         <jettison.version>1.3.8</jettison.version>
133         <logback.version>1.2.3</logback.version>
134         <mariadb.connector.version>2.7.3</mariadb.connector.version>
135         <mariadb4j.version>2.4.0</mariadb4j.version>
136         <slf4j.version>1.7.25</slf4j.version>
137         <springfox.version>2.9.2</springfox.version>
138         <testng.version>6.14.3</testng.version>
139         <tomcat-jdbc.version>9.0.46</tomcat-jdbc.version>
140         <dependency-list.file>direct-dependencies.txt</dependency-list.file>
141     </properties>
142
143     <dependencyManagement>
144         <dependencies>
145             <!-- Note: If value in BOM conflicts with value inherited from
146             parent pom, inherited value takes precedence.  This seems more like
147             a bug than a feature, but this is how maven 3.6 works -->
148             <dependency>
149                 <groupId>org.onap.ccsdk.parent</groupId>
150                 <artifactId>dependencies-bom</artifactId>
151                 <version>2.2.0-SNAPSHOT</version>
152                 <type>pom</type>
153                 <scope>import</scope>
154             </dependency>
155             <dependency>
156                 <groupId>com.fasterxml.jackson</groupId>
157                 <artifactId>jackson-bom</artifactId>
158                 <version>2.11.4</version>
159                 <type>pom</type>
160                 <scope>import</scope>
161             </dependency>
162             <dependency>
163                 <groupId>org.onap.ccsdk.sli.core</groupId>
164                 <artifactId>sli-common</artifactId>
165                 <version>${ccsdk.sli.core.version}</version>
166             </dependency>
167             <dependency>
168                 <groupId>org.onap.ccsdk.sli.core</groupId>
169                 <artifactId>sli-provider</artifactId>
170                 <version>${ccsdk.sli.core.version}</version>
171             </dependency>
172             <dependency>
173                 <groupId>org.onap.ccsdk.sli.core</groupId>
174                 <artifactId>ccsdk-sli</artifactId>
175                 <version>${ccsdk.sli.core.version}</version>
176                 <type>xml</type>
177                 <classifier>features</classifier>
178             </dependency>
179             <dependency>
180                 <groupId>org.onap.ccsdk.sli.core</groupId>
181                 <artifactId>dblib-provider</artifactId>
182                 <version>${ccsdk.sli.core.version}</version>
183             </dependency>
184             <dependency>
185                 <groupId>org.onap.ccsdk.sli.adaptors</groupId>
186                 <artifactId>aai-service-provider</artifactId>
187                 <version>${ccsdk.sli.adaptors.version}</version>
188             </dependency>
189             <dependency>
190                 <groupId>org.onap.logging-analytics</groupId>
191                 <artifactId>logging-slf4j</artifactId>
192                 <version>${logging-analytics.version}</version>
193             </dependency>
194             <dependency>
195                 <groupId>org.onap.logging-analytics</groupId>
196                 <artifactId>logging-filter-base</artifactId>
197                 <version>${logging-analytics.version}</version>
198             </dependency>
199         </dependencies>
200     </dependencyManagement>
201
202     <repositories>
203         <repository>
204             <id>onap-public</id>
205             <url>${onap.nexus.public-url}</url>
206             <releases>
207                 <enabled>true</enabled>
208                 <updatePolicy>never</updatePolicy>
209             </releases>
210             <snapshots>
211                 <enabled>true</enabled>
212                 <updatePolicy>always</updatePolicy>
213             </snapshots>
214         </repository>
215         <repository>
216             <id>onap-staging</id>
217             <url>${onap.nexus.staging-url}</url>
218             <releases>
219                 <enabled>true</enabled>
220                 <updatePolicy>never</updatePolicy>
221             </releases>
222             <snapshots>
223                 <enabled>true</enabled>
224                 <updatePolicy>always</updatePolicy>
225             </snapshots>
226         </repository>
227         <repository>
228             <id>ecomp-release</id>
229             <name>onap-repository-releases</name>
230             <url>${onap.nexus.release-url}</url>
231             <releases>
232                 <enabled>true</enabled>
233                 <updatePolicy>never</updatePolicy>
234             </releases>
235             <snapshots>
236                 <enabled>false</enabled>
237             </snapshots>
238         </repository>
239         <repository>
240             <id>ecomp-snapshot</id>
241             <name>onap-repository-snapshots</name>
242             <url>${onap.nexus.snapshot-url}</url>
243             <releases>
244                 <enabled>false</enabled>
245             </releases>
246             <snapshots>
247                 <enabled>true</enabled>
248             </snapshots>
249         </repository>
250     </repositories>
251
252     <pluginRepositories>
253         <pluginRepository>
254             <id>onap-public</id>
255             <url>${onap.nexus.public-url}</url>
256             <releases>
257                 <enabled>true</enabled>
258             </releases>
259             <snapshots>
260                 <enabled>true</enabled>
261             </snapshots>
262         </pluginRepository>
263         <pluginRepository>
264             <id>onap-staging</id>
265             <url>${onap.nexus.staging-url}</url>
266             <releases>
267                 <enabled>true</enabled>
268             </releases>
269             <snapshots>
270                 <enabled>true</enabled>
271             </snapshots>
272         </pluginRepository>
273         <pluginRepository>
274             <id>onap-snapshot</id>
275             <url>${onap.nexus.snapshot-url}</url>
276             <releases>
277                 <enabled>false</enabled>
278             </releases>
279             <snapshots>
280                 <enabled>true</enabled>
281             </snapshots>
282         </pluginRepository>
283         <!-- Black Duck plugin dependencies -->
284         <pluginRepository>
285             <id>JCenter</id>
286             <name>JCenter Repository</name>
287             <url>http://jcenter.bintray.com</url>
288         </pluginRepository>
289
290         <pluginRepository>
291             <id>Restlet</id>
292             <name>Restlet Repository</name>
293             <url>http://maven.restlet.com</url>
294         </pluginRepository>
295     </pluginRepositories>
296
297     <build>
298         <pluginManagement>
299             <plugins>
300                 <!-- Plugins from ONAP oparent -->
301                 <plugin>
302                     <groupId>org.apache.maven.plugins</groupId>
303                     <artifactId>maven-deploy-plugin</artifactId>
304                     <!-- This version supports the "deployAtEnd" parameter -->
305                     <version>2.8</version>
306                     <configuration>
307                         <skip/>
308                         <deployAtEnd>true</deployAtEnd>
309                     </configuration>
310                 </plugin>
311                 <plugin>
312                     <groupId>org.apache.maven.plugins</groupId>
313                     <artifactId>maven-site-plugin</artifactId>
314                     <version>3.6</version>
315                     <dependencies>
316                         <dependency>
317                             <groupId>org.apache.maven.wagon</groupId>
318                             <artifactId>wagon-webdav-jackrabbit</artifactId>
319                             <version>2.10</version>
320                         </dependency>
321                         <dependency>
322                             <groupId>org.apache.maven.doxia</groupId>
323                             <artifactId>doxia-core</artifactId>
324                             <version>1.7</version>
325                         </dependency>
326                         <dependency>
327                             <groupId>org.apache.maven.doxia</groupId>
328                             <artifactId>doxia-sink-api</artifactId>
329                             <version>1.7</version>
330                         </dependency>
331                         <dependency>
332                             <groupId>org.apache.maven.doxia</groupId>
333                             <artifactId>doxia-logging-api</artifactId>
334                             <version>1.7</version>
335                         </dependency>
336                     </dependencies>
337                     <executions>
338                         <execution>
339                             <id>attach-descriptor</id>
340                             <goals>
341                                 <goal>attach-descriptor</goal>
342                             </goals>
343                         </execution>
344                     </executions>
345                 </plugin>
346                 <plugin>
347                     <groupId>org.apache.maven.plugins</groupId>
348                     <artifactId>maven-checkstyle-plugin</artifactId>
349                     <version>2.17</version>
350                     <dependencies>
351                         <dependency>
352                             <groupId>org.onap.oparent</groupId>
353                             <artifactId>checkstyle</artifactId>
354                             <version>1.1.1</version>
355                         </dependency>
356                     </dependencies>
357                     <executions>
358                         <execution>
359                             <id>check-license</id>
360                             <goals>
361                                 <goal>check</goal>
362                             </goals>
363                             <phase>process-sources</phase>
364                             <configuration>
365                                 <configLocation>onap-checkstyle/check-license.xml</configLocation>
366                                 <headerLocation>onap-checkstyle/apache-license-2.regexp.txt</headerLocation>
367                                 <includeResources>false</includeResources>
368                                 <includeTestSourceDirectory>true</includeTestSourceDirectory>
369                                 <includeTestResources>false</includeTestResources>
370                                 <sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
371                                 <excludes>
372                                 </excludes>
373                                 <failsOnError>false</failsOnError>
374                                 <consoleOutput>true</consoleOutput>
375                             </configuration>
376                         </execution>
377                         <execution>
378                             <id>check-style</id>
379                             <goals>
380                                 <goal>check</goal>
381                             </goals>
382                             <phase>process-sources</phase>
383                             <configuration>
384                                 <!-- Use Google Java Style Guide: https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml
385                                     with minor changes -->
386                                 <configLocation>onap-checkstyle/onap-java-style.xml</configLocation>
387                                 <!-- <sourceDirectory> is needed so that checkstyle ignores the generated sources directory -->
388                                 <sourceDirectory>${project.build.sourceDirectory}/src/main/java</sourceDirectory>
389                                 <includeResources>true</includeResources>
390                                 <includeTestSourceDirectory>true</includeTestSourceDirectory>
391                                 <includeTestResources>true</includeTestResources>
392                                 <excludes>
393                                 </excludes>
394                                 <failsOnError>false</failsOnError>
395                                 <consoleOutput>true</consoleOutput>
396                             </configuration>
397                         </execution>
398                     </executions>
399                 </plugin>
400
401                 <plugin>
402                     <groupId>org.apache.maven.plugins</groupId>
403                     <artifactId>maven-surefire-plugin</artifactId>
404                     <version>2.19.1</version>
405                     <configuration>
406                         <!-- Sets the VM argument line used when unit tests are run. -->
407                         <argLine>${surefireArgLine}</argLine>
408                         <!-- Excludes integration tests when unit tests are run. -->
409                         <excludes>
410                             <exclude>**/IT*.java</exclude>
411                         </excludes>
412                     </configuration>
413                 </plugin>
414                 <plugin>
415                     <groupId>org.apache.maven.plugins</groupId>
416                     <artifactId>maven-failsafe-plugin</artifactId>
417                     <version>2.19.1</version>
418                     <executions>
419                         <!-- Ensures that both integration-test and verify goals of the Failsafe Maven plugin are executed. -->
420                         <execution>
421                             <id>integration-tests</id>
422                             <goals>
423                                 <goal>integration-test</goal>
424                                 <goal>verify</goal>
425                             </goals>
426                             <configuration>
427                                 <!-- Sets the VM argument line used when integration tests are run. -->
428                                 <argLine>${failsafeArgLine}</argLine>
429                             </configuration>
430                         </execution>
431                     </executions>
432                 </plugin>
433                 <plugin>
434                     <groupId>org.apache.maven.plugins</groupId>
435                     <artifactId>maven-compiler-plugin</artifactId>
436                     <version>${maven.compile.plugin.version}</version>
437                     <configuration>
438                         <source>${java.version.source}</source>
439                         <target>${java.version.target}</target>
440                     </configuration>
441                 </plugin>
442                 <plugin>
443                     <groupId>org.sonarsource.scanner.maven</groupId>
444                     <artifactId>sonar-maven-plugin</artifactId>
445                     <version>3.6.0.1398</version>
446                 </plugin>
447
448                 <!-- End of plugins from ONAP oparent -->
449
450                 <plugin>
451                     <groupId>org.apache.maven.plugins</groupId>
452                     <artifactId>maven-javadoc-plugin</artifactId>
453                     <version>3.2.0</version>
454                     <configuration>
455                         <additionalDependencies>
456                             <additionalDependency>
457                                 <groupId>org.slf4j</groupId>
458                                 <artifactId>slf4j-api</artifactId>
459                                 <version>${slf4j.version}</version>
460                             </additionalDependency>
461                             <additionalDependency>
462                                 <groupId>org.antlr</groupId>
463                                 <artifactId>antlr4</artifactId>
464                                 <version>${antlr.version}</version>
465                             </additionalDependency>
466                             <additionalDependency>
467                                 <groupId>org.antlr</groupId>
468                                 <artifactId>antlr4-runtime</artifactId>
469                                 <version>${antlr.version}</version>
470                             </additionalDependency>
471                             <additionalDependency>
472                                 <groupId>com.sun.jersey</groupId>
473                                 <artifactId>jersey-client</artifactId>
474                                 <version>${jersey.client.version}</version>
475                             </additionalDependency>
476                             <additionalDependency>
477                                 <groupId>com.sun.jersey</groupId>
478                                 <artifactId>jersey-core</artifactId>
479                                 <version>${jersey.version}</version>
480                             </additionalDependency>
481                             <additionalDependency>
482                                 <groupId>org.apache.httpcomponents</groupId>
483                                 <artifactId>httpcore-osgi</artifactId>
484                                 <version>${apache.httpcomponents.core.version}</version>
485                             </additionalDependency>
486                             <additionalDependency>
487                                 <groupId>org.apache.httpcomponents</groupId>
488                                 <artifactId>httpclient-osgi</artifactId>
489                                 <version>${apache.httpcomponents.client.version}</version>
490                             </additionalDependency>
491                             <additionalDependency>
492                                 <groupId>commons-lang</groupId>
493                                 <artifactId>commons-lang</artifactId>
494                                 <version>${commons.lang.version}</version>
495                             </additionalDependency>
496                         </additionalDependencies>
497                         <failOnError>false</failOnError>
498                     </configuration>
499                     <executions>
500                         <execution>
501                             <id>aggregate</id>
502                             <goals>
503                                 <goal>aggregate</goal>
504                             </goals>
505                             <phase>site</phase>
506                         </execution>
507                     </executions>
508                 </plugin>
509                 <plugin>
510                     <groupId>com.github.ferstl</groupId>
511                     <artifactId>depgraph-maven-plugin</artifactId>
512                     <version>3.3.0</version>
513                     <configuration>
514                         <graphFormat>text</graphFormat>
515                         <outputFileName>${dependency-list.file}</outputFileName>
516                         <outputDirectory>${project.basedir}</outputDirectory>
517                         <transitiveExcludes>*</transitiveExcludes>
518                         <showVersions>true</showVersions>
519                         <showGroupIds>true</showGroupIds>
520                     </configuration>
521                 </plugin>
522             </plugins>
523         </pluginManagement>
524         <plugins>
525             <!-- Plugins from ONAP oparent -->
526             <!-- Jacoco / Sonar -->
527             <plugin>
528                 <groupId>org.jacoco</groupId>
529                 <artifactId>jacoco-maven-plugin</artifactId>
530                 <version>${jacoco.version}</version>
531                 <executions>
532                     <execution>
533                         <id>pre-unit-test</id>
534                         <goals>
535                             <goal>prepare-agent</goal>
536                         </goals>
537                         <configuration>
538                             <!-- Sets the path to the file which contains the execution data. -->
539                             <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
540                             <!-- Sets the name of the property containing the settings for JaCoCo runtime agent. -->
541                             <propertyName>surefireArgLine</propertyName>
542                         </configuration>
543                     </execution>
544                     <!-- Ensures that the code coverage report for unit tests is created after unit tests have been run. -->
545                     <execution>
546                         <id>post-unit-test</id>
547                         <phase>test</phase>
548                         <goals>
549                             <goal>report</goal>
550                         </goals>
551                         <configuration>
552                             <!-- Sets the path to the file which contains the execution data. -->
553                             <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
554                             <!-- Sets the output directory for the code coverage report. -->
555                             <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
556                         </configuration>
557                     </execution>
558                     <execution>
559                         <id>pre-integration-test</id>
560                         <phase>pre-integration-test</phase>
561                         <goals>
562                             <goal>prepare-agent</goal>
563                         </goals>
564                         <configuration>
565                             <!-- Sets the path to the file which contains the execution data. -->
566                             <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
567                             <!-- Sets the name of the property containing the settings for JaCoCo runtime agent. -->
568                             <propertyName>failsafeArgLine</propertyName>
569                         </configuration>
570                     </execution>
571                     <!-- Ensures that the code coverage report for integration tests after integration tests have been run. -->
572                     <execution>
573                         <id>post-integration-test</id>
574                         <phase>post-integration-test</phase>
575                         <goals>
576                             <goal>report</goal>
577                         </goals>
578                         <configuration>
579                             <!-- Sets the path to the file which contains the execution data. -->
580                             <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
581                             <!-- Sets the output directory for the code coverage report. -->
582                             <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>
583                         </configuration>
584                     </execution>
585                     <execution>
586                         <id>default-prepare-agent</id>
587                         <goals>
588                             <goal>prepare-agent</goal>
589                         </goals>
590                     </execution>
591                     <execution>
592                         <id>default-report</id>
593                         <phase>prepare-package</phase>
594                         <goals>
595                             <goal>report</goal>
596                         </goals>
597                     </execution>
598                     <execution>
599                         <id>default-check</id>
600                         <goals>
601                             <goal>check</goal>
602                         </goals>
603                         <configuration>
604                             <rules>
605                                 <rule>
606                                     <element>PACKAGE</element>
607                                     <limits>
608                                         <limit>
609                                             <counter>COMPLEXITY</counter>
610                                             <value>COVEREDRATIO</value>
611                                             <minimum>0.0</minimum>
612                                         </limit>
613                                     </limits>
614                                 </rule>
615                             </rules>
616                         </configuration>
617                     </execution>
618                 </executions>
619             </plugin>
620             <plugin>
621                 <groupId>org.apache.maven.plugins</groupId>
622                 <artifactId>maven-deploy-plugin</artifactId>
623             </plugin>
624             <plugin>
625                 <groupId>org.apache.maven.plugins</groupId>
626                 <artifactId>maven-checkstyle-plugin</artifactId>
627             </plugin>
628             <plugin>
629                 <groupId>org.codehaus.mojo</groupId>
630                 <artifactId>build-helper-maven-plugin</artifactId>
631                 <version>1.12</version>
632             </plugin>
633             <!-- Jacoco / Sonar -->
634             <plugin>
635                 <groupId>org.apache.maven.plugins</groupId>
636                 <artifactId>maven-surefire-plugin</artifactId>
637             </plugin>
638             <plugin>
639                 <groupId>org.apache.maven.plugins</groupId>
640                 <artifactId>maven-failsafe-plugin</artifactId>
641             </plugin>
642
643             <!-- End of plugins from ONAP oparent -->
644             <plugin>
645                 <groupId>org.codehaus.mojo</groupId>
646                 <artifactId>properties-maven-plugin</artifactId>
647                 <version>1.0.0</version>
648                 <executions>
649                     <execution>
650                         <goals>
651                             <goal>set-system-properties</goal>
652                         </goals>
653                         <configuration>
654                             <properties>
655                                 <property>
656                                     <name>maven.wagon.http.ssl.allowall</name>
657                                     <value>${ssl.allowall}</value>
658                                 </property>
659                                 <property>
660                                     <name>maven.wagon.http.ssl.insecure</name>
661                                     <value>${ssl.insecure}</value>
662                                 </property>
663                             </properties>
664                         </configuration>
665                     </execution>
666                 </executions>
667             </plugin>
668             <plugin>
669                 <groupId>org.codehaus.mojo</groupId>
670                 <artifactId>versions-maven-plugin</artifactId>
671                 <version>2.5</version>
672                 <configuration>
673                     <processAllModules>true</processAllModules>
674                 </configuration>
675             </plugin>
676             <plugin>
677                 <artifactId>maven-scm-plugin</artifactId>
678                 <version>1.8.1</version>
679                 <configuration>
680                     <tag>${project.artifactId}-${project.version}</tag>
681                 </configuration>
682             </plugin>
683             <plugin>
684                 <groupId>pl.project13.maven</groupId>
685                 <artifactId>git-commit-id-plugin</artifactId>
686                 <version>4.0.0</version>
687                 <configuration>
688                     <commitIdGenerationMode>full</commitIdGenerationMode>
689                     <includeOnlyProperties>
690                         <includeOnlyProperty>^git.build.(time|version)$</includeOnlyProperty>
691                         <includeOnlyProperty>^git.commit.id.(abbrev|full)$</includeOnlyProperty>
692                     </includeOnlyProperties>
693                 </configuration>
694             </plugin>
695         </plugins>
696     </build>
697
698     <reporting>
699         <plugins>
700             <plugin>
701                 <artifactId>maven-javadoc-plugin</artifactId>
702                 <version>2.10.4</version>
703                 <configuration>
704                     <failOnError>false</failOnError>
705                     <doclet>org.umlgraph.doclet.UmlGraphDoc</doclet>
706                     <docletArtifact>
707                         <groupId>org.umlgraph</groupId>
708                         <artifactId>umlgraph</artifactId>
709                         <version>5.6</version>
710                     </docletArtifact>
711                     <additionalparam>-views</additionalparam>
712                     <useStandardDocletOptions>true</useStandardDocletOptions>
713                     <excludePackageNames>org.opendaylight.*</excludePackageNames>
714                 </configuration>
715                 <reportSets>
716                     <reportSet>
717                         <reports>
718                             <report>javadoc-no-fork</report>
719                             <report>test-javadoc-no-fork</report>
720                         </reports>
721                     </reportSet>
722                     <reportSet>
723                         <id>aggregate</id>
724                         <reports>
725                             <report>aggregate</report>
726                             <report>test-aggregate</report>
727                         </reports>
728                     </reportSet>
729                 </reportSets>
730             </plugin>
731             <plugin>
732                 <groupId>org.apache.maven.plugins</groupId>
733                 <artifactId>maven-jxr-plugin</artifactId>
734                 <version>2.3</version>
735                 <reportSets>
736                     <reportSet>
737                         <id>aggregate</id>
738                         <reports>
739                             <report>aggregate</report>
740                             <report>test-aggregate</report>
741                         </reports>
742                     </reportSet>
743                 </reportSets>
744             </plugin>
745             <plugin>
746                 <artifactId>maven-surefire-plugin</artifactId>
747                 <version>2.17</version>
748             </plugin>
749             <plugin>
750                 <groupId>org.apache.maven.plugins</groupId>
751                 <artifactId>maven-changelog-plugin</artifactId>
752                 <version>2.3</version>
753                 <reportSets>
754                     <reportSet>
755                         <id>dual-report</id>
756                         <configuration>
757                             <type>range</type>
758                             <range>30</range>
759                         </configuration>
760                         <reports>
761                             <report>changelog</report>
762                             <report>file-activity</report>
763                         </reports>
764                     </reportSet>
765                 </reportSets>
766             </plugin>
767             <plugin>
768                 <groupId>org.codehaus.mojo</groupId>
769                 <artifactId>taglist-maven-plugin</artifactId>
770                 <version>2.4</version>
771             </plugin>
772         </plugins>
773     </reporting>
774
775     <profiles>
776         <!-- Profiles from ONAP oparent -->
777         <profile>
778             <id>generate-json</id>
779             <activation>
780                 <file>
781                     <exists>${swagger-properties}</exists>
782                 </file>
783                 <property>
784                     <name>swagger-sdk.generate-json</name>
785                 </property>
786             </activation>
787             <build>
788                 <plugins>
789                     <plugin>
790                         <groupId>org.codehaus.mojo</groupId>
791                         <artifactId>properties-maven-plugin</artifactId>
792                         <version>1.0.0</version>
793                         <executions>
794                             <execution>
795                                 <phase>initialize</phase>
796                                 <goals>
797                                     <goal>read-project-properties</goal>
798                                 </goals>
799                                 <configuration>
800                                     <files>
801                                         <file>${basedir}/src/main/resources/swagger.properties</file>
802                                     </files>
803                                 </configuration>
804                             </execution>
805                         </executions>
806                     </plugin>
807                     <plugin>
808                         <groupId>com.github.kongchen</groupId>
809                         <artifactId>swagger-maven-plugin</artifactId>
810                         <version>3.1.4</version>
811                         <configuration>
812                             <apiSources>
813                                 <apiSource>
814                                     <locations>${api-rest-package}</locations>
815                                     <schemes>http,https</schemes>
816                                     <host>${api-host-ip}:${api-host-port}</host>
817                                     <basePath>${api-base-path}</basePath>
818                                     <info>
819                                         <title>${api-title}</title>
820                                         <version>${api-version}</version>
821                                         <description>${api-description}</description>
822                                         <license>
823                                             <name>${api-license}</name>
824                                         </license>
825                                     </info>
826                                     <swaggerDirectory>${basedir}/src/main/resources</swaggerDirectory>
827                                 </apiSource>
828                             </apiSources>
829                         </configuration>
830                         <executions>
831                             <execution>
832                                 <phase>compile</phase>
833                                 <goals>
834                                     <goal>generate</goal>
835                                 </goals>
836                             </execution>
837                         </executions>
838                     </plugin>
839                     <plugin>
840                         <groupId>org.apache.maven.plugins</groupId>
841                         <artifactId>maven-install-plugin</artifactId>
842                         <version>2.3.1</version>
843                         <executions>
844                             <execution>
845                                 <id>install-file-id</id>
846                                 <phase>install</phase>
847                                 <goals>
848                                     <goal>install-file</goal>
849                                 </goals>
850                                 <configuration>
851                                     <file>${basedir}/src/main/resources/swagger.json</file>
852                                     <groupId>${project.groupId}</groupId>
853                                     <artifactId>${project.artifactId}-swagger-schema</artifactId>
854                                     <version>${project.version}</version>
855                                     <packaging>json</packaging>
856                                 </configuration>
857                             </execution>
858                         </executions>
859                     </plugin>
860                 </plugins>
861             </build>
862         </profile>
863         <profile>
864             <id>generate-sdk</id>
865             <activation>
866                 <file>
867                     <exists>${swagger-json}</exists>
868                 </file>
869                 <property>
870                     <name>swagger-sdk.generate-java-sdk</name>
871                 </property>
872             </activation>
873             <build>
874                 <plugins>
875                     <plugin>
876                         <groupId>org.apache.maven.plugins</groupId>
877                         <artifactId>maven-antrun-plugin</artifactId>
878                         <version>1.8</version>
879                         <executions>
880                             <execution>
881                                 <phase>initialize</phase>
882                                 <id>ant-create-script</id>
883                                 <configuration>
884                                     <exportAntProperties>true</exportAntProperties>
885                                     <tasks>
886                                         <taskdef resource="net/sf/antcontrib/antlib.xml" classpathref="maven.plugin.classpath"/>
887                                         <condition property="is_windows" value="true">
888                                             <os family="windows"/>
889                                         </condition>
890                                         <condition property="isLinux" value="true">
891                                             <os family="unix"/>
892                                         </condition>
893                                         <if>
894                                             <equals arg1="${is_windows}" arg2="true"/>
895                                             <then>
896                                                 <property name="swagger.sdk.script.file" value="generated-source-script.bat"/>
897                                                 <echo file="${project.build.directory}${file.separator}generated-source-script.bat" append="true" message="cd ${project.build.directory}${file.separator}generated-sources${line.separator}"/>
898                                                 <echo file="${project.build.directory}${file.separator}generated-source-script.bat" append="true" message="mvn clean install -Dmaven.test.skip=true${line.separator}"/>
899                                             </then>
900                                             <else>
901                                                 <property name="swagger.sdk.script.file" value="generated-source-script.sh"/>
902                                                 <echo file="${project.build.directory}${file.separator}generated-source-script.sh" append="true" message="cd ${project.build.directory}${file.separator}generated-sources${line.separator}"/>
903                                                 <echo file="${project.build.directory}${file.separator}generated-source-script.sh" append="true" message="mvn clean install -Dmaven.test.skip=true${line.separator}"/>
904                                                 <chmod file="${project.build.directory}${file.separator}generated-source-script.sh" perm="755"/>
905                                             </else>
906                                         </if>
907                                     </tasks>
908                                 </configuration>
909                                 <goals>
910                                     <goal>run</goal>
911                                 </goals>
912                             </execution>
913                         </executions>
914                         <dependencies>
915                             <dependency>
916                                 <groupId>ant-contrib</groupId>
917                                 <artifactId>ant-contrib</artifactId>
918                                 <version>1.0b3</version>
919                                 <exclusions>
920                                     <exclusion>
921                                         <groupId>ant</groupId>
922                                         <artifactId>ant</artifactId>
923                                     </exclusion>
924                                 </exclusions>
925                             </dependency>
926                         </dependencies>
927                     </plugin>
928                     <plugin>
929                         <groupId>io.swagger</groupId>
930                         <artifactId>swagger-codegen-maven-plugin</artifactId>
931                         <version>2.2.1</version>
932                         <executions>
933                             <execution>
934                                 <goals>
935                                     <goal>generate</goal>
936                                 </goals>
937                                 <configuration>
938                                     <inputSpec>${basedir}/src/main/resources/swagger.json</inputSpec>
939                                     <output>${project.build.directory}/generated-sources</output>
940                                     <language>java</language>
941                                     <configOptions>
942                                         <dateLibrary>joda</dateLibrary>
943                                     </configOptions>
944                                     <library>jersey2</library>
945                                     <groupId>${project.groupId}</groupId>
946                                     <artifactId>${project.artifactId}-java-sdk</artifactId>
947                                     <artifactVersion>${project.version}</artifactVersion>
948                                     <modelPackage>${project.groupId}.${project.artifactId}.client.model</modelPackage>
949                                     <apiPackage>${project.groupId}.${project.artifactId}.client.api</apiPackage>
950                                     <invokerPackage>${project.groupId}.${project.artifactId}.client.invoker</invokerPackage>
951                                 </configuration>
952                             </execution>
953                         </executions>
954                     </plugin>
955                     <plugin>
956                         <groupId>org.codehaus.mojo</groupId>
957                         <artifactId>exec-maven-plugin</artifactId>
958                         <version>1.5.0</version>
959                         <executions>
960                             <execution>
961                                 <id>swagger-generate-sources</id>
962                                 <phase>generate-sources</phase>
963                                 <goals>
964                                     <goal>exec</goal>
965                                 </goals>
966                                 <configuration>
967                                     <executable>${project.build.directory}${file.separator}${swagger.sdk.script.file}</executable>
968                                 </configuration>
969                             </execution>
970                         </executions>
971                     </plugin>
972                     <plugin>
973                         <groupId>org.apache.maven.plugins</groupId>
974                         <artifactId>maven-clean-plugin</artifactId>
975                         <version>3.0.0</version>
976                         <executions>
977                             <execution>
978                                 <id>clean-generated-files</id>
979                                 <phase>generate-sources</phase>
980                                 <goals>
981                                     <goal>clean</goal>
982                                 </goals>
983                                 <configuration>
984                                     <filesets>
985                                         <fileset>
986                                             <directory>${project.build.directory}/generated-sources</directory>
987                                         </fileset>
988                                     </filesets>
989                                 </configuration>
990                             </execution>
991                         </executions>
992                     </plugin>
993                 </plugins>
994             </build>
995             <dependencies>
996                 <dependency>
997                     <groupId>org.onap.msb.swagger-sdk</groupId>
998                     <artifactId>swagger-sdk</artifactId>
999                     <version>1.0.0</version>
1000                 </dependency>
1001             </dependencies>
1002         </profile>
1003         <profile>
1004             <!-- http://blog2.vorburger.ch/2016/06/improve-maven-build-speed-with-q.html
1005                  q = http://memory-alpha.wikia.com/wiki/Q ;)
1006
1007                  The Quick profile is used during incremental local development, when you want to "just get that JAR built",
1008                  which is very handy e.g. for fast hot reloading cycles in Karaf with bundle watch.  It (intentionally!) skips
1009                  tests, quality checks etc. which are great and useful to run before finally submitting changes to Gerrit, and
1010                  which all must run on Gerrit, but which are overhead during ongoing fast iterative local development.
1011
1012                  Note that the idea here is that your IDE will already have run quality checks such as e.g. Checkstyle
1013                  while you typed the code anyway.  Similarly, if you wrote a test, you'll probably already have compiled and run it
1014                  from your IDE, so when you want the OSGi bundle JAR for Karaf, ASAP, you typically don't want all that to run again.
1015               -->
1016             <id>q</id>
1017             <properties>
1018                 <skipTests>true</skipTests>
1019                 <skipPush>true</skipPush>
1020                 <docker.skip.push>true</docker.skip.push>
1021                 <!-- But NOT <maven.test.skip>true, as that's for compiling, not running, tests;
1022                      and that's usually quick.  Skipping test compilation with -Pq with maven.test.skip would be
1023                      particularly confusing when used in a project with maven-jar-plugin <goal>test-jar, so don't.)  -->
1024                 <skipIT>true</skipIT>
1025                 <skipITs>true</skipITs>
1026                 <skip.karaf.featureTest>true</skip.karaf.featureTest>
1027                 <jacoco.skip>true</jacoco.skip>
1028                 <maven.javadoc.skip>true</maven.javadoc.skip>
1029                 <maven.source.skip>true</maven.source.skip>
1030                 <checkstyle.skip>true</checkstyle.skip>
1031                 <findbugs.skip>true</findbugs.skip>
1032                 <spotbugs.skip>true</spotbugs.skip>
1033                 <pmd.skip>true</pmd.skip>
1034                 <cpd.skip>true</cpd.skip>
1035                 <maven.site.skip>true</maven.site.skip>
1036                 <invoker.skip>true</invoker.skip>
1037                 <enforcer.skip>true</enforcer.skip>
1038                 <duplicate-finder.skip>true</duplicate-finder.skip>
1039                 <mdsal.skip.verbose>true</mdsal.skip.verbose> <!-- Bug 6236 -->
1040                 <maven.gitcommitid.skip>true</maven.gitcommitid.skip>
1041                 <modernizer.skip>true</modernizer.skip>
1042                 <format.skipExecute>true</format.skipExecute>
1043                 <format.skipValidate>true</format.skipValidate>
1044             </properties>
1045         </profile>
1046         <profile>
1047             <id>sonar-jacoco-aggregate</id>
1048             <activation>
1049                 <property>
1050                     <name>onap.jacoco.aggregateFile</name>
1051                 </property>
1052             </activation>
1053             <build>
1054                 <plugins>
1055                     <plugin>
1056                         <groupId>org.jacoco</groupId>
1057                         <artifactId>jacoco-maven-plugin</artifactId>
1058                         <executions>
1059                             <execution>
1060                                 <id>merge</id>
1061                                 <goals>
1062                                     <goal>merge</goal>
1063                                 </goals>
1064                                 <phase>generate-resources</phase>
1065                                 <configuration>
1066                                     <destFile>${onap.jacoco.aggregateFile}</destFile>
1067                                     <fileSets>
1068                                         <fileSet>
1069                                             <directory>${project.basedir}</directory>
1070                                             <includes>
1071                                                 <include>**/target/code-coverage/*.exec</include>
1072                                             </includes>
1073                                         </fileSet>
1074                                     </fileSets>
1075                                 </configuration>
1076                             </execution>
1077                         </executions>
1078                     </plugin>
1079                 </plugins>
1080             </build>
1081         </profile>
1082         <!-- End of profiles from ONAP oparent -->
1083     </profiles>
1084 </project>