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>karaf4-parent</artifactId>
11 <version>5.0.11</version>
15 <groupId>org.onap.ccsdk.parent</groupId>
16 <artifactId>karaf4-parent</artifactId>
17 <version>2.0.6-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 <maven.compiler.source>8</maven.compiler.source>
57 <maven.compiler.target>8</maven.compiler.target>
58 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
59 <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
60 <onap.nexus.url>https://nexus.onap.org</onap.nexus.url>
61 <!-- sitePath may be overridden in the inheriting POM if desired -->
62 <sitePath>/content/sites/site/${project.groupId}/${project.artifactId}/${project.version}</sitePath>
64 <!-- If following file exist, auto-generation of swagger.json will be done -->
65 <swagger-properties>${basedir}/src/main/resources/swagger.properties</swagger-properties>
66 <!-- If following file exist, auto-generation of sdk will be done -->
67 <swagger-json>${basedir}/src/main/resources/swagger.json</swagger-json>
68 <!-- end of properties from oparent -->
70 <!-- ONAP repositories -->
71 <onap.nexus.host>nexus.onap.org</onap.nexus.host>
72 <onap.nexus.port>443</onap.nexus.port>
73 <onap.nexus.protocol>https</onap.nexus.protocol>
74 <onap.nexus.public-url>https://nexus.onap.org/content/groups/public</onap.nexus.public-url>
75 <onap.nexus.staging-url>https://nexus.onap.org/content/groups/staging</onap.nexus.staging-url>
76 <onap.nexus.release-url>https://nexus.onap.org/content/repositories/releases</onap.nexus.release-url>
77 <onap.nexus.snapshot-url>https://nexus.onap.org/content/repositories/snapshots</onap.nexus.snapshot-url>
78 <onap.nexus.staging.server-id>ecomp-staging</onap.nexus.staging.server-id>
79 <onap.nexus.staging.profile-id>176c31dfe190a</onap.nexus.staging.profile-id>
81 <!-- OpenDaylight repositories -->
82 <opendaylight.nexus.public-url>https://nexus.opendaylight.org/content/repositories/public/</opendaylight.nexus.public-url>
83 <opendaylight.nexus.snapshot-url>https://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</opendaylight.nexus.snapshot-url>
85 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
86 <java.version.source>8</java.version.source>
87 <java.version.target>8</java.version.target>
88 <bundle.plugin.version>2.5.0</bundle.plugin.version>
89 <maven.compile.plugin.version>2.5.1</maven.compile.plugin.version>
90 <features.file>features.xml</features.file>
91 <jmxGeneratorPath>src/main/yang-gen-config</jmxGeneratorPath>
92 <salGeneratorPath>src/main/yang-gen-sal</salGeneratorPath>
93 <checkstyle.skip>true</checkstyle.skip>
95 <!-- logging-analytics versions -->
96 <logging-analytics.version>1.6.6</logging-analytics.version>
98 <!-- CCSDK component versions -->
99 <ccsdk.cds.version>1.0.3</ccsdk.cds.version>
100 <ccsdk.features.version>1.0.4-SNAPSHOT</ccsdk.features.version>
101 <ccsdk.oran.a1adapter.version>1.0.2-SNAPSHOT</ccsdk.oran.a1adapter.version>
102 <ccsdk.sli.version>1.0.4</ccsdk.sli.version>
103 <ccsdk.sli.core.version>${ccsdk.sli.version}</ccsdk.sli.core.version>
104 <ccsdk.sli.adaptors.version>${ccsdk.sli.version}</ccsdk.sli.adaptors.version>
105 <ccsdk.sli.northbound.version>${ccsdk.sli.version}</ccsdk.sli.northbound.version>
106 <ccsdk.sli.plugins.version>${ccsdk.sli.version}</ccsdk.sli.plugins.version>
107 <ccsdk.distribution.version>1.0.5-SNAPSHOT</ccsdk.distribution.version>
108 <sdnctl.sli.version>${ccsdk.sli.core.version}</sdnctl.sli.version>
109 <sdnctl.aai.service.version>${ccsdk.sli.adaptors.version}</sdnctl.aai.service.version>
110 <sdnctl.dblib.version>${ccsdk.sli.core.version}</sdnctl.dblib.version>
111 <sdnctl.mdsal.resource.version>${ccsdk.sli.adaptors.version}</sdnctl.mdsal.resource.version>
112 <sdnctl.slipluginutils.version>${ccsdk.sli.core.version}</sdnctl.slipluginutils.version>
114 <!-- Support libraries used by OpenDaylight -->
115 <odl.controller.mdsal.version>1.10.3</odl.controller.mdsal.version>
116 <odl.mdsal.version>4.0.14</odl.mdsal.version>
117 <odl.mdsal.model.version>2.0.14</odl.mdsal.model.version>
118 <odl.netconf.restconf.version>1.10.3</odl.netconf.restconf.version>
119 <odl.netconf.netconf.version>1.7.3</odl.netconf.netconf.version>
120 <odl.netconf.sal.rest.docgen.version>1.10.3</odl.netconf.sal.rest.docgen.version>
122 <!-- Used by aaa, vtn -->
123 <commons.codec.version>1.13</commons.codec.version>
124 <!-- Used by netconf, ovsdb -->
125 <commons.lang3.version>3.8.1</commons.lang3.version>
126 <!-- Used by sfc, snmp4sdn; see also affinity, toolkit -->
127 <commons.lang.version>2.6</commons.lang.version>
128 <!-- Used by neutron; see also controller, vtn -->
129 <commons.net.version>3.6</commons.net.version>
130 <!-- Used by neutron -->
131 <eclipse.persistence.version>2.7.4</eclipse.persistence.version>
133 <felix.dependencymanager.version>4.4.1</felix.dependencymanager.version>
134 <!-- Used by lacp, netconf, ovsdb, sfc, toolkit; see also vtn -->
135 <gson.version>2.8.5</gson.version>
136 <!-- Used by aaa, dlux, persistence, snmp4sdn, sxp -->
137 <guava.version>25.1-jre</guava.version>
138 <!-- Used by aaa, alto, netconf, ovsdb, sfc; see also affinity, defense4all,
139 integration/distribution, snmp4sdn, toolkit, ttp -->
140 <jackson.version>2.9.10</jackson.version>
141 <!-- Used by snmp4sdn, yangtools -->
142 <javassist.version>3.24.1-GA</javassist.version>
144 <!-- FIXME remove all dependencies for jersey 1.17 after migration all projects -->
145 <!-- Used by aaa, alto, netconf, neutron, sfc; see also affinity, defense4all, snmp4sdn, toolkit -->
146 <jersey.version>2.25.1</jersey.version>
148 <jersey.client.version>2.25.1</jersey.client.version>
150 <!-- New packages for jersey migration 1.17 to 2.8 -->
151 <!-- appache.geronimo.bundle for DocGen -->
152 <!-- Used by aaa, iotdm, netconf, ovsdb, sfc -->
153 <org.json.version>20131018</org.json.version>
155 <!-- Used everywhere -->
156 <junit.version>4.12</junit.version>
157 <!-- Used by coretutorials, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
158 <logback.version>1.2.3</logback.version>
159 <!-- Used by nic, sfc, sxp, tsdr -->
160 <mockito.version>1.10.19</mockito.version>
161 <!-- Used by bgpcep, netconf, ovsdb, sxp; see also opendove, toolkit -->
162 <netty.version>4.1.42.Final</netty.version>
163 <!-- Used by openflowjava, persistence, sfc, snmp4sdn, sxp; see also affinity, toolkit -->
164 <slf4j.version>1.7.25</slf4j.version>
165 <!-- Used in integration/distribution; see also affinity, snmp4sdn, toolkit, tsdr, ttp -->
166 <spring.version>4.3.25.RELEASE</spring.version>
168 <!-- Extra support libraries used by SDN-C -->
169 <jvnet.jaxb2.version>0.6.4</jvnet.jaxb2.version>
170 <antlr.version>4.7.2</antlr.version>
172 <eelf.maven.plugin.version>1.0.0</eelf.maven.plugin.version>
174 <!-- Managed dependency versions -->
175 <apache.httpcomponents.core.version>4.4.12</apache.httpcomponents.core.version>
176 <apache.httpcomponents.client.version>4.5.10</apache.httpcomponents.client.version>
177 <derby.version>10.14.2.0</derby.version>
178 <eelf.version>1.0.0</eelf.version>
179 <grpc.version>1.21.1</grpc.version>
180 <mariadb.connector.version>2.4.4</mariadb.connector.version>
181 <mariadb4j.version>2.4.0</mariadb4j.version>
182 <testng.version>6.14.3</testng.version>
183 <tomcat-jdbc.version>9.0.30</tomcat-jdbc.version>
184 <jetty.version>9.4.12.v20180830</jetty.version>
185 <skip.karaf.featureTest>true</skip.karaf.featureTest>
186 <dependency-list.file>direct-dependencies.txt</dependency-list.file>
189 <dependencyManagement>
191 <!-- Note: If value in BOM conflicts with value inherited from
192 parent pom, inherited value takes precedence. This seems more like
193 a bug than a feature, but this is how maven 3.6 works -->
195 <groupId>org.onap.ccsdk.parent</groupId>
196 <artifactId>dependencies-odl-bom</artifactId>
197 <version>2.0.6-SNAPSHOT</version>
199 <scope>import</scope>
202 <groupId>org.onap.logging-analytics</groupId>
203 <artifactId>logging-slf4j</artifactId>
204 <version>${logging-analytics.version}</version>
207 <groupId>org.onap.logging-analytics</groupId>
208 <artifactId>logging-filter-base</artifactId>
209 <version>${logging-analytics.version}</version>
212 <groupId>junit</groupId>
213 <artifactId>junit</artifactId>
214 <version>${junit.version}</version>
218 </dependencyManagement>
223 <url>${onap.nexus.public-url}</url>
225 <enabled>true</enabled>
226 <updatePolicy>never</updatePolicy>
229 <enabled>true</enabled>
230 <updatePolicy>always</updatePolicy>
234 <id>onap-staging</id>
235 <url>${onap.nexus.staging-url}</url>
237 <enabled>true</enabled>
238 <updatePolicy>never</updatePolicy>
241 <enabled>true</enabled>
242 <updatePolicy>always</updatePolicy>
246 <id>ecomp-release</id>
247 <name>onap-repository-releases</name>
248 <url>${onap.nexus.release-url}</url>
250 <enabled>true</enabled>
251 <updatePolicy>never</updatePolicy>
254 <enabled>false</enabled>
258 <id>ecomp-snapshot</id>
259 <name>onap-repository-snapshots</name>
260 <url>${onap.nexus.snapshot-url}</url>
262 <enabled>false</enabled>
265 <enabled>true</enabled>
269 <id>opendaylight-mirror</id>
270 <name>opendaylight-mirror</name>
271 <url>${opendaylight.nexus.public-url}</url>
273 <enabled>true</enabled>
274 <updatePolicy>never</updatePolicy>
277 <enabled>false</enabled>
281 <id>opendaylight-snapshot</id>
282 <name>opendaylight-snapshot</name>
283 <url>${opendaylight.nexus.snapshot-url}</url>
285 <enabled>false</enabled>
288 <enabled>true</enabled>
296 <url>${onap.nexus.public-url}</url>
298 <enabled>true</enabled>
301 <enabled>true</enabled>
305 <id>onap-staging</id>
306 <url>${onap.nexus.staging-url}</url>
308 <enabled>true</enabled>
311 <enabled>true</enabled>
315 <id>onap-snapshot</id>
316 <url>${onap.nexus.snapshot-url}</url>
318 <enabled>false</enabled>
321 <enabled>true</enabled>
325 <id>opendaylight-mirror</id>
326 <name>opendaylight-mirror</name>
327 <url>${opendaylight.nexus.public-url}</url>
329 <enabled>true</enabled>
330 <updatePolicy>never</updatePolicy>
333 <enabled>false</enabled>
337 <id>opendaylight-snapshot</id>
338 <name>opendaylight-snapshot</name>
339 <url>${opendaylight.nexus.snapshot-url}</url>
341 <enabled>false</enabled>
344 <enabled>true</enabled>
347 <!-- Black Duck plugin dependencies -->
350 <name>JCenter Repository</name>
351 <url>http://jcenter.bintray.com</url>
356 <name>Restlet Repository</name>
357 <url>http://maven.restlet.com</url>
359 </pluginRepositories>
364 <!-- Plugins from ONAP version (parent of oparent) -->
366 <groupId>org.apache.maven.plugins</groupId>
367 <artifactId>maven-deploy-plugin</artifactId>
368 <!-- This version supports the "deployAtEnd" parameter -->
369 <version>2.8</version>
375 <groupId>org.apache.maven.plugins</groupId>
376 <artifactId>maven-site-plugin</artifactId>
377 <version>3.6</version>
380 <groupId>org.apache.maven.wagon</groupId>
381 <artifactId>wagon-webdav-jackrabbit</artifactId>
382 <version>2.10</version>
387 <groupId>org.apache.maven.plugins</groupId>
388 <artifactId>maven-enforcer-plugin</artifactId>
389 <version>3.0.0-M2</version>
392 <id>enforce-property</id>
399 <property>onap.nexus.url</property>
400 <message>You must set a onap.nexus.url property in your
401 ~/.m2/settings.xml. See oparent/settings.xml for an example.
409 <id>enforce-no-snapshots</id>
416 <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
417 <onlyWhenRelease>true</onlyWhenRelease>
419 </requireReleaseDeps>
424 <id>enforce-maven</id>
432 </requireJavaVersion>
433 <requireMavenVersion>
434 <version>[3.5.0,)</version>
435 </requireMavenVersion>
440 <id>enforce-banned-dependencies</id>
447 <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>
449 <exclude>org.mockito:mockito-all</exclude>
450 <!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
452 </bannedDependencies>
459 <!-- https://mvnrepository.com/artifact/org.sonarsource.scanner.maven/sonar-maven-plugin -->
461 <groupId>org.sonarsource.scanner.maven</groupId>
462 <artifactId>sonar-maven-plugin</artifactId>
463 <version>${sonar.scanner.version}</version>
465 <!-- end of plugins from ONAP version (parent of oparent) -->
467 <!-- Plugins from ONAP oparent -->
469 <groupId>org.apache.maven.plugins</groupId>
470 <artifactId>maven-surefire-plugin</artifactId>
471 <version>2.22.0</version>
473 <!-- Sets the VM argument line used when unit tests are run. -->
474 <argLine>${surefireArgLine}</argLine>
475 <!-- Excludes integration tests when unit tests are run. -->
477 <exclude>**/IT*.java</exclude>
482 <groupId>org.apache.maven.plugins</groupId>
483 <artifactId>maven-failsafe-plugin</artifactId>
484 <version>2.22.0</version>
486 <!-- Ensures that both integration-test and verify goals of the Failsafe
487 Maven plugin are executed. -->
489 <id>integration-tests</id>
491 <goal>integration-test</goal>
495 <!-- Sets the VM argument line used when integration tests are run. -->
496 <argLine>${failsafeArgLine}</argLine>
502 <!-- End of plugins from ONAP oparent -->
504 <groupId>org.codehaus.mojo</groupId>
505 <artifactId>properties-maven-plugin</artifactId>
506 <version>1.0.0</version>
510 <goal>set-system-properties</goal>
515 <name>maven.wagon.http.ssl.allowall</name>
516 <value>${ssl.allowall}</value>
519 <name>maven.wagon.http.ssl.insecure</name>
520 <value>${ssl.insecure}</value>
529 <groupId>org.codehaus.mojo</groupId>
530 <artifactId>versions-maven-plugin</artifactId>
531 <version>2.5</version>
533 <processAllModules>true</processAllModules>
537 <artifactId>maven-scm-plugin</artifactId>
538 <version>1.8.1</version>
540 <tag>${project.artifactId}-${project.version}</tag>
544 <groupId>com.github.ferstl</groupId>
545 <artifactId>depgraph-maven-plugin</artifactId>
546 <version>3.3.0</version>
548 <graphFormat>text</graphFormat>
549 <outputFileName>${dependency-list.file}</outputFileName>
550 <outputDirectory>${project.basedir}</outputDirectory>
551 <transitiveExcludes>*</transitiveExcludes>
552 <showVersions>true</showVersions>
553 <showGroupIds>true</showGroupIds>
557 <groupId>de.jacks-it-lab</groupId>
558 <artifactId>frontend-maven-plugin</artifactId>
559 <version>1.7.2</version>
562 <groupId>com.github.alexcojocaru</groupId>
563 <artifactId>elasticsearch-maven-plugin</artifactId>
564 <version>6.16</version>
566 <version>7.1.1</version>
570 <groupId>org.apache.maven.plugins</groupId>
571 <artifactId>maven-javadoc-plugin</artifactId>
572 <version>3.2.0</version>
574 <failOnError>false</failOnError>
581 <!-- Plugins from oparent version (parent of oparent) -->
583 <groupId>org.apache.maven.plugins</groupId>
584 <artifactId>maven-deploy-plugin</artifactId>
587 <groupId>org.apache.maven.plugins</groupId>
588 <artifactId>maven-site-plugin</artifactId>
590 <!-- end of plugins from oparent version (parent of oparent) -->
592 <!-- Plugins from oparent -->
594 <artifactId>maven-checkstyle-plugin</artifactId>
595 <version>2.17</version>
598 <groupId>org.onap.oparent</groupId>
599 <artifactId>checkstyle</artifactId>
600 <version>1.2.2</version>
605 <id>onap-license</id>
609 <phase>process-sources</phase>
611 <configLocation>onap-checkstyle/check-license.xml</configLocation>
612 <includeResources>false</includeResources>
613 <includeTestSourceDirectory>true</includeTestSourceDirectory>
614 <includeTestResources>false</includeTestResources>
615 <sourceDirectory>${project.build.sourceDirectory}</sourceDirectory>
618 <consoleOutput>true</consoleOutput>
619 <failOnViolation>false</failOnViolation>
623 <id>onap-java-style</id>
627 <phase>process-sources</phase>
629 <!-- Use Google Java Style Guide: https://github.com/checkstyle/checkstyle/blob/master/src/main/resources/google_checks.xml
630 with minor changes -->
631 <configLocation>onap-checkstyle/onap-java-style.xml</configLocation>
632 <!-- <sourceDirectory> is needed so that checkstyle ignores the generated sources directory -->
633 <sourceDirectory>${project.build.sourceDirectory}/src/main/java</sourceDirectory>
634 <includeResources>true</includeResources>
635 <includeTestSourceDirectory>true</includeTestSourceDirectory>
636 <includeTestResources>true</includeTestResources>
639 <consoleOutput>true</consoleOutput>
640 <failOnViolation>false</failOnViolation>
646 <groupId>org.codehaus.mojo</groupId>
647 <artifactId>build-helper-maven-plugin</artifactId>
648 <version>1.12</version>
650 <!-- Jacoco / Sonar -->
652 <groupId>org.jacoco</groupId>
653 <artifactId>jacoco-maven-plugin</artifactId>
654 <version>${jacoco.version}</version>
657 <id>pre-unit-test</id>
659 <goal>prepare-agent</goal>
662 <!-- Sets the path to the file which contains the execution data. -->
663 <destFile>${project.build.directory}/code-coverage/jacoco-ut.exec</destFile>
664 <!-- Sets the name of the property containing the settings for JaCoCo runtime agent. -->
665 <propertyName>surefireArgLine</propertyName>
668 <!-- Ensures that the code coverage report for unit tests is created after unit tests have been run. -->
670 <id>post-unit-test</id>
676 <!-- Sets the path to the file which contains the execution data. -->
677 <dataFile>${project.build.directory}/code-coverage/jacoco-ut.exec</dataFile>
678 <!-- Sets the output directory for the code coverage report. -->
679 <outputDirectory>${project.reporting.outputDirectory}/jacoco-ut</outputDirectory>
683 <id>pre-integration-test</id>
684 <phase>pre-integration-test</phase>
686 <goal>prepare-agent</goal>
689 <!-- Sets the path to the file which contains the execution data. -->
690 <destFile>${project.build.directory}/code-coverage/jacoco-it.exec</destFile>
691 <!-- Sets the name of the property containing the settings for JaCoCo runtime agent. -->
692 <propertyName>failsafeArgLine</propertyName>
695 <!-- Ensures that the code coverage report for integration tests after integration tests have been run. -->
697 <id>post-integration-test</id>
698 <phase>post-integration-test</phase>
703 <!-- Sets the path to the file which contains the execution data. -->
704 <dataFile>${project.build.directory}/code-coverage/jacoco-it.exec</dataFile>
705 <!-- Sets the output directory for the code coverage report. -->
706 <outputDirectory>${project.reporting.outputDirectory}/jacoco-it</outputDirectory>
710 <id>default-prepare-agent</id>
712 <goal>prepare-agent</goal>
716 <id>default-report</id>
717 <phase>prepare-package</phase>
723 <id>default-check</id>
730 <element>PACKAGE</element>
733 <counter>COMPLEXITY</counter>
734 <value>COVEREDRATIO</value>
735 <minimum>0.0</minimum>
745 <groupId>org.apache.maven.plugins</groupId>
746 <artifactId>maven-surefire-plugin</artifactId>
749 <groupId>org.apache.maven.plugins</groupId>
750 <artifactId>maven-failsafe-plugin</artifactId>
752 <!-- end of plugins from oparent -->
754 <groupId>org.apache.maven.plugins</groupId>
755 <artifactId>maven-javadoc-plugin</artifactId>
758 <id>attach-javadocs</id>
763 <additionalparam>-Xdoclint:none</additionalparam>
769 <artifactId>maven-enforcer-plugin</artifactId>
770 <version>3.0.0-M2</version>
773 <id>enforce-property</id>
780 <property>onap.nexus.url</property>
781 <message>You must set a onap.nexus.url property in your
782 ~/.m2/settings.xml. See oparent/settings.xml for an example.</message>
789 <id>enforce-no-snapshots</id>
796 <failWhenParentIsSnapshot>false</failWhenParentIsSnapshot>
797 <onlyWhenRelease>true</onlyWhenRelease>
799 </requireReleaseDeps>
804 <id>enforce-maven</id>
811 <version>1.8.0</version>
812 </requireJavaVersion>
813 <requireMavenVersion>
814 <version>[3.5.0,)</version>
815 </requireMavenVersion>
820 <id>enforce-banned-dependencies</id>
827 <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>
829 <exclude>org.mockito:mockito-all</exclude>
830 <!-- <exclude>com.google.code.findbugs:annotations</exclude> -->
832 </bannedDependencies>
840 <groupId>pl.project13.maven</groupId>
841 <artifactId>git-commit-id-plugin</artifactId>
842 <version>4.0.0</version>
844 <commitIdGenerationMode>full</commitIdGenerationMode>
845 <includeOnlyProperties>
846 <includeOnlyProperty>^git.build.(time|version)$</includeOnlyProperty>
847 <includeOnlyProperty>^git.commit.id.(abbrev|full)$</includeOnlyProperty>
848 </includeOnlyProperties>
857 <artifactId>maven-javadoc-plugin</artifactId>
859 <failOnError>false</failOnError>
860 <additionalparam>-Xdoclint:none</additionalparam>
867 <!-- Profiles from ONAP oparent -->
869 <id>generate-json</id>
872 <exists>${swagger-properties}</exists>
875 <name>swagger-sdk.generate-json</name>
881 <groupId>org.codehaus.mojo</groupId>
882 <artifactId>properties-maven-plugin</artifactId>
883 <version>1.0.0</version>
886 <phase>initialize</phase>
888 <goal>read-project-properties</goal>
892 <file>${basedir}/src/main/resources/swagger.properties</file>
899 <groupId>com.github.kongchen</groupId>
900 <artifactId>swagger-maven-plugin</artifactId>
901 <version>3.1.4</version>
905 <locations>${api-rest-package}</locations>
906 <schemes>http,https</schemes>
907 <host>${api-host-ip}:${api-host-port}</host>
908 <basePath>${api-base-path}</basePath>
910 <title>${api-title}</title>
911 <version>${api-version}</version>
912 <description>${api-description}</description>
914 <name>${api-license}</name>
917 <swaggerDirectory>${basedir}/src/main/resources</swaggerDirectory>
923 <phase>compile</phase>
925 <goal>generate</goal>
931 <groupId>org.apache.maven.plugins</groupId>
932 <artifactId>maven-install-plugin</artifactId>
933 <version>2.3.1</version>
936 <id>install-file-id</id>
937 <phase>install</phase>
939 <goal>install-file</goal>
942 <file>${basedir}/src/main/resources/swagger.json</file>
943 <groupId>${project.groupId}</groupId>
944 <artifactId>${project.artifactId}-swagger-schema</artifactId>
945 <version>${project.version}</version>
946 <packaging>json</packaging>
955 <id>generate-sdk</id>
958 <exists>${swagger-json}</exists>
961 <name>swagger-sdk.generate-java-sdk</name>
967 <groupId>org.apache.maven.plugins</groupId>
968 <artifactId>maven-antrun-plugin</artifactId>
969 <version>1.8</version>
972 <phase>initialize</phase>
973 <id>ant-create-script</id>
975 <exportAntProperties>true</exportAntProperties>
977 <taskdef resource="net/sf/antcontrib/antlib.xml" classpathref="maven.plugin.classpath"/>
978 <condition property="is_windows" value="true">
979 <os family="windows"/>
981 <condition property="isLinux" value="true">
985 <equals arg1="${is_windows}" arg2="true"/>
987 <property name="swagger.sdk.script.file" value="generated-source-script.bat"/>
988 <echo file="${project.build.directory}${file.separator}generated-source-script.bat" append="true"
989 message="cd ${project.build.directory}${file.separator}generated-sources${line.separator}"/>
990 <echo file="${project.build.directory}${file.separator}generated-source-script.bat" append="true"
991 message="mvn clean install -Dmaven.test.skip=true${line.separator}"/>
994 <property name="swagger.sdk.script.file" value="generated-source-script.sh"/>
995 <echo file="${project.build.directory}${file.separator}generated-source-script.sh" append="true"
996 message="cd ${project.build.directory}${file.separator}generated-sources${line.separator}"/>
997 <echo file="${project.build.directory}${file.separator}generated-source-script.sh" append="true"
998 message="mvn clean install -Dmaven.test.skip=true${line.separator}"/>
999 <chmod file="${project.build.directory}${file.separator}generated-source-script.sh" perm="755"/>
1011 <groupId>ant-contrib</groupId>
1012 <artifactId>ant-contrib</artifactId>
1013 <version>1.0b3</version>
1016 <groupId>ant</groupId>
1017 <artifactId>ant</artifactId>
1024 <groupId>io.swagger</groupId>
1025 <artifactId>swagger-codegen-maven-plugin</artifactId>
1026 <version>2.2.1</version>
1030 <goal>generate</goal>
1033 <inputSpec>${basedir}/src/main/resources/swagger.json</inputSpec>
1034 <output>${project.build.directory}/generated-sources</output>
1035 <language>java</language>
1037 <dateLibrary>joda</dateLibrary>
1039 <library>jersey2</library>
1040 <groupId>${project.groupId}</groupId>
1041 <artifactId>${project.artifactId}-java-sdk</artifactId>
1042 <artifactVersion>${project.version}</artifactVersion>
1043 <modelPackage>${project.groupId}.${project.artifactId}.client.model</modelPackage>
1044 <apiPackage>${project.groupId}.${project.artifactId}.client.api</apiPackage>
1045 <invokerPackage>${project.groupId}.${project.artifactId}.client.invoker</invokerPackage>
1051 <groupId>org.codehaus.mojo</groupId>
1052 <artifactId>exec-maven-plugin</artifactId>
1053 <version>1.5.0</version>
1056 <id>swagger-generate-sources</id>
1057 <phase>generate-sources</phase>
1062 <executable>${project.build.directory}${file.separator}${swagger.sdk.script.file}</executable>
1068 <groupId>org.apache.maven.plugins</groupId>
1069 <artifactId>maven-clean-plugin</artifactId>
1070 <version>3.0.0</version>
1073 <id>clean-generated-files</id>
1074 <phase>generate-sources</phase>
1081 <directory>${project.build.directory}/generated-sources</directory>
1092 <groupId>org.onap.msb.swagger-sdk</groupId>
1093 <artifactId>swagger-sdk</artifactId>
1094 <version>1.0.0</version>
1099 <id>sonar-jacoco-aggregate</id>
1102 <name>onap.jacoco.aggregateFile</name>
1108 <groupId>org.jacoco</groupId>
1109 <artifactId>jacoco-maven-plugin</artifactId>
1116 <phase>generate-resources</phase>
1118 <destFile>${onap.jacoco.aggregateFile}</destFile>
1121 <directory>${project.basedir}</directory>
1123 <include>**/target/code-coverage/*.exec</include>
1134 <!-- End of profiles from ONAP oparent -->
1137 <id>yang-compile</id>
1140 <exists>src/main/yang</exists>
1146 <groupId>org.opendaylight.yangtools</groupId>
1147 <artifactId>yang-maven-plugin</artifactId>
1148 <version>3.0.11</version>
1151 <groupId>org.opendaylight.mdsal</groupId>
1152 <artifactId>maven-sal-api-gen-plugin</artifactId>
1153 <version>${odl.mdsal.model.version}</version>
1155 <scope>compile</scope>
1158 <groupId>org.opendaylight.netconf</groupId>
1159 <artifactId>sal-rest-docgen-maven</artifactId>
1160 <version>${odl.netconf.sal.rest.docgen.version}</version>
1168 <goal>generate-sources</goal>
1171 <yangFilesRootDir>${yang.file.directory}</yangFilesRootDir>
1174 <codeGeneratorClass>org.opendaylight.mdsal.binding.maven.api.gen.plugin.CodeGeneratorImpl</codeGeneratorClass>
1175 <outputBaseDir>${salGeneratorPath}</outputBaseDir>
1178 <codeGeneratorClass>org.opendaylight.netconf.sal.rest.doc.maven.StaticDocGenerator</codeGeneratorClass>
1179 <outputBaseDir>target/swagger</outputBaseDir>
1182 <inspectDependencies>true</inspectDependencies>