Honeycomb 1.19.04-RC2
[honeycomb.git] / common / honeycomb-parent / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3   ~ Copyright (c) 2016 Cisco and/or its affiliates.
4   ~
5   ~ Licensed under the Apache License, Version 2.0 (the "License");
6   ~ you may not use this file except in compliance with the License.
7   ~ You may obtain a copy of the License at:
8   ~
9   ~     http://www.apache.org/licenses/LICENSE-2.0
10   ~
11   ~ Unless required by applicable law or agreed to in writing, software
12   ~ distributed under the License is distributed on an "AS IS" BASIS,
13   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14   ~ See the License for the specific language governing permissions and
15   ~ limitations under the License.
16   -->
17 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
18          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
19
20     <modelVersion>4.0.0</modelVersion>
21     <groupId>io.fd.honeycomb.common</groupId>
22     <artifactId>honeycomb-parent</artifactId>
23     <name>${project.artifactId}</name>
24     <version>1.19.04-RC2</version>
25     <packaging>pom</packaging>
26     <prerequisites>
27         <maven>3.1.1</maven>
28     </prerequisites>
29
30     <properties>
31         <nexusproxy>http://nexus.fd.io/content</nexusproxy>
32         <odl.nexusproxy>https://nexus.opendaylight.org/content</odl.nexusproxy>
33
34         <!-- Sonar configuration -->
35         <!-- Note: This list should match jacoco-maven-plugin's exclusion list below -->
36         <sonar.exclusions>**/gen/**,**/generated-sources/**,**/yang-gen**</sonar.exclusions>
37         <!-- https://github.com/SonarSource/sonar-scanning-examples/blob/master/sonarqube-scanner-maven/pom.xml#L24 -->
38         <!-- The destination file for the code coverage report has to be set to the same value
39              in the parent pom and in each module pom. Then JaCoCo will add up information in
40              the same report, so that, it will give the cross-module code coverage. -->
41         <!-- We store jacoco-it.exec in honeycomb-parent because it is built first,
42              so mvn clean won't remove aggregated report. -->
43         <sonar.jacoco.itReportPath>${maven.multiModuleProjectDirectory}/common/honeycomb-parent/target/jacoco-it.exec</sonar.jacoco.itReportPath>
44
45         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
46         <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
47
48         <!-- ODL dependencies -->
49         <odl.yangtools.version>2.1.8</odl.yangtools.version>
50         <odl.mdsal.version>3.0.6</odl.mdsal.version>
51         <odl.mdsal.controller.version>1.9.0</odl.mdsal.controller.version>
52         <odl.mdsalmodel.version>0.13.2</odl.mdsalmodel.version>
53         <odl.netconf.version>1.6.0</odl.netconf.version>
54         <odl.restconf.version>1.9.0</odl.restconf.version>
55         <odl.salGenerator.version>0.13.2</odl.salGenerator.version>
56         <odl.bgpcep.version>0.11.0</odl.bgpcep.version>
57         <salGeneratorPath>target/generated-sources/mdsal-binding</salGeneratorPath>
58
59         <!-- common dependencies -->
60         <junit.version>4.12</junit.version>
61         <mockito.version>2.23.4</mockito.version>
62         <hamcrest.version>2.1</hamcrest.version>
63         <guava.version>23.6-jre</guava.version>
64         <jsr305.version>3.0.2</jsr305.version>
65         <slf4j.version>1.7.25</slf4j.version>
66         <jdt.version>2.2.200</jdt.version>
67
68         <!-- plugins -->
69         <checkstyle.plugin.version>3.0.0</checkstyle.plugin.version>
70         <checkstyle.version>8.18</checkstyle.version>
71         <maven.javadoc.version>3.0.1</maven.javadoc.version>
72         <jacoco.version>0.8.2</jacoco.version>
73         <enforcer.version>3.0.0-M2</enforcer.version>
74         <maven.compile.plugin.version>3.8.0</maven.compile.plugin.version>
75         <maven.bundle.version>4.1.0</maven.bundle.version>
76
77         <!-- checkstyle -->
78         <checkstyle.header.file>APACHE_HEADER.txt</checkstyle.header.file>
79
80         <!-- site -->
81         <!-- skip location check = makes site exec faster -->
82         <dependency.locations.enabled>false</dependency.locations.enabled>
83         <project.info.report.version>2.9</project.info.report.version>
84         <maven.resources.version>3.0.1</maven.resources.version>
85         <maven.site.version>3.4</maven.site.version>
86         <!-- adoc -->
87         <asciidoctor.maven.plugin.version>1.5.3</asciidoctor.maven.plugin.version>
88         <asciidoctorj.diagram.version>1.3.1</asciidoctorj.diagram.version>
89
90         <!-- groovy -->
91         <maven.groovy.version>1.6.2</maven.groovy.version>
92         <groovy.version>2.5.5</groovy.version>
93         <groovy.eclipse.compiler.version>3.3.0-01</groovy.eclipse.compiler.version>
94         <groovy.eclipse.batch.version>2.5.6-02</groovy.eclipse.batch.version>
95
96         <docs.base.url>https://nexus.fd.io/content/sites/site</docs.base.url>
97         <docs.hc.folder>io/fd/honeycomb</docs.hc.folder>
98     </properties>
99
100     <organization>
101         <name>fd.io</name>
102         <url>https://fd.io</url>
103     </organization>
104
105     <licenses>
106         <license>
107             <name>Apache License, Version 2.0</name>
108             <url>http://www.apache.org/licenses/LICENSE-2.0</url>
109         </license>
110     </licenses>
111
112     <issueManagement>
113         <system>JIRA</system>
114         <url>https://jira.fd.io/</url>
115     </issueManagement>
116
117     <ciManagement>
118         <system>Jenkins</system>
119         <url>https://jenkins.fd.io/</url>
120     </ciManagement>
121
122     <mailingLists>
123         <mailingList>
124             <name>HC dev</name>
125             <post>honeycomb-dev@fd.io</post>
126             <subscribe>https://lists.fd.io/mailman/listinfo/honeycomb-dev</subscribe>
127             <archive>https://lists.fd.io/pipermail/honeycomb-dev/</archive>
128         </mailingList>
129     </mailingLists>
130
131     <dependencyManagement>
132         <dependencies>
133             <!-- ODL -->
134             <dependency>
135                 <groupId>org.opendaylight.yangtools</groupId>
136                 <artifactId>yangtools-artifacts</artifactId>
137                 <version>${odl.yangtools.version}</version>
138                 <type>pom</type>
139                 <scope>import</scope>
140             </dependency>
141             <dependency>
142                 <groupId>org.opendaylight.controller</groupId>
143                 <artifactId>mdsal-artifacts</artifactId>
144                 <version>${odl.mdsal.controller.version}</version>
145                 <type>pom</type>
146                 <scope>import</scope>
147             </dependency>
148             <dependency>
149                 <groupId>org.opendaylight.mdsal</groupId>
150                 <artifactId>mdsal-artifacts</artifactId>
151                 <version>${odl.mdsal.version}</version>
152                 <type>pom</type>
153                 <scope>import</scope>
154             </dependency>
155             <dependency>
156                 <groupId>org.opendaylight.netconf</groupId>
157                 <artifactId>netconf-artifacts</artifactId>
158                 <version>${odl.netconf.version}</version>
159                 <type>pom</type>
160                 <scope>import</scope>
161             </dependency>
162             <dependency>
163                 <groupId>org.opendaylight.netconf</groupId>
164                 <artifactId>restconf-artifacts</artifactId>
165                 <version>${odl.restconf.version}</version>
166                 <type>pom</type>
167                 <scope>import</scope>
168             </dependency>
169             <dependency>
170                 <groupId>org.opendaylight.mdsal.model</groupId>
171                 <artifactId>mdsal-model-artifacts</artifactId>
172                 <version>${odl.mdsalmodel.version}</version>
173                 <type>pom</type>
174                 <scope>import</scope>
175             </dependency>
176             <dependency>
177                 <groupId>org.opendaylight.bgpcep</groupId>
178                 <artifactId>bgpcep-artifacts</artifactId>
179                 <version>${odl.bgpcep.version}</version>
180                 <type>pom</type>
181                 <scope>import</scope>
182             </dependency>
183
184             <!-- Utilities -->
185             <dependency>
186                 <groupId>com.google.guava</groupId>
187                 <artifactId>guava</artifactId>
188                 <version>${guava.version}</version>
189             </dependency>
190             <dependency>
191                 <groupId>com.google.code.findbugs</groupId>
192                 <artifactId>jsr305</artifactId>
193                 <version>${jsr305.version}</version>
194             </dependency>
195             <dependency>
196                 <groupId>org.slf4j</groupId>
197                 <artifactId>slf4j-api</artifactId>
198                 <version>${slf4j.version}</version>
199             </dependency>
200             <dependency>
201                 <groupId>org.eclipse.jdt</groupId>
202                 <artifactId>org.eclipse.jdt.annotation</artifactId>
203                 <version>${jdt.version}</version>
204             </dependency>
205
206             <!-- Testing Dependencies -->
207             <dependency>
208                 <groupId>junit</groupId>
209                 <artifactId>junit</artifactId>
210                 <version>${junit.version}</version>
211                 <scope>test</scope>
212             </dependency>
213             <!-- Dont use mockito-all, it has problematic dependency on harmcrest
214                 More details here - https://github.com/mockito/mockito/issues/324-->
215             <dependency>
216                 <groupId>org.mockito</groupId>
217                 <artifactId>mockito-core</artifactId>
218                 <version>${mockito.version}</version>
219                 <scope>test</scope>
220             </dependency>
221             <dependency>
222                 <groupId>org.hamcrest</groupId>
223                 <artifactId>hamcrest</artifactId>
224                 <version>${hamcrest.version}</version>
225                 <scope>test</scope>
226             </dependency>
227         </dependencies>
228     </dependencyManagement>
229
230     <build>
231         <pluginManagement>
232             <plugins>
233                 <!-- checkstyle -->
234                 <plugin>
235                     <artifactId>maven-checkstyle-plugin</artifactId>
236                     <version>${checkstyle.plugin.version}</version>
237                     <configuration>
238                         <!--TODO HONEYCOMB-155 enable fail on violation after issues are resolved + set in as errors in checkstyle xml-->
239                         <failOnViolation>false</failOnViolation>
240                         <failsOnError>true</failsOnError>
241                         <consoleOutput>true</consoleOutput>
242                         <includeTestResources>true</includeTestResources>
243                         <includeTestSourceDirectory>true</includeTestSourceDirectory>
244                         <includes>**\/*.java,**\/*.xml,**\/*.ini,**\/*.sh,**\/*.bat,**\/*.yang</includes>
245                         <excludes>**\/target\/,
246                             **\/bin\/,
247                             **\/target-ide\/,
248                             **\/src/main/yang-gen-config\/,
249                             org/opendaylight/yang/gen/**,
250                             **\/src/main/yang-gen-sal\/,
251                             **\/src/main/xtend-gen\/,
252                             **\/src/main/yang\/,
253                             **\/archetype-resources\/,
254                             **\/.idea\/</excludes>
255                     </configuration>
256                     <executions>
257                         <!-- Override license check configuration to fit Honeycomb coding style-->
258                         <execution>
259                             <id>check-license</id>
260                             <goals>
261                                 <goal>check</goal>
262                             </goals>
263                             <phase>process-sources</phase>
264                             <configuration>
265                                 <configLocation>honeycomb-checkstyle-license.xml</configLocation>
266                                 <outputFile>${project.build.directory}/checkstyle-license-result.xml</outputFile>
267                             </configuration>
268                         </execution>
269                         <!-- Add logging checks from yangtools -->
270                         <execution>
271                             <id>check-logging</id>
272                             <goals>
273                                 <goal>check</goal>
274                             </goals>
275                             <phase>process-sources</phase>
276                             <configuration>
277                                 <configLocation>honeycomb-checkstyle-logging.xml</configLocation>
278                                 <sourceDirectories>
279                                     <sourceDirectory>${project.basedir}</sourceDirectory>
280                                 </sourceDirectories>
281
282                                 <outputFile>${project.build.directory}/checkstyle-logging-result.xml</outputFile>
283                             </configuration>
284                         </execution>
285                         <!-- Check HC's coding style -->
286                         <execution>
287                             <goals>
288                                 <goal>check</goal>
289                             </goals>
290                             <phase>process-sources</phase>
291                             <configuration>
292                                 <configLocation>honeycomb-checkstyle.xml</configLocation>
293                             </configuration>
294                         </execution>
295                     </executions>
296                     <dependencies>
297                         <dependency>
298                             <groupId>io.fd.honeycomb.common</groupId>
299                             <artifactId>honeycomb-checkstyle</artifactId>
300                             <!-- Hardcoded version to prevent archetype generated projects to use their own project version -->
301                             <version>1.19.04-RC2</version>
302                         </dependency>
303                         <!-- Necessary for logging checks -->
304                         <dependency>
305                             <groupId>org.opendaylight.yangtools</groupId>
306                             <artifactId>checkstyle-logging</artifactId>
307                             <version>${odl.yangtools.version}</version>
308                         </dependency>
309                         <!-- Needed by ODL's checkstyle-logging -->
310                         <dependency>
311                             <groupId>com.puppycrawl.tools</groupId>
312                             <artifactId>checkstyle</artifactId>
313                             <version>${checkstyle.version}</version>
314                         </dependency>
315                     </dependencies>
316                 </plugin>
317                 <!-- Deactivate strict java8 checks -->
318                 <!-- TODO HONEYCOMB-156 fix all the javadoc offenders of doclint -->
319                 <plugin>
320                     <groupId>org.apache.maven.plugins</groupId>
321                     <artifactId>maven-javadoc-plugin</artifactId>
322                     <version>${maven.javadoc.version}</version>
323                     <configuration>
324                         <source>8</source>
325                         <additionalparam>-Xdoclint:none</additionalparam>
326                     </configuration>
327                     <executions>
328                         <execution>
329                             <id>attach-javadocs</id>
330                             <goals>
331                                 <goal>jar</goal>
332                             </goals>
333                         </execution>
334                     </executions>
335                 </plugin>
336                 <!-- Sonar -->
337                 <!-- If Maven encounters a plugin with no version declaration, it will use the LATEST version.
338                      which might not be compatible with Sonar server (fd.io uses 6.7.3 currently).
339                      Therefore it is recommended to lock down version of Sonar plugin:
340                      http://blog.sonatype.com/2008/04/maven-209-released/
341                      -->
342                 <plugin>
343                     <groupId>org.sonarsource.scanner.maven</groupId>
344                     <artifactId>sonar-maven-plugin</artifactId>
345                     <version>3.4.1.1170</version>
346                 </plugin>
347                 <!-- jacoco test coverage for sonar -->
348                 <plugin>
349                     <groupId>org.jacoco</groupId>
350                     <artifactId>jacoco-maven-plugin</artifactId>
351                     <version>${jacoco.version}</version>
352                     <executions>
353                         <execution>
354                             <id>agent-for-ut</id>
355                             <goals>
356                                 <goal>prepare-agent</goal>
357                             </goals>
358                         </execution>
359                         <execution>
360                             <id>agent-for-it</id>
361                             <goals>
362                                 <goal>prepare-agent-integration</goal>
363                             </goals>
364                         </execution>
365                         <execution>
366                             <id>jacoco-site</id>
367                             <goals>
368                                 <goal>report</goal>
369                             </goals>
370                         </execution>
371                     </executions>
372                     <configuration>
373                         <!-- Appends data to existing JaCoCo execution file. Required for IT coverage.
374                              Will not affect UT which use separate files. -->
375                         <append>true</append>
376                         <excludes>
377                             <exclude>**/gen/**</exclude>
378                             <exclude>**/generated-sources/**</exclude>
379                             <exclude>**/yang-gen/**</exclude>
380                         </excludes>
381                     </configuration>
382                 </plugin>
383                 <!-- Enforce maven version -->
384                 <plugin>
385                     <groupId>org.apache.maven.plugins</groupId>
386                     <artifactId>maven-enforcer-plugin</artifactId>
387                     <version>${enforcer.version}</version>
388                     <executions>
389                         <execution>
390                             <id>enforce-maven</id>
391                             <configuration>
392                                 <rules>
393                                     <requireMavenVersion>
394                                         <version>3.1.1</version>
395                                     </requireMavenVersion>
396                                 </rules>
397                             </configuration>
398                             <goals>
399                                 <goal>enforce</goal>
400                             </goals>
401                         </execution>
402                     </executions>
403                 </plugin>
404                 <!-- Compile with google static analysis tool: error_prone -->
405                 <plugin>
406                     <groupId>org.apache.maven.plugins</groupId>
407                     <artifactId>maven-compiler-plugin</artifactId>
408                     <version>${maven.compile.plugin.version}</version>
409                     <configuration>
410                         <!-- Use google's error-prone static analysis-->
411                         <!-- TODO reenable errorprone once it is able to be built using java 11 -->
412                         <!--<compilerId>javac-with-errorprone</compilerId>-->
413                         <forceJavacCompilerUse>true</forceJavacCompilerUse>
414                         <showWarnings>true</showWarnings>
415                         <source>1.8</source>
416                         <target>1.8</target>
417                     </configuration>
418                     <!--<dependencies>-->
419                         <!--<dependency>-->
420                             <!--<groupId>org.codehaus.plexus</groupId>-->
421                             <!--<artifactId>plexus-compiler-javac-errorprone</artifactId>-->
422                             <!--<version>2.8.5</version>-->
423                         <!--</dependency>-->
424                         <!--&lt;!&ndash; override plexus-compiler-javac-errorprone's dependency on-->
425                              <!--Error Prone with the latest version &ndash;&gt;-->
426                         <!--<dependency>-->
427                             <!--<groupId>com.google.errorprone</groupId>-->
428                             <!--<artifactId>error_prone_core</artifactId>-->
429                             <!--<version>2.3.2</version>-->
430                         <!--</dependency>-->
431                     <!--</dependencies>-->
432                 </plugin>
433                 <plugin>
434                     <groupId>org.apache.felix</groupId>
435                     <artifactId>maven-bundle-plugin</artifactId>
436                     <version>${maven.bundle.version}</version>
437                     <extensions>true</extensions>
438                 </plugin>
439                 <!-- Source jar -->
440                 <plugin>
441                     <groupId>org.apache.maven.plugins</groupId>
442                     <artifactId>maven-source-plugin</artifactId>
443                     <executions>
444                         <execution>
445                             <id>attach-sources</id>
446                             <goals>
447                                 <goal>jar</goal>
448                             </goals>
449                         </execution>
450                     </executions>
451                 </plugin>
452                 <!-- Site (from https://github.com/asciidoctor/asciidoctor-maven-examples/blob/master/asciidoc-maven-site-example/pom.xml) -->
453                 <!-- + https://github.com/asciidoctor/asciidoctor-maven-plugin -->
454                 <plugin>
455                     <groupId>org.apache.maven.plugins</groupId>
456                     <artifactId>maven-site-plugin</artifactId>
457                     <version>${maven.site.version}</version>
458                     <configuration>
459                         <generateReports>true</generateReports>
460                         <generateSitemap>true</generateSitemap>
461                         <relativizeDecorationLinks>false</relativizeDecorationLinks>
462                         <locales>en</locales>
463                         <inputEncoding>UTF-8</inputEncoding>
464                         <outputEncoding>UTF-8</outputEncoding>
465                         <siteDirectory>${project.basedir}</siteDirectory>
466                         <relativizeDecorationLinks>false</relativizeDecorationLinks>
467                         <asciidoc>
468                             <requires>
469                                 <require>asciidoctor-diagram</require>
470                             </requires>
471                             <!-- optional site-wide AsciiDoc attributes -->
472                             <attributes>
473                                 <source-highlighter>coderay</source-highlighter>
474                                 <coderay-css>style</coderay-css>
475                                 <icons>font</icons>
476                                 <sectanchors>true</sectanchors>
477                                 <idprefix/>
478                                 <idseparator>-</idseparator>
479                             </attributes>
480                         </asciidoc>
481                         <!-- Exclude partial docs that are included elsewhere -->
482                         <moduleExcludes>
483                             <asciidoc>**/_*.adoc</asciidoc>
484                         </moduleExcludes>
485                     </configuration>
486                     <dependencies>
487                         <dependency>
488                             <groupId>org.asciidoctor</groupId>
489                             <artifactId>asciidoctor-maven-plugin</artifactId>
490                             <version>${asciidoctor.maven.plugin.version}</version>
491                         </dependency>
492                         <dependency>
493                             <groupId>org.asciidoctor</groupId>
494                             <artifactId>asciidoctorj-diagram</artifactId>
495                             <version>${asciidoctorj.diagram.version}</version>
496                         </dependency>
497                     </dependencies>
498                 </plugin>
499                 <plugin>
500                     <groupId>org.codehaus.gmavenplus</groupId>
501                     <artifactId>gmavenplus-plugin</artifactId>
502                     <version>${maven.groovy.version}</version>
503                     <executions>
504                         <!-- Generate Readme.adoc if not present -->
505                         <execution>
506                             <id>generate-adoc</id>
507                             <phase>generate-resources</phase>
508                             <goals>
509                                 <goal>execute</goal>
510                             </goals>
511                             <configuration>
512                                 <!-- Generate module adoc documentation -->
513                                 <scripts>
514                                     <script>
515                                         <![CDATA[
516                                             import io.fd.honeycomb.common.scripts.ReadmeGenerator
517                                             ReadmeGenerator.checkReadme(project, properties, log)
518                                         ]]>
519                                     </script>
520                                 </scripts>
521                             </configuration>
522                         </execution>
523                         <!-- Fix generated html -->
524                         <execution>
525                             <id>fix-generated-site</id>
526                             <phase>site</phase>
527                             <goals>
528                                 <goal>execute</goal>
529                             </goals>
530                             <configuration>
531                                 <!-- Site generates wrong link to Readme.html, trying to point to Readme.html at root -->
532                                 <scripts>
533                                     <script>
534                                         <![CDATA[
535                                             import io.fd.honeycomb.common.scripts.ReadmeGenerator
536                                             ReadmeGenerator.fixSite(project, properties, log)
537                                         ]]>
538                                     </script>
539                                 </scripts>
540                             </configuration>
541                         </execution>
542                         <!-- copy generated schema pictures -->
543                         <execution>
544                             <id>copy-generated-pictures</id>
545                             <phase>site</phase>
546                             <goals>
547                                 <goal>execute</goal>
548                             </goals>
549                             <configuration>
550                                 <!-- Copies generated schema pictures from ascii-doctor folders to site folder-->
551                                 <scripts>
552                                     <script>
553                                         <![CDATA[
554                                             import io.fd.honeycomb.common.scripts.AsciiDocImgForwarder
555                                             AsciiDocImgForwarder.copyGeneratedImages(project, properties, log)
556                                         ]]>
557                                     </script>
558                                 </scripts>
559                             </configuration>
560                         </execution>
561                     </executions>
562                     <dependencies>
563                         <dependency>
564                             <groupId>org.codehaus.groovy</groupId>
565                             <artifactId>groovy-all</artifactId>
566                             <type>pom</type>
567                             <version>${groovy.version}</version>
568                         </dependency>
569                         <dependency>
570                             <groupId>io.fd.honeycomb.doc</groupId>
571                             <artifactId>asciidoc-scripts</artifactId>
572                             <version>1.19.04-RC2</version>
573                         </dependency>
574                     </dependencies>
575                 </plugin>
576             </plugins>
577         </pluginManagement>
578         <plugins>
579             <plugin>
580                 <artifactId>maven-enforcer-plugin</artifactId>
581             </plugin>
582             <plugin>
583                 <artifactId>maven-source-plugin</artifactId>
584             </plugin>
585             <plugin>
586                 <artifactId>maven-javadoc-plugin</artifactId>
587             </plugin>
588             <plugin>
589                 <artifactId>maven-checkstyle-plugin</artifactId>
590             </plugin>
591             <plugin>
592                 <artifactId>maven-dependency-plugin</artifactId>
593             </plugin>
594             <plugin>
595                 <artifactId>maven-compiler-plugin</artifactId>
596             </plugin>
597             <plugin>
598                 <groupId>org.jacoco</groupId>
599                 <artifactId>jacoco-maven-plugin</artifactId>
600             </plugin>
601             <plugin>
602                 <groupId>org.apache.felix</groupId>
603                 <artifactId>maven-bundle-plugin</artifactId>
604             </plugin>
605             <plugin>
606                 <groupId>org.codehaus.gmavenplus</groupId>
607                 <artifactId>gmavenplus-plugin</artifactId>
608             </plugin>
609         </plugins>
610
611         <!-- To support site push-->
612         <extensions>
613             <extension>
614                 <groupId>org.apache.maven.wagon</groupId>
615                 <artifactId>wagon-webdav-jackrabbit</artifactId>
616                 <version>2.9</version>
617             </extension>
618         </extensions>
619     </build>
620
621     <reporting>
622         <plugins>
623             <plugin>
624                 <groupId>org.apache.maven.plugins</groupId>
625                 <artifactId>maven-project-info-reports-plugin</artifactId>
626                 <version>${project.info.report.version}</version>
627                 <reportSets>
628                     <reportSet>
629                         <reports>
630                             <report>index</report>
631                             <report>summary</report>
632                             <report>modules</report>
633                             <report>cim</report>
634                             <report>dependencies</report>
635                             <report>distribution-management</report>
636                             <report>mailing-list</report>
637                             <report>issue-tracking</report>
638                             <report>license</report>
639                             <report>scm</report>
640                         </reports>
641                     </reportSet>
642                 </reportSets>
643             </plugin>
644             <plugin>
645                 <groupId>org.apache.maven.plugins</groupId>
646                 <artifactId>maven-javadoc-plugin</artifactId>
647                 <version>${maven.javadoc.version}</version>
648                 <reportSets>
649                     <reportSet>
650                         <id>default</id>
651                         <reports>
652                             <report>javadoc-no-fork</report>
653                         </reports>
654                     </reportSet>
655                 </reportSets>
656                 <configuration>
657                     <additionalparam>-Xdoclint:none</additionalparam>
658                 </configuration>
659             </plugin>
660             <plugin>
661                 <groupId>org.apache.maven.plugins</groupId>
662                 <artifactId>maven-resources-plugin</artifactId>
663                 <version>${maven.resources.version}</version>
664             </plugin>
665         </plugins>
666     </reporting>
667
668     <distributionManagement>
669         <repository>
670             <id>fdio-release</id>
671             <url>${nexusproxy}/repositories/fd.io.release/</url>
672         </repository>
673         <snapshotRepository>
674             <id>fdio-snapshot</id>
675             <url>${nexusproxy}/repositories/fd.io.snapshot/</url>
676         </snapshotRepository>
677         <site>
678             <id>fdio-site</id>
679             <url>dav:${docs.base.url}/${docs.hc.folder}/${project.version}</url>
680         </site>
681     </distributionManagement>
682
683     <repositories>
684         <!-- Using only ODL stable releases -->
685         <repository>
686             <releases>
687                 <enabled>true</enabled>
688                 <updatePolicy>never</updatePolicy>
689             </releases>
690             <snapshots>
691                 <enabled>false</enabled>
692             </snapshots>
693             <id>opendaylight-mirror</id>
694             <name>opendaylight-mirror</name>
695             <url>${odl.nexusproxy}/repositories/public/</url>
696         </repository>
697     </repositories>
698 </project>