1 <?xml version="1.0" encoding="UTF-8"?>
3 ################################################################################
4 # Copyright 2019 highstreet technologies and others
6 # Licensed under the Apache License, Version 2.0 (the "License");
7 # you may not use this file except in compliance with the License.
8 # You may obtain a copy of the License at
10 # http://www.apache.org/licenses/LICENSE-2.0
12 # Unless required by applicable law or agreed to in writing, software
13 # distributed under the License is distributed on an "AS IS" BASIS,
14 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15 # See the License for the specific language governing permissions and
16 # limitations under the License.
19 <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">
20 <modelVersion>4.0.0</modelVersion>
23 <groupId>org.opendaylight.odlparent</groupId>
24 <artifactId>odlparent-lite</artifactId>
25 <version>5.0.7</version>
29 <groupId>org.o-ran-sc.oam.features.parent</groupId>
30 <artifactId>odlparent-lite</artifactId>
31 <version>2.0.0-SNAPSHOT</version>
32 <packaging>pom</packaging>
34 <name>o-ran-sc features odlparent-lite</name>
36 <description>Root POM to be used in place of odlparent for CCSDK based projects</description>
37 <url>http://wiki.o-ran-sc.org</url>
44 <url>https://jira.o-ran-sc.org/</url>
46 <distributionManagement>
48 <id>ecomp-releases</id>
49 <url>${onap.nexus.release-url}</url>
52 <id>ecomp-snapshots</id>
53 <url>${onap.nexus.snapshot-url}</url>
55 </distributionManagement>
57 <!-- Sonar properties -->
58 <sonar.scanner.version>3.7.0.1746</sonar.scanner.version>
59 <sonar-jacoco-listeners.version>3.2</sonar-jacoco-listeners.version>
60 <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
61 <!-- Default Sonar configuration -->
62 <sonar.coverage.jacoco.xmlReportPaths>${project.reporting.outputDirectory}/jacoco-ut/jacoco.xml,${project.reporting.outputDirectory}/jacoco-it/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
63 <!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
64 <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**,**/pax/**</sonar.exclusions>
66 <!-- Jacoco properties -->
67 <jacoco.version>0.8.5</jacoco.version>
69 <!-- properties from oparent -->
70 <maven.compiler.source>8</maven.compiler.source>
71 <maven.compiler.target>8</maven.compiler.target>
72 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
73 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
74 <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
75 <!-- sitePath may be overridden in the inheriting POM if desired -->
76 <sitePath>/content/sites/site/${project.groupId}/${project.artifactId}/${project.version}</sitePath>
78 <!-- If following file exist, auto-generation of swagger.json will be done -->
79 <swagger-properties>${basedir}/src/main/resources/swagger.properties</swagger-properties>
80 <!-- If following file exist, auto-generation of sdk will be done -->
81 <swagger-json>${basedir}/src/main/resources/swagger.json</swagger-json>
82 <!-- end of properties from oparent -->
84 <!-- ONAP repositories -->
85 <onap.nexus.host>nexus.onap.org</onap.nexus.host>
86 <onap.nexus.port>443</onap.nexus.port>
87 <onap.nexus.protocol>https</onap.nexus.protocol>
88 <onap.nexus.public-url>https://nexus.onap.org/content/groups/public</onap.nexus.public-url>
89 <onap.nexus.staging-url>https://nexus.onap.org/content/groups/staging</onap.nexus.staging-url>
90 <onap.nexus.release-url>https://nexus.onap.org/content/repositories/releases</onap.nexus.release-url>
91 <onap.nexus.snapshot-url>https://nexus.onap.org/content/repositories/snapshots</onap.nexus.snapshot-url>
92 <onap.nexus.staging.server-id>ecomp-staging</onap.nexus.staging.server-id>
93 <onap.nexus.staging.profile-id>176c31dfe190a</onap.nexus.staging.profile-id>
95 <!-- OpenDaylight repositories -->
96 <opendaylight.nexus.public-url>https://nexus.opendaylight.org/content/repositories/public/</opendaylight.nexus.public-url>
97 <opendaylight.nexus.snapshot-url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</opendaylight.nexus.snapshot-url>
99 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
100 <java.version.source>8</java.version.source>
101 <java.version.target>8</java.version.target>
102 <bundle.plugin.version>2.5.0</bundle.plugin.version>
103 <maven.compile.plugin.version>2.5.1</maven.compile.plugin.version>
104 <features.file>features.xml</features.file>
105 <jmxGeneratorPath>src/main/yang-gen-config</jmxGeneratorPath>
106 <salGeneratorPath>src/main/yang-gen-sal</salGeneratorPath>
107 <checkstyle.skip>true</checkstyle.skip>
109 <!-- logging-analytics versions -->
110 <logging-analytics.version>1.6.6</logging-analytics.version>
112 <!-- CCSDK component versions -->
113 <ccsdk.cds.version>1.0.0-SNAPSHOT</ccsdk.cds.version>
114 <ccsdk.features.version>1.0.0-SNAPSHOT</ccsdk.features.version>
115 <ccsdk.sli.core.version>1.0.0-SNAPSHOT</ccsdk.sli.core.version>
116 <ccsdk.sli.adaptors.version>1.0.0-SNAPSHOT</ccsdk.sli.adaptors.version>
117 <ccsdk.sli.northbound.version>1.0.0-SNAPSHOT</ccsdk.sli.northbound.version>
118 <ccsdk.sli.plugins.version>1.0.0-SNAPSHOT</ccsdk.sli.plugins.version>
119 <ccsdk.distribution.version>1.0.0-SNAPSHOT</ccsdk.distribution.version>
120 <sdnctl.sli.version>${ccsdk.sli.core.version}</sdnctl.sli.version>
121 <sdnctl.aai.service.version>${ccsdk.sli.adaptors.version}</sdnctl.aai.service.version>
122 <sdnctl.dblib.version>${ccsdk.sli.core.version}</sdnctl.dblib.version>
123 <sdnctl.mdsal.resource.version>${ccsdk.sli.adaptors.version}</sdnctl.mdsal.resource.version>
124 <sdnctl.slipluginutils.version>${ccsdk.sli.core.version}</sdnctl.slipluginutils.version>
126 <!-- Support libraries used by OpenDaylight -->
127 <odl.controller.mdsal.version>1.10.3</odl.controller.mdsal.version>
128 <odl.mdsal.version>4.0.14</odl.mdsal.version>
129 <odl.mdsal.model.version>2.0.14</odl.mdsal.model.version>
130 <odl.netconf.restconf.version>1.10.3</odl.netconf.restconf.version>
131 <odl.netconf.netconf.version>1.7.3</odl.netconf.netconf.version>
132 <odl.netconf.sal.rest.docgen.version>1.10.3</odl.netconf.sal.rest.docgen.version>
134 <!-- Used by aaa, vtn -->
135 <commons.codec.version>1.13</commons.codec.version>
136 <!-- Used by netconf, ovsdb -->
137 <commons.lang3.version>3.8.1</commons.lang3.version>
138 <!-- Used by sfc, snmp4sdn; see also affinity, toolkit -->
139 <commons.lang.version>2.6</commons.lang.version>
140 <!-- Used by neutron; see also controller, vtn -->
141 <commons.net.version>3.6</commons.net.version>
142 <!-- Used by neutron -->
143 <eclipse.persistence.version>2.7.4</eclipse.persistence.version>
145 <felix.dependencymanager.version>4.4.1</felix.dependencymanager.version>
146 <!-- Used by lacp, netconf, ovsdb, sfc, toolkit; see also vtn -->
147 <gson.version>2.8.5</gson.version>
148 <!-- Used by aaa, dlux, persistence, snmp4sdn, sxp -->
149 <guava.version>25.1-jre</guava.version>
150 <!-- Used by aaa, alto, netconf, ovsdb, sfc; see also affinity, defense4all,
151 integration/distribution, snmp4sdn, toolkit, ttp -->
152 <jackson.version>2.9.10</jackson.version>
153 <!-- Used by snmp4sdn, yangtools -->
154 <javassist.version>3.24.1-GA</javassist.version>
156 <!-- FIXME remove all dependencies for jersey 1.17 after migration all projects -->
157 <!-- Used by aaa, alto, netconf, neutron, sfc; see also affinity, defense4all, snmp4sdn, toolkit -->
158 <jersey.version>2.25.1</jersey.version>
160 <jersey.client.version>2.25.1</jersey.client.version>
162 <!-- New packages for jersey migration 1.17 to 2.8 -->
163 <!-- appache.geronimo.bundle for DocGen -->
164 <!-- Used by aaa, iotdm, netconf, ovsdb, sfc -->
165 <org.json.version>20131018</org.json.version>
167 <!-- Used everywhere -->
168 <junit.version>4.12</junit.version>
169 <!-- Used by coretutorials, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
170 <logback.version>1.2.3</logback.version>
171 <!-- Used by nic, sfc, sxp, tsdr -->
172 <mockito.version>1.10.19</mockito.version>
173 <!-- Used by bgpcep, netconf, ovsdb, sxp; see also opendove, toolkit -->
174 <netty.version>4.1.42.Final</netty.version>
175 <!-- Used by openflowjava, persistence, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
176 <slf4j.version>1.7.25</slf4j.version>
177 <!-- Used in integration/distribution; see also affinity, snmp4sdn, toolkit, tsdr, ttp -->
178 <spring.version>4.3.25.RELEASE</spring.version>
180 <!-- Extra support libraries used by SDN-C -->
181 <jvnet.jaxb2.version>0.6.4</jvnet.jaxb2.version>
182 <antlr.version>4.7.2</antlr.version>
184 <eelf.maven.plugin.version>1.0.0</eelf.maven.plugin.version>
186 <!-- Managed dependency versions -->
187 <apache.httpcomponents.core.version>4.4.12</apache.httpcomponents.core.version>
188 <apache.httpcomponents.client.version>4.5.10</apache.httpcomponents.client.version>
189 <derby.version>10.14.2.0</derby.version>
190 <eelf.version>1.0.0</eelf.version>
191 <grpc.version>1.21.1</grpc.version>
192 <mariadb.connector.version>2.4.4</mariadb.connector.version>
193 <mariadb4j.version>2.4.0</mariadb4j.version>
194 <testng.version>6.14.3</testng.version>
195 <tomcat-jdbc.version>9.0.30</tomcat-jdbc.version>
196 <jetty.version>9.4.12.v20180830</jetty.version>
197 <skip.karaf.featureTest>true</skip.karaf.featureTest>
198 <dependency-list.file>direct-dependencies.txt</dependency-list.file>
201 <dependencyManagement>
203 <!-- Note: If value in BOM conflicts with value inherited from
204 parent pom, inherited value takes precedence. This seems more like
205 a bug than a feature, but this is how maven 3.6 works -->
207 <groupId>org.o-ran-sc.oam.features.parent</groupId>
208 <artifactId>dependencies-odl-bom</artifactId>
209 <version>2.0.0-SNAPSHOT</version>
211 <scope>import</scope>
214 <groupId>org.onap.logging-analytics</groupId>
215 <artifactId>logging-slf4j</artifactId>
216 <version>${logging-analytics.version}</version>
219 <groupId>org.onap.logging-analytics</groupId>
220 <artifactId>logging-filter-base</artifactId>
221 <version>${logging-analytics.version}</version>
224 <groupId>junit</groupId>
225 <artifactId>junit</artifactId>
226 <version>${junit.version}</version>
230 </dependencyManagement>
235 <url>${onap.nexus.public-url}</url>
237 <enabled>true</enabled>
238 <updatePolicy>never</updatePolicy>
241 <enabled>true</enabled>
242 <updatePolicy>always</updatePolicy>
246 <id>onap-staging</id>
247 <url>${onap.nexus.staging-url}</url>
249 <enabled>true</enabled>
250 <updatePolicy>never</updatePolicy>
253 <enabled>true</enabled>
254 <updatePolicy>always</updatePolicy>
258 <id>ecomp-release</id>
259 <name>onap-repository-releases</name>
260 <url>${onap.nexus.release-url}</url>
262 <enabled>true</enabled>
263 <updatePolicy>never</updatePolicy>
266 <enabled>false</enabled>
270 <id>ecomp-snapshot</id>
271 <name>onap-repository-snapshots</name>
272 <url>${onap.nexus.snapshot-url}</url>
274 <enabled>false</enabled>
277 <enabled>true</enabled>
281 <id>opendaylight-mirror</id>
282 <name>opendaylight-mirror</name>
283 <url>${opendaylight.nexus.public-url}</url>
285 <enabled>true</enabled>
286 <updatePolicy>never</updatePolicy>
289 <enabled>false</enabled>
293 <id>opendaylight-snapshot</id>
294 <name>opendaylight-snapshot</name>
295 <url>${opendaylight.nexus.snapshot-url}</url>
297 <enabled>false</enabled>
300 <enabled>true</enabled>
308 <url>${onap.nexus.public-url}</url>
310 <enabled>true</enabled>
313 <enabled>true</enabled>
317 <id>onap-staging</id>
318 <url>${onap.nexus.staging-url}</url>
320 <enabled>true</enabled>
323 <enabled>true</enabled>
327 <id>onap-snapshot</id>
328 <url>${onap.nexus.snapshot-url}</url>
330 <enabled>false</enabled>
333 <enabled>true</enabled>
337 <id>opendaylight-mirror</id>
338 <name>opendaylight-mirror</name>
339 <url>${opendaylight.nexus.public-url}</url>
341 <enabled>true</enabled>
342 <updatePolicy>never</updatePolicy>
345 <enabled>false</enabled>
349 <id>opendaylight-snapshot</id>
350 <name>opendaylight-snapshot</name>
351 <url>${opendaylight.nexus.snapshot-url}</url>
353 <enabled>false</enabled>
356 <enabled>true</enabled>
359 <!-- Black Duck plugin dependencies -->
362 <name>JCenter Repository</name>
363 <url>http://jcenter.bintray.com</url>
368 <name>Restlet Repository</name>
369 <url>http://maven.restlet.com</url>
371 </pluginRepositories>
376 <!-- Plugins from ONAP version (parent of oparent) -->
378 <groupId>org.apache.maven.plugins</groupId>
379 <artifactId>maven-deploy-plugin</artifactId>
380 <!-- This version supports the "deployAtEnd" parameter -->
381 <version>2.8</version>
387 <groupId>org.apache.maven.plugins</groupId>
388 <artifactId>maven-site-plugin</artifactId>
389 <version>3.6</version>
392 <groupId>org.apache.maven.wagon</groupId>
393 <artifactId>wagon-webdav-jackrabbit</artifactId>
394 <version>2.10</version>
399 <groupId>org.apache.maven.plugins</groupId>
400 <artifactId>maven-enforcer-plugin</artifactId>
401 <version>3.0.0-M2</version>
404 <id>enforce-property</id>
411 <property>onap.nexus.url</property>
412 <message>You must set a onap.nexus.url property in your
413 ~/.m2/settings.xml. See oparent/settings.xml for an example.
421 <id>enforce-no-snapshots</id>
428 <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
429 <onlyWhenRelease>true</onlyWhenRelease>
431 </requireReleaseDeps>
436 <id>enforce-maven</id>
444 </requireJavaVersion>
445 <requireMavenVersion>
446 <version>[3.5.0,)</version>
447 </requireMavenVersion>
452 <id>enforce-banned-dependencies</id>
459 <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>
461 <exclude>org.mockito:mockito-all</exclude>
462 <!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
464 </bannedDependencies>
471 <!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
473 <groupId>org.sonarsource.scanner.maven</groupId>
474 <artifactId>sonar-maven-plugin</artifactId>
475 <version>${sonar.scanner.version}</version>
477 <!-- end of plugins from ONAP version (parent of oparent) -->
479 <!-- Plugins from ONAP oparent -->
481 <groupId>org.apache.maven.plugins</groupId>
482 <artifactId>maven-surefire-plugin</artifactId>
483 <version>2.22.0</version>
485 <!-- Sets the VM argument line used when unit tests are run. -->
486 <argLine>${surefireArgLine}</argLine>
487 <!-- Excludes integration tests when unit tests are run. -->
489 <exclude>**/IT*.java</exclude>
494 <groupId>org.apache.maven.plugins</groupId>
495 <artifactId>maven-failsafe-plugin</artifactId>
496 <version>2.22.0</version>
498 <!-- Ensures that both integration-test and verify goals of the Failsafe
499 Maven plugin are executed. -->
501 <id>integration-tests</id>
503 <goal>integration-test</goal>
507 <!-- Sets the VM argument line used when integration tests are run. -->
508 <argLine>${failsafeArgLine}</argLine>
514 <!-- End of plugins from ONAP oparent -->
516 <groupId>org.codehaus.mojo</groupId>
517 <artifactId>properties-maven-plugin</artifactId>
518 <version>1.0.0</version>
522 <goal>set-system-properties</goal>
527 <name>maven.wagon.http.ssl.allowall</name>
528 <value>${ssl.allowall}</value>
531 <name>maven.wagon.http.ssl.insecure</name>
532 <value>${ssl.insecure}</value>
541 <groupId>org.codehaus.mojo</groupId>
542 <artifactId>versions-maven-plugin</artifactId>
543 <version>2.5</version>
545 <processAllModules>true</processAllModules>
549 <artifactId>maven-scm-plugin</artifactId>
550 <version>1.8.1</version>
552 <tag>${project.artifactId}-${project.version}</tag>
556 <groupId>com.github.ferstl</groupId>
557 <artifactId>depgraph-maven-plugin</artifactId>
558 <version>3.3.0</version>
560 <graphFormat>text</graphFormat>
561 <outputFileName>${dependency-list.file}</outputFileName>
562 <outputDirectory>${project.basedir}</outputDirectory>
563 <transitiveExcludes>*</transitiveExcludes>
564 <showVersions>true</showVersions>
565 <showGroupIds>true</showGroupIds>
572 <!-- Plugins from oparent version (parent of oparent) -->
574 <groupId>org.apache.maven.plugins</groupId>
575 <artifactId>maven-deploy-plugin</artifactId>
578 <groupId>org.apache.maven.plugins</groupId>
579 <artifactId>maven-site-plugin</artifactId>
581 <!-- end of plugins from oparent version (parent of oparent) -->
583 <!-- Plugins from oparent -->
585 <artifactId>maven-checkstyle-plugin</artifactId>
586 <version>2.17</version>
589 <groupId>org.onap.oparent</groupId>
590 <artifactId>checkstyle</artifactId>
591 <version>1.2.2</version>
596 <id>onap-license</id>
600 <phase>process-sources</phase>
602 <configLocation>onap-checkstyle/check-license.xml</configLocation>
603 <includeResources>false</includeResources>
604 <includeTestSourceDirectory>true</includeTestSourceDirectory>
605 <includeTestResources>false</includeTestResources>
606 <sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
609 <consoleOutput>true</consoleOutput>
610 <failOnViolation>false</failOnViolation>
614 <id>onap-java-style</id>
618 <phase>process-sources</phase>
620 <!-- Use Google Java Style Guide: https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml
621 with minor changes -->
622 <configLocation>onap-checkstyle/onap-java-style.xml</configLocation>
623 <!-- <sourceDirectory> is needed so that checkstyle ignores the generated sources directory -->
624 <sourceDirectory>${project.build.sourceDirectory}/src/main/java</sourceDirectory>
625 <includeResources>true</includeResources>
626 <includeTestSourceDirectory>true</includeTestSourceDirectory>
627 <includeTestResources>true</includeTestResources>
630 <consoleOutput>true</consoleOutput>
631 <failOnViolation>false</failOnViolation>
637 <groupId>org.codehaus.mojo</groupId>
638 <artifactId>build-helper-maven-plugin</artifactId>
639 <version>1.12</version>
641 <!-- Jacoco / Sonar -->
643 <groupId>org.jacoco</groupId>
644 <artifactId>jacoco-maven-plugin</artifactId>
645 <version>${jacoco.version}</version>
648 <id>pre-unit-test</id>
650 <goal>prepare-agent</goal>
653 <!-- Sets the path to the file which contains the execution data. -->
654 <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
655 <!-- Sets the name of the property containing the settings for JaCoCo runtime agent. -->
656 <propertyName>surefireArgLine</propertyName>
659 <!-- Ensures that the code coverage report for unit tests is created after unit tests have been run. -->
661 <id>post-unit-test</id>
667 <!-- Sets the path to the file which contains the execution data. -->
668 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
669 <!-- Sets the output directory for the code coverage report. -->
670 <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
674 <id>pre-integration-test</id>
675 <phase>pre-integration-test</phase>
677 <goal>prepare-agent</goal>
680 <!-- Sets the path to the file which contains the execution data. -->
681 <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
682 <!-- Sets the name of the property containing the settings for JaCoCo runtime agent. -->
683 <propertyName>failsafeArgLine</propertyName>
686 <!-- Ensures that the code coverage report for integration tests after integration tests have been run. -->
688 <id>post-integration-test</id>
689 <phase>post-integration-test</phase>
694 <!-- Sets the path to the file which contains the execution data. -->
695 <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
696 <!-- Sets the output directory for the code coverage report. -->
697 <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>
701 <id>default-prepare-agent</id>
703 <goal>prepare-agent</goal>
707 <id>default-report</id>
708 <phase>prepare-package</phase>
714 <id>default-check</id>
721 <element>PACKAGE</element>
724 <counter>COMPLEXITY</counter>
725 <value>COVEREDRATIO</value>
726 <minimum>0.0</minimum>
736 <groupId>org.apache.maven.plugins</groupId>
737 <artifactId>maven-surefire-plugin</artifactId>
740 <groupId>org.apache.maven.plugins</groupId>
741 <artifactId>maven-failsafe-plugin</artifactId>
743 <!-- end of plugins from oparent -->
745 <groupId>org.apache.maven.plugins</groupId>
746 <artifactId>maven-javadoc-plugin</artifactId>
747 <version>2.10.4</version>
750 <id>attach-javadocs</id>
755 <additionalparam>-Xdoclint:none</additionalparam>
761 <artifactId>maven-enforcer-plugin</artifactId>
762 <version>3.0.0-M2</version>
765 <id>enforce-property</id>
772 <property>onap.nexus.url</property>
773 <message>You must set a onap.nexus.url property in your
774 ~/.m2/settings.xml. See oparent/settings.xml for an example.</message>
781 <id>enforce-no-snapshots</id>
788 <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
789 <onlyWhenRelease>true</onlyWhenRelease>
791 </requireReleaseDeps>
796 <id>enforce-maven</id>
803 <version>1.8.0</version>
804 </requireJavaVersion>
805 <requireMavenVersion>
806 <version>[3.5.0,)</version>
807 </requireMavenVersion>
812 <id>enforce-banned-dependencies</id>
819 <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>
821 <exclude>org.mockito:mockito-all</exclude>
822 <!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
824 </bannedDependencies>
837 <artifactId>maven-javadoc-plugin</artifactId>
838 <version>2.10.4</version>
840 <failOnError>false</failOnError>
841 <additionalparam>-Xdoclint:none</additionalparam>
848 <!-- Profiles from ONAP oparent -->
850 <id>generate-json</id>
853 <exists>${swagger-properties}</exists>
856 <name>swagger-sdk.generate-json</name>
862 <groupId>org.codehaus.mojo</groupId>
863 <artifactId>properties-maven-plugin</artifactId>
864 <version>1.0.0</version>
867 <phase>initialize</phase>
869 <goal>read-project-properties</goal>
873 <file>${basedir}/src/main/resources/swagger.properties</file>
880 <groupId>com.github.kongchen</groupId>
881 <artifactId>swagger-maven-plugin</artifactId>
882 <version>3.1.4</version>
886 <locations>${api-rest-package}</locations>
887 <schemes>http,https</schemes>
888 <host>${api-host-ip}:${api-host-port}</host>
889 <basePath>${api-base-path}</basePath>
891 <title>${api-title}</title>
892 <version>${api-version}</version>
893 <description>${api-description}</description>
895 <name>${api-license}</name>
898 <swaggerDirectory>${basedir}/src/main/resources</swaggerDirectory>
904 <phase>compile</phase>
906 <goal>generate</goal>
912 <groupId>org.apache.maven.plugins</groupId>
913 <artifactId>maven-install-plugin</artifactId>
914 <version>2.3.1</version>
917 <id>install-file-id</id>
918 <phase>install</phase>
920 <goal>install-file</goal>
923 <file>${basedir}/src/main/resources/swagger.json</file>
924 <groupId>${project.groupId}</groupId>
925 <artifactId>${project.artifactId}-swagger-schema</artifactId>
926 <version>${project.version}</version>
927 <packaging>json</packaging>
936 <id>generate-sdk</id>
939 <exists>${swagger-json}</exists>
942 <name>swagger-sdk.generate-java-sdk</name>
948 <groupId>org.apache.maven.plugins</groupId>
949 <artifactId>maven-antrun-plugin</artifactId>
950 <version>1.8</version>
953 <phase>initialize</phase>
954 <id>ant-create-script</id>
956 <exportAntProperties>true</exportAntProperties>
958 <taskdef resource="net/sf/antcontrib/antlib.xml" classpathref="maven.plugin.classpath"/>
959 <condition property="is_windows" value="true">
960 <os family="windows"/>
962 <condition property="isLinux" value="true">
966 <equals arg1="${is_windows}" arg2="true"/>
968 <property name="swagger.sdk.script.file" value="generated-source-script.bat"/>
969 <echo file="${project.build.directory}${file.separator}generated-source-script.bat" append="true" message="cd ${project.build.directory}${file.separator}generated-sources${line.separator}"/>
970 <echo file="${project.build.directory}${file.separator}generated-source-script.bat" append="true" message="mvn clean install -Dmaven.test.skip=true${line.separator}"/>
973 <property name="swagger.sdk.script.file" value="generated-source-script.sh"/>
974 <echo file="${project.build.directory}${file.separator}generated-source-script.sh" append="true" message="cd ${project.build.directory}${file.separator}generated-sources${line.separator}"/>
975 <echo file="${project.build.directory}${file.separator}generated-source-script.sh" append="true" message="mvn clean install -Dmaven.test.skip=true${line.separator}"/>
976 <chmod file="${project.build.directory}${file.separator}generated-source-script.sh" perm="755"/>
988 <groupId>ant-contrib</groupId>
989 <artifactId>ant-contrib</artifactId>
990 <version>1.0b3</version>
993 <groupId>ant</groupId>
994 <artifactId>ant</artifactId>
1001 <groupId>io.swagger</groupId>
1002 <artifactId>swagger-codegen-maven-plugin</artifactId>
1003 <version>2.2.1</version>
1007 <goal>generate</goal>
1010 <inputSpec>${basedir}/src/main/resources/swagger.json</inputSpec>
1011 <output>${project.build.directory}/generated-sources</output>
1012 <language>java</language>
1014 <dateLibrary>joda</dateLibrary>
1016 <library>jersey2</library>
1017 <groupId>${project.groupId}</groupId>
1018 <artifactId>${project.artifactId}-java-sdk</artifactId>
1019 <artifactVersion>${project.version}</artifactVersion>
1020 <modelPackage>${project.groupId}.${project.artifactId}.client.model</modelPackage>
1021 <apiPackage>${project.groupId}.${project.artifactId}.client.api</apiPackage>
1022 <invokerPackage>${project.groupId}.${project.artifactId}.client.invoker</invokerPackage>
1028 <groupId>org.codehaus.mojo</groupId>
1029 <artifactId>exec-maven-plugin</artifactId>
1030 <version>1.5.0</version>
1033 <id>swagger-generate-sources</id>
1034 <phase>generate-sources</phase>
1039 <executable>${project.build.directory}${file.separator}${swagger.sdk.script.file}</executable>
1045 <groupId>org.apache.maven.plugins</groupId>
1046 <artifactId>maven-clean-plugin</artifactId>
1047 <version>3.0.0</version>
1050 <id>clean-generated-files</id>
1051 <phase>generate-sources</phase>
1058 <directory>${project.build.directory}/generated-sources</directory>
1069 <groupId>org.onap.msb.swagger-sdk</groupId>
1070 <artifactId>swagger-sdk</artifactId>
1071 <version>1.0.0</version>
1076 <id>sonar-jacoco-aggregate</id>
1079 <name>onap.jacoco.aggregateFile</name>
1085 <groupId>org.jacoco</groupId>
1086 <artifactId>jacoco-maven-plugin</artifactId>
1093 <phase>generate-resources</phase>
1095 <destFile>${onap.jacoco.aggregateFile}</destFile>
1098 <directory>${project.basedir}</directory>
1100 <include>**/target/code-coverage/*.exec</include>
1111 <!-- End of profiles from ONAP oparent -->
1114 <id>yang-compile</id>
1117 <exists>src/main/yang</exists>
1123 <groupId>org.opendaylight.yangtools</groupId>
1124 <artifactId>yang-maven-plugin</artifactId>
1125 <version>3.0.11</version>
1128 <groupId>org.opendaylight.mdsal</groupId>
1129 <artifactId>maven-sal-api-gen-plugin</artifactId>
1130 <version>${odl.mdsal.model.version}</version>
1132 <scope>compile</scope>
1135 <groupId>org.opendaylight.netconf</groupId>
1136 <artifactId>sal-rest-docgen-maven</artifactId>
1137 <version>${odl.netconf.sal.rest.docgen.version}</version>
1145 <goal>generate-sources</goal>
1148 <yangFilesRootDir>${yang.file.directory}</yangFilesRootDir>
1151 <codeGeneratorClass>org.opendaylight.mdsal.binding.maven.api.gen.plugin.CodeGeneratorImpl</codeGeneratorClass>
1152 <outputBaseDir>${salGeneratorPath}</outputBaseDir>
1155 <codeGeneratorClass>org.opendaylight.netconf.sal.rest.doc.maven.StaticDocGenerator</codeGeneratorClass>
1156 <outputBaseDir>target/swagger</outputBaseDir>
1159 <inspectDependencies>true</inspectDependencies>