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