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>
5 <!-- PLEASE READ !!!!! This file is generated from ccsdk/parent/setup/src/main/template/pom-template.xml
6 Any updates needed should be made to that template and not to the generated
9 <groupId>org.opendaylight.odlparent</groupId>
10 <artifactId>odlparent</artifactId>
11 <version>7.0.7</version>
15 <groupId>org.onap.ccsdk.parent</groupId>
16 <artifactId>odlparent</artifactId>
17 <version>2.1.1-SNAPSHOT</version>
18 <packaging>pom</packaging>
20 <name>ONAP :: ${project.groupId} :: ${project.artifactId}</name>
21 <description>Root POM to be used in place of odlparent for CCSDK based projects</description>
22 <url>http://wiki.onap.org</url>
29 <url>https://jira.onap.org/</url>
31 <distributionManagement>
33 <id>ecomp-releases</id>
34 <url>${onap.nexus.release-url}</url>
37 <id>ecomp-snapshots</id>
38 <url>${onap.nexus.snapshot-url}</url>
40 </distributionManagement>
43 <!-- Sonar properties -->
44 <sonar.scanner.version>3.7.0.1746</sonar.scanner.version>
45 <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
46 <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
47 <!-- Default Sonar configuration -->
48 <sonar.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml,${project.reporting.outputDirectory}/jacoco-it/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
49 <!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
50 <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
52 <!-- Jacoco properties -->
53 <jacoco.version>0.8.5</jacoco.version>
55 <!-- properties from oparent -->
56 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
57 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
58 <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
59 <!-- sitePath may be overridden in the inheriting POM if desired -->
60 <sitePath>/content/sites/site/${project.groupId}/${project.artifactId}/${project.version}</sitePath>
62 <!-- If following file exist, auto-generation of swagger.json will be done -->
63 <swagger-properties>${basedir}/src/main/resources/swagger.properties</swagger-properties>
64 <!-- If following file exist, auto-generation of sdk will be done -->
65 <swagger-json>${basedir}/src/main/resources/swagger.json</swagger-json>
66 <!-- end of properties from oparent -->
68 <!-- ONAP repositories -->
69 <onap.nexus.host>nexus.onap.org</onap.nexus.host>
70 <onap.nexus.port>443</onap.nexus.port>
71 <onap.nexus.protocol>https</onap.nexus.protocol>
72 <onap.nexus.public-url>https://nexus.onap.org/content/groups/public</onap.nexus.public-url>
73 <onap.nexus.staging-url>https://nexus.onap.org/content/groups/staging</onap.nexus.staging-url>
74 <onap.nexus.release-url>https://nexus.onap.org/content/repositories/releases</onap.nexus.release-url>
75 <onap.nexus.snapshot-url>https://nexus.onap.org/content/repositories/snapshots</onap.nexus.snapshot-url>
76 <onap.nexus.staging.server-id>ecomp-staging</onap.nexus.staging.server-id>
77 <onap.nexus.staging.profile-id>176c31dfe190a</onap.nexus.staging.profile-id>
79 <!-- OpenDaylight repositories -->
80 <opendaylight.nexus.public-url>https://nexus.opendaylight.org/content/repositories/public/</opendaylight.nexus.public-url>
81 <opendaylight.nexus.snapshot-url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</opendaylight.nexus.snapshot-url>
83 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
84 <java.version>11</java.version>
85 <maven-surefire-plugin.version>3.0.0-M5</maven-surefire-plugin.version>
86 <maven-failsafe-plugin.version>3.0.0-M5</maven-failsafe-plugin.version>
87 <bundle.plugin.version>4.2.1</bundle.plugin.version>
88 <maven-compiler-plugin.version>3.8.1</maven-compiler-plugin.version>
89 <features.file>features.xml</features.file>
90 <jmxGeneratorPath>src/main/yang-gen-config</jmxGeneratorPath>
91 <salGeneratorPath>src/main/yang-gen-sal</salGeneratorPath>
92 <checkstyle.plugin.version>3.1.1</checkstyle.plugin.version>
93 <checkstyle.skip>true</checkstyle.skip>
94 <odlparent.spotbugs.enforce>false</odlparent.spotbugs.enforce>
96 <!-- logging-analytics versions -->
97 <logging-analytics.version>1.6.6</logging-analytics.version>
99 <!-- CCSDK component versions -->
100 <ccsdk.cds.version>1.1.1-SNAPSHOT</ccsdk.cds.version>
101 <ccsdk.features.version>1.1.1-SNAPSHOT</ccsdk.features.version>
102 <ccsdk.distribution.version>1.1.1-SNAPSHOT</ccsdk.distribution.version>
103 <ccsdk.sli.version>1.2.0-SNAPSHOT</ccsdk.sli.version>
104 <ccsdk.sli.core.version>${ccsdk.sli.version}</ccsdk.sli.core.version>
105 <ccsdk.sli.adaptors.version>${ccsdk.sli.version}</ccsdk.sli.adaptors.version>
106 <ccsdk.sli.northbound.version>${ccsdk.sli.version}</ccsdk.sli.northbound.version>
107 <ccsdk.sli.plugins.version>${ccsdk.sli.version}</ccsdk.sli.plugins.version>
108 <sdnctl.aai.service.version>${ccsdk.sli.version}</sdnctl.aai.service.version>
109 <sdnctl.dblib.version>${ccsdk.sli.version}</sdnctl.dblib.version>
110 <sdnctl.mdsal.resource.version>${ccsdk.sli.version}</sdnctl.mdsal.resource.version>
111 <sdnctl.slipluginutils.version>${ccsdk.sli.version}</sdnctl.slipluginutils.version>
113 <!-- Support libraries used by OpenDaylight -->
114 <odl.controller.mdsal.version>1.12.1</odl.controller.mdsal.version>
115 <odl.mdsal.version>6.0.7</odl.mdsal.version>
116 <odl.mdsal.model.version>6.0.7</odl.mdsal.model.version>
117 <odl.netconf.restconf.version>1.12.1</odl.netconf.restconf.version>
118 <odl.netconf.netconf.version>1.9.1</odl.netconf.netconf.version>
119 <odl.netconf.sal.rest.docgen.version>1.12.1</odl.netconf.sal.rest.docgen.version>
121 <!-- Used by aaa, vtn -->
122 <commons.codec.version>1.15</commons.codec.version>
123 <!-- Used by netconf, ovsdb -->
124 <commons.lang3.version>3.8.1</commons.lang3.version>
125 <!-- Used by sfc, snmp4sdn; see also affinity, toolkit -->
126 <commons.lang.version>2.6</commons.lang.version>
127 <!-- Used by neutron; see also controller, vtn -->
128 <commons.net.version>3.7</commons.net.version>
129 <!-- Used by neutron -->
130 <eclipse.persistence.version>2.7.7</eclipse.persistence.version>
132 <felix.dependencymanager.version>4.4.1</felix.dependencymanager.version>
133 <!-- Used by lacp, netconf, ovsdb, sfc, toolkit; see also vtn -->
134 <gson.version>2.8.5</gson.version>
135 <!-- Used by aaa, dlux, persistence, snmp4sdn, sxp -->
136 <guava.version>28.2-jre</guava.version>
137 <!-- Used by aaa, alto, netconf, ovsdb, sfc; see also affinity, defense4all,
138 integration/distribution, snmp4sdn, toolkit, ttp -->
139 <jackson.version>2.10.4</jackson.version>
140 <!-- Used by snmp4sdn, yangtools -->
141 <javassist.version>3.27.0-GA</javassist.version>
143 <!-- FIXME remove all dependencies for jersey 1.17 after migration all projects -->
144 <!-- Used by aaa, alto, netconf, neutron, sfc; see also affinity, defense4all, snmp4sdn, toolkit -->
145 <jersey.version>2.27</jersey.version>
147 <jersey.client.version>2.27</jersey.client.version>
149 <!-- New packages for jersey migration 1.17 to 2.8 -->
150 <!-- appache.geronimo.bundle for DocGen -->
151 <!-- Used by aaa, iotdm, netconf, ovsdb, sfc -->
152 <org.json.version>20131018</org.json.version>
154 <!-- Used everywhere -->
155 <junit.version>4.13</junit.version>
156 <!-- Used by coretutorials, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
157 <logback.version>1.11.6</logback.version>
158 <!-- Used by nic, sfc, sxp, tsdr -->
159 <mockito.version>3.3.3</mockito.version>
160 <!-- Used by bgpcep, netconf, ovsdb, sxp; see also opendove, toolkit -->
161 <netty.version>4.1.51.Final</netty.version>
162 <!-- Used by openflowjava, persistence, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
163 <slf4j.version>1.7.29</slf4j.version>
164 <!-- Used in integration/distribution; see also affinity, snmp4sdn, toolkit, tsdr, ttp -->
165 <spring.version>4.3.25.RELEASE</spring.version>
167 <!-- Extra support libraries used by SDN-C -->
168 <jvnet.jaxb2.version>0.6.4</jvnet.jaxb2.version>
169 <antlr.version>4.8.1</antlr.version>
171 <eelf.maven.plugin.version>1.0.0</eelf.maven.plugin.version>
173 <!-- Managed dependency versions -->
174 <apache.httpcomponents.core.version>4.4.12</apache.httpcomponents.core.version>
175 <apache.httpcomponents.client.version>4.5.10</apache.httpcomponents.client.version>
176 <derby.version>10.14.2.0</derby.version>
177 <eelf.version>1.0.0</eelf.version>
178 <grpc.version>1.21.1</grpc.version>
179 <mariadb.connector.version>2.4.4</mariadb.connector.version>
180 <mariadb4j.version>2.4.0</mariadb4j.version>
181 <testng.version>6.14.3</testng.version>
182 <tomcat-jdbc.version>9.0.30</tomcat-jdbc.version>
183 <jetty.version>9.4.28.v20200408</jetty.version>
184 <skip.karaf.featureTest>true</skip.karaf.featureTest>
185 <dependency-list.file>direct-dependencies.txt</dependency-list.file>
188 <dependencyManagement>
190 <!-- Note: If value in BOM conflicts with value inherited from
191 parent pom, inherited value takes precedence. This seems more like
192 a bug than a feature, but this is how maven 3.6 works -->
194 <groupId>org.onap.ccsdk.parent</groupId>
195 <artifactId>dependencies-odl-bom</artifactId>
196 <version>2.1.1-SNAPSHOT</version>
198 <scope>import</scope>
201 <groupId>org.onap.ccsdk.parent</groupId>
202 <artifactId>dependencies-bom</artifactId>
203 <version>2.1.1-SNAPSHOT</version>
205 <scope>import</scope>
208 <groupId>org.springframework.boot</groupId>
209 <artifactId>spring-boot-dependencies</artifactId>
210 <version>2.3.8.RELEASE</version>
211 <scope>import</scope>
215 <groupId>org.onap.logging-analytics</groupId>
216 <artifactId>logging-slf4j</artifactId>
217 <version>${logging-analytics.version}</version>
220 <groupId>org.onap.logging-analytics</groupId>
221 <artifactId>logging-filter-base</artifactId>
222 <version>${logging-analytics.version}</version>
225 <groupId>junit</groupId>
226 <artifactId>junit</artifactId>
227 <version>${junit.version}</version>
231 </dependencyManagement>
235 <groupId>javax.annotation</groupId>
236 <artifactId>javax.annotation-api</artifactId>
237 <version>1.3.2</version>
244 <url>${onap.nexus.public-url}</url>
246 <enabled>true</enabled>
247 <updatePolicy>never</updatePolicy>
250 <enabled>true</enabled>
251 <updatePolicy>always</updatePolicy>
255 <id>onap-staging</id>
256 <url>${onap.nexus.staging-url}</url>
258 <enabled>true</enabled>
259 <updatePolicy>never</updatePolicy>
262 <enabled>true</enabled>
263 <updatePolicy>always</updatePolicy>
267 <id>ecomp-release</id>
268 <name>onap-repository-releases</name>
269 <url>${onap.nexus.release-url}</url>
271 <enabled>true</enabled>
272 <updatePolicy>never</updatePolicy>
275 <enabled>false</enabled>
279 <id>ecomp-snapshot</id>
280 <name>onap-repository-snapshots</name>
281 <url>${onap.nexus.snapshot-url}</url>
283 <enabled>false</enabled>
286 <enabled>true</enabled>
290 <id>opendaylight-mirror</id>
291 <name>opendaylight-mirror</name>
292 <url>${opendaylight.nexus.public-url}</url>
294 <enabled>true</enabled>
295 <updatePolicy>never</updatePolicy>
298 <enabled>false</enabled>
302 <id>opendaylight-snapshot</id>
303 <name>opendaylight-snapshot</name>
304 <url>${opendaylight.nexus.snapshot-url}</url>
306 <enabled>false</enabled>
309 <enabled>true</enabled>
317 <url>${onap.nexus.public-url}</url>
319 <enabled>true</enabled>
322 <enabled>true</enabled>
326 <id>onap-staging</id>
327 <url>${onap.nexus.staging-url}</url>
329 <enabled>true</enabled>
332 <enabled>true</enabled>
336 <id>onap-snapshot</id>
337 <url>${onap.nexus.snapshot-url}</url>
339 <enabled>false</enabled>
342 <enabled>true</enabled>
346 <id>opendaylight-mirror</id>
347 <name>opendaylight-mirror</name>
348 <url>${opendaylight.nexus.public-url}</url>
350 <enabled>true</enabled>
351 <updatePolicy>never</updatePolicy>
354 <enabled>false</enabled>
358 <id>opendaylight-snapshot</id>
359 <name>opendaylight-snapshot</name>
360 <url>${opendaylight.nexus.snapshot-url}</url>
362 <enabled>false</enabled>
365 <enabled>true</enabled>
368 <!-- Black Duck plugin dependencies -->
371 <name>JCenter Repository</name>
372 <url>http://jcenter.bintray.com</url>
377 <name>Restlet Repository</name>
378 <url>http://maven.restlet.com</url>
380 </pluginRepositories>
385 <!-- Plugins from ONAP version (parent of oparent) -->
387 <groupId>org.apache.maven.plugins</groupId>
388 <artifactId>maven-deploy-plugin</artifactId>
389 <!-- This version supports the "deployAtEnd" parameter -->
390 <version>2.8</version>
396 <groupId>org.apache.maven.plugins</groupId>
397 <artifactId>maven-site-plugin</artifactId>
398 <version>3.6</version>
401 <groupId>org.apache.maven.wagon</groupId>
402 <artifactId>wagon-webdav-jackrabbit</artifactId>
403 <version>2.10</version>
408 <groupId>org.apache.maven.plugins</groupId>
409 <artifactId>maven-enforcer-plugin</artifactId>
410 <version>3.0.0-M2</version>
413 <id>enforce-property</id>
420 <property>onap.nexus.url</property>
421 <message>You must set a onap.nexus.url property in your
422 ~/.m2/settings.xml. See oparent/settings.xml for an example.
430 <id>enforce-no-snapshots</id>
437 <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
438 <onlyWhenRelease>true</onlyWhenRelease>
440 </requireReleaseDeps>
445 <id>enforce-maven</id>
453 </requireJavaVersion>
454 <requireMavenVersion>
455 <version>[3.5.0,)</version>
456 </requireMavenVersion>
461 <id>enforce-banned-dependencies</id>
468 <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
470 <exclude>org.mockito:mockito-all</exclude>
471 <!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
473 </bannedDependencies>
480 <!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
482 <groupId>org.sonarsource.scanner.maven</groupId>
483 <artifactId>sonar-maven-plugin</artifactId>
484 <version>${sonar.scanner.version}</version>
486 <!-- end of plugins from ONAP version (parent of oparent) -->
487 <!-- Plugins from ONAP oparent -->
489 <groupId>org.apache.maven.plugins</groupId>
490 <artifactId>maven-surefire-plugin</artifactId>
491 <version>${maven-surefire-plugin.version}</version>
493 <!-- Sets the VM argument line used when unit tests are run. -->
494 <argLine>${surefireArgLine}</argLine>
495 <!-- Excludes integration tests when unit tests are run. -->
497 <exclude>**/IT*.java</exclude>
502 <groupId>org.apache.maven.plugins</groupId>
503 <artifactId>maven-failsafe-plugin</artifactId>
504 <version>${maven-failsafe-plugin.version}</version>
506 <!-- Ensures that both integration-test and verify goals of the Failsafe
507 Maven plugin are executed. -->
509 <id>integration-tests</id>
511 <goal>integration-test</goal>
515 <!-- Sets the VM argument line used when integration tests are run. -->
516 <argLine>${failsafeArgLine}</argLine>
522 <!-- End of plugins from ONAP oparent -->
524 <groupId>org.codehaus.mojo</groupId>
525 <artifactId>properties-maven-plugin</artifactId>
526 <version>1.0.0</version>
530 <goal>set-system-properties</goal>
535 <name>maven.wagon.http.ssl.allowall</name>
536 <value>${ssl.allowall}</value>
539 <name>maven.wagon.http.ssl.insecure</name>
540 <value>${ssl.insecure}</value>
549 <groupId>org.codehaus.mojo</groupId>
550 <artifactId>versions-maven-plugin</artifactId>
551 <version>2.5</version>
553 <processAllModules>true</processAllModules>
557 <artifactId>maven-scm-plugin</artifactId>
558 <version>1.8.1</version>
560 <tag>${project.artifactId}-${project.version}</tag>
564 <groupId>com.github.ferstl</groupId>
565 <artifactId>depgraph-maven-plugin</artifactId>
566 <version>3.3.0</version>
568 <graphFormat>text</graphFormat>
569 <outputFileName>${dependency-list.file}</outputFileName>
570 <outputDirectory>${project.basedir}</outputDirectory>
571 <transitiveExcludes>*</transitiveExcludes>
572 <showVersions>true</showVersions>
573 <showGroupIds>true</showGroupIds>
577 <groupId>de.jacks-it-lab</groupId>
578 <artifactId>frontend-maven-plugin</artifactId>
579 <version>1.7.2</version>
582 <groupId>com.github.alexcojocaru</groupId>
583 <artifactId>elasticsearch-maven-plugin</artifactId>
584 <version>6.16</version>
586 <version>7.1.1</version>
590 <groupId>org.apache.maven.plugins</groupId>
591 <artifactId>maven-javadoc-plugin</artifactId>
592 <version>3.2.0</version>
594 <failOnError>false</failOnError>
598 <artifactId>maven-checkstyle-plugin</artifactId>
601 <phase>process-sources</phase>
606 <failOnViolation>false</failOnViolation>
613 <groupId>com.github.spotbugs</groupId>
614 <artifactId>spotbugs-maven-plugin</artifactId>
615 <version>3.1.12.2</version>
618 <id>analyze-compile</id>
619 <phase>compile</phase>
626 <groupId>jp.skypencil.findbugs.slf4j</groupId>
627 <artifactId>bug-pattern</artifactId>
628 <version>1.5.0</version>
632 <threshold>Low</threshold>
633 <failOnError>false</failOnError>
635 <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
636 <xmlOutput>true</xmlOutput>
637 <findbugsXmlOutputDirectory>/home/jack/onap/onap-sdnr/features/sdnr/wt-aluminium-sr0-2/target/wt/common/target-ide/spotbugs</findbugsXmlOutputDirectory>
643 <groupId>com.github.spotbugs</groupId>
644 <artifactId>spotbugs</artifactId>
645 <version>3.1.12</version>
646 <scope>compile</scope>
649 <groupId>org.opendaylight.odlparent</groupId>
650 <artifactId>spotbugs</artifactId>
651 <version>7.0.5</version>
652 <scope>compile</scope>
655 <groupId>org.slf4j</groupId>
656 <artifactId>slf4j-simple</artifactId>
657 <version>1.8.0-beta2</version>
658 <scope>compile</scope>
664 <groupId>jp.skypencil.findbugs.slf4j</groupId>
665 <artifactId>bug-pattern</artifactId>
666 <version>1.5.0</version>
670 <threshold>Low</threshold>
671 <failOnError>false</failOnError>
673 <excludeFilterFile>spotbugs-exclude.xml</excludeFilterFile>
674 <xmlOutput>true</xmlOutput>
675 <findbugsXmlOutputDirectory>/home/jack/onap/onap-sdnr/features/sdnr/wt-aluminium-sr0-2/target/wt/common/target-ide/spotbugs</findbugsXmlOutputDirectory>
679 <artifactId>maven-checkstyle-plugin</artifactId>
680 <version>${checkstyle.plugin.version}</version>
683 <groupId>org.onap.oparent</groupId>
684 <artifactId>checkstyle</artifactId>
685 <version>1.2.2</version>
690 <id>check-license</id>
694 <phase>process-sources</phase>
696 <configLocation>onap-checkstyle/check-license.xml</configLocation>
697 <includeResources>false</includeResources>
698 <includeTestSourceDirectory>true</includeTestSourceDirectory>
699 <includeTestResources>false</includeTestResources>
701 <directory>${project.build.sourceDirectory}</directory>
705 <consoleOutput>true</consoleOutput>
706 <failOnViolation>false</failOnViolation>
710 <id>onap-java-style</id>
714 <phase>process-sources</phase>
716 <!-- Use Google Java Style Guide: https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml
717 with minor changes -->
718 <configLocation>onap-checkstyle/onap-java-style.xml</configLocation>
719 <!-- <sourceDirectory> is needed so that checkstyle ignores the generated sources directory -->
721 <directory>${project.build.sourceDirectory}/src/main/java</directory>
723 <includeResources>true</includeResources>
724 <includeTestSourceDirectory>true</includeTestSourceDirectory>
725 <includeTestResources>true</includeTestResources>
728 <consoleOutput>true</consoleOutput>
729 <failOnViolation>false</failOnViolation>
738 <!-- Plugins from oparent version (parent of oparent) -->
740 <groupId>org.apache.maven.plugins</groupId>
741 <artifactId>maven-deploy-plugin</artifactId>
744 <groupId>org.apache.maven.plugins</groupId>
745 <artifactId>maven-site-plugin</artifactId>
750 <groupId>org.apache.maven.plugins</groupId>
751 <artifactId>maven-checkstyle-plugin</artifactId>
752 <version>${checkstyle.plugin.version}</version>
758 <!-- end of plugins from oparent version (parent of oparent) -->
760 <!-- Plugins from oparent -->
762 <artifactId>maven-checkstyle-plugin</artifactId>
763 <version>${checkstyle.plugin.version}</version>
766 <groupId>org.onap.oparent</groupId>
767 <artifactId>checkstyle</artifactId>
768 <version>1.2.2</version>
773 <id>onap-license</id>
777 <phase>process-sources</phase>
779 <configLocation>onap-checkstyle/check-license.xml</configLocation>
780 <includeResources>false</includeResources>
781 <includeTestSourceDirectory>true</includeTestSourceDirectory>
782 <includeTestResources>false</includeTestResources>
784 <directory>${project.build.sourceDirectory}</directory>
788 <consoleOutput>true</consoleOutput>
789 <failOnViolation>false</failOnViolation>
793 <id>onap-java-style</id>
797 <phase>process-sources</phase>
799 <!-- Use Google Java Style Guide: https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml
800 with minor changes -->
801 <configLocation>onap-checkstyle/onap-java-style.xml</configLocation>
802 <!-- <sourceDirectory> is needed so that checkstyle ignores the generated sources directory -->
804 <directory>${project.build.sourceDirectory}/src/main/java</directory>
806 <includeResources>true</includeResources>
807 <includeTestSourceDirectory>true</includeTestSourceDirectory>
808 <includeTestResources>true</includeTestResources>
811 <consoleOutput>true</consoleOutput>
812 <failOnViolation>false</failOnViolation>
818 <groupId>org.codehaus.mojo</groupId>
819 <artifactId>build-helper-maven-plugin</artifactId>
820 <version>1.12</version>
822 <!-- Jacoco / Sonar -->
824 <groupId>org.jacoco</groupId>
825 <artifactId>jacoco-maven-plugin</artifactId>
826 <version>${jacoco.version}</version>
829 <id>pre-unit-test</id>
831 <goal>prepare-agent</goal>
834 <!-- Sets the path to the file which contains the execution data. -->
835 <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
836 <!-- Sets the name of the property containing the settings for JaCoCo runtime agent. -->
837 <propertyName>surefireArgLine</propertyName>
840 <!-- Ensures that the code coverage report for unit tests is created after unit tests have been run. -->
842 <id>post-unit-test</id>
848 <!-- Sets the path to the file which contains the execution data. -->
849 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
850 <!-- Sets the output directory for the code coverage report. -->
851 <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
855 <id>pre-integration-test</id>
856 <phase>pre-integration-test</phase>
858 <goal>prepare-agent</goal>
861 <!-- Sets the path to the file which contains the execution data. -->
862 <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
863 <!-- Sets the name of the property containing the settings for JaCoCo runtime agent. -->
864 <propertyName>failsafeArgLine</propertyName>
867 <!-- Ensures that the code coverage report for integration tests after integration tests have been run. -->
869 <id>post-integration-test</id>
870 <phase>post-integration-test</phase>
875 <!-- Sets the path to the file which contains the execution data. -->
876 <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
877 <!-- Sets the output directory for the code coverage report. -->
878 <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>
882 <id>default-prepare-agent</id>
884 <goal>prepare-agent</goal>
888 <id>default-report</id>
889 <phase>prepare-package</phase>
895 <id>default-check</id>
902 <element>PACKAGE</element>
905 <counter>COMPLEXITY</counter>
906 <value>COVEREDRATIO</value>
907 <minimum>0.0</minimum>
917 <groupId>org.apache.maven.plugins</groupId>
918 <artifactId>maven-surefire-plugin</artifactId>
921 <groupId>org.apache.maven.plugins</groupId>
922 <artifactId>maven-failsafe-plugin</artifactId>
924 <!-- end of plugins from oparent -->
926 <groupId>org.apache.maven.plugins</groupId>
927 <artifactId>maven-javadoc-plugin</artifactId>
930 <id>attach-javadocs</id>
935 <additionalparam>-Xdoclint:none</additionalparam>
941 <artifactId>maven-enforcer-plugin</artifactId>
942 <version>3.0.0-M2</version>
945 <id>enforce-property</id>
952 <property>onap.nexus.url</property>
953 <message>You must set a onap.nexus.url property in your
954 ~/.m2/settings.xml. See oparent/settings.xml for an example.
962 <id>enforce-no-snapshots</id>
969 <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
970 <onlyWhenRelease>true</onlyWhenRelease>
972 </requireReleaseDeps>
977 <id>enforce-maven</id>
984 <version>1.8.0</version>
985 </requireJavaVersion>
986 <requireMavenVersion>
987 <version>[3.5.0,)</version>
988 </requireMavenVersion>
993 <id>enforce-banned-dependencies</id>
1000 <message>Please always use mockito-core instead of mockito-all (see https://bugs.opendaylight.org/show_bug.cgi?id=7662), and spotbugs:annotations instead of findbugs:annotations</message>
1002 <exclude>org.mockito:mockito-all</exclude>
1003 <!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
1005 </bannedDependencies>
1013 <groupId>pl.project13.maven</groupId>
1014 <artifactId>git-commit-id-plugin</artifactId>
1015 <version>4.0.0</version>
1017 <commitIdGenerationMode>full</commitIdGenerationMode>
1018 <includeOnlyProperties>
1019 <includeOnlyProperty>^git.build.(time|version)$</includeOnlyProperty>
1020 <includeOnlyProperty>^git.commit.id.(abbrev|full)$</includeOnlyProperty>
1021 </includeOnlyProperties>
1030 <artifactId>maven-javadoc-plugin</artifactId>
1032 <failOnError>false</failOnError>
1033 <additionalparam>-Xdoclint:none</additionalparam>
1040 <!-- Profiles from ONAP oparent -->
1042 <id>generate-json</id>
1045 <exists>${swagger-properties}</exists>
1048 <name>swagger-sdk.generate-json</name>
1054 <groupId>org.codehaus.mojo</groupId>
1055 <artifactId>properties-maven-plugin</artifactId>
1056 <version>1.0.0</version>
1059 <phase>initialize</phase>
1061 <goal>read-project-properties</goal>
1065 <file>${basedir}/src/main/resources/swagger.properties</file>
1072 <groupId>com.github.kongchen</groupId>
1073 <artifactId>swagger-maven-plugin</artifactId>
1074 <version>3.1.4</version>
1078 <locations>${api-rest-package}</locations>
1079 <schemes>http,https</schemes>
1080 <host>${api-host-ip}:${api-host-port}</host>
1081 <basePath>${api-base-path}</basePath>
1083 <title>${api-title}</title>
1084 <version>${api-version}</version>
1085 <description>${api-description}</description>
1087 <name>${api-license}</name>
1090 <swaggerDirectory>${basedir}/src/main/resources</swaggerDirectory>
1096 <phase>compile</phase>
1098 <goal>generate</goal>
1104 <groupId>org.apache.maven.plugins</groupId>
1105 <artifactId>maven-install-plugin</artifactId>
1106 <version>2.3.1</version>
1109 <id>install-file-id</id>
1110 <phase>install</phase>
1112 <goal>install-file</goal>
1115 <file>${basedir}/src/main/resources/swagger.json</file>
1116 <groupId>${project.groupId}</groupId>
1117 <artifactId>${project.artifactId}-swagger-schema</artifactId>
1118 <version>${project.version}</version>
1119 <packaging>json</packaging>
1128 <id>generate-sdk</id>
1131 <exists>${swagger-json}</exists>
1134 <name>swagger-sdk.generate-java-sdk</name>
1140 <groupId>org.apache.maven.plugins</groupId>
1141 <artifactId>maven-antrun-plugin</artifactId>
1142 <version>1.8</version>
1145 <phase>initialize</phase>
1146 <id>ant-create-script</id>
1148 <exportAntProperties>true</exportAntProperties>
1150 <taskdef resource="net/sf/antcontrib/antlib.xml" classpathref="maven.plugin.classpath"/>
1151 <condition property="is_windows" value="true">
1152 <os family="windows"/>
1154 <condition property="isLinux" value="true">
1158 <equals arg1="${is_windows}" arg2="true"/>
1160 <property name="swagger.sdk.script.file" value="generated-source-script.bat"/>
1161 <echo file="${project.build.directory}${file.separator}generated-source-script.bat" append="true"
1162 message="cd ${project.build.directory}${file.separator}generated-sources${line.separator}"/>
1163 <echo file="${project.build.directory}${file.separator}generated-source-script.bat" append="true"
1164 message="mvn clean install -Dmaven.test.skip=true${line.separator}"/>
1167 <property name="swagger.sdk.script.file" value="generated-source-script.sh"/>
1168 <echo file="${project.build.directory}${file.separator}generated-source-script.sh" append="true"
1169 message="cd ${project.build.directory}${file.separator}generated-sources${line.separator}"/>
1170 <echo file="${project.build.directory}${file.separator}generated-source-script.sh" append="true"
1171 message="mvn clean install -Dmaven.test.skip=true${line.separator}"/>
1172 <chmod file="${project.build.directory}${file.separator}generated-source-script.sh" perm="755"/>
1184 <groupId>ant-contrib</groupId>
1185 <artifactId>ant-contrib</artifactId>
1186 <version>1.0b3</version>
1189 <groupId>ant</groupId>
1190 <artifactId>ant</artifactId>
1197 <groupId>io.swagger</groupId>
1198 <artifactId>swagger-codegen-maven-plugin</artifactId>
1199 <version>2.2.1</version>
1203 <goal>generate</goal>
1206 <inputSpec>${basedir}/src/main/resources/swagger.json</inputSpec>
1207 <output>${project.build.directory}/generated-sources</output>
1208 <language>java</language>
1210 <dateLibrary>joda</dateLibrary>
1212 <library>jersey2</library>
1213 <groupId>${project.groupId}</groupId>
1214 <artifactId>${project.artifactId}-java-sdk</artifactId>
1215 <artifactVersion>${project.version}</artifactVersion>
1216 <modelPackage>${project.groupId}.${project.artifactId}.client.model</modelPackage>
1217 <apiPackage>${project.groupId}.${project.artifactId}.client.api</apiPackage>
1218 <invokerPackage>${project.groupId}.${project.artifactId}.client.invoker</invokerPackage>
1224 <groupId>org.codehaus.mojo</groupId>
1225 <artifactId>exec-maven-plugin</artifactId>
1226 <version>1.5.0</version>
1229 <id>swagger-generate-sources</id>
1230 <phase>generate-sources</phase>
1235 <executable>${project.build.directory}${file.separator}${swagger.sdk.script.file}</executable>
1241 <groupId>org.apache.maven.plugins</groupId>
1242 <artifactId>maven-clean-plugin</artifactId>
1243 <version>3.0.0</version>
1246 <id>clean-generated-files</id>
1247 <phase>generate-sources</phase>
1254 <directory>${project.build.directory}/generated-sources</directory>
1265 <groupId>org.onap.msb.swagger-sdk</groupId>
1266 <artifactId>swagger-sdk</artifactId>
1267 <version>1.0.0</version>
1272 <id>sonar-jacoco-aggregate</id>
1275 <name>onap.jacoco.aggregateFile</name>
1281 <groupId>org.jacoco</groupId>
1282 <artifactId>jacoco-maven-plugin</artifactId>
1289 <phase>generate-resources</phase>
1291 <destFile>${onap.jacoco.aggregateFile}</destFile>
1294 <directory>${project.basedir}</directory>
1296 <include>**/target/code-coverage/*.exec</include>
1307 <!-- End of profiles from ONAP oparent -->
1310 <id>yang-compile</id>
1313 <exists>src/main/yang</exists>
1319 <groupId>org.opendaylight.yangtools</groupId>
1320 <artifactId>yang-maven-plugin</artifactId>
1321 <version>5.0.5</version>
1324 <groupId>org.opendaylight.mdsal</groupId>
1325 <artifactId>maven-sal-api-gen-plugin</artifactId>
1326 <version>${odl.mdsal.model.version}</version>
1328 <scope>compile</scope>
1331 <groupId>org.opendaylight.netconf</groupId>
1332 <artifactId>sal-rest-docgen-maven</artifactId>
1333 <version>${odl.netconf.sal.rest.docgen.version}</version>
1341 <goal>generate-sources</goal>
1344 <yangFilesRootDir>${yang.file.directory}</yangFilesRootDir>
1347 <codeGeneratorClass>org.opendaylight.mdsal.binding.maven.api.gen.plugin.CodeGeneratorImpl</codeGeneratorClass>
1348 <outputBaseDir>${salGeneratorPath}</outputBaseDir>
1352 <codeGeneratorClass>org.opendaylight.netconf.sal.rest.doc.maven.StaticDocGenerator</codeGeneratorClass>
1353 <outputBaseDir>target/swagger</outputBaseDir>
1357 <inspectDependencies>true</inspectDependencies>