Bug 1909: fix maven-bundle-plugin version
[openflowplugin.git] / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
3     <modelVersion>4.0.0</modelVersion>
4     <parent>
5         <groupId>org.opendaylight.odlparent</groupId>
6         <artifactId>odlparent</artifactId>
7         <version>1.4.2-SNAPSHOT</version>
8         <relativePath/>
9     </parent>
10     <prerequisites>
11         <maven>3.0</maven>
12     </prerequisites>
13     <groupId>org.opendaylight.openflowplugin</groupId>
14     <artifactId>openflowplugin-parent</artifactId>
15     <version>0.0.3-SNAPSHOT</version>
16     <packaging>pom</packaging>
17
18     <scm>
19       <connection>scm:git:ssh://git.opendaylight.org:29418/openflowplugin.git</connection>
20       <developerConnection>scm:git:ssh://git.opendaylight.org:29418/openflowplugin.git</developerConnection>
21       <url>https://wiki.opendaylight.org/view/OpenDaylight_OpenFlow_Plugin:Main</url>
22       <tag>HEAD</tag>
23     </scm>
24
25     <distributionManagement>
26       <!-- OpenDayLight Released artifact -->
27       <repository>
28         <id>opendaylight-release</id>
29         <url>${nexusproxy}/repositories/opendaylight.release</url>
30       </repository>
31       <!-- OpenDayLight Snapshot artifact -->
32       <snapshotRepository>
33         <id>opendaylight-snapshot</id>
34         <url>${nexusproxy}/repositories/opendaylight.snapshot</url>
35       </snapshotRepository>
36       <!-- Site deployment -->
37       <!-- site>
38            <id>website</id>
39            <url>${sitedeploy}</url>
40            </site -->
41     </distributionManagement>
42
43     <properties>
44       <project.build.sourceEncoding>utf-8</project.build.sourceEncoding>
45       <mdsal.version>1.1-SNAPSHOT</mdsal.version>
46       <nexusproxy>http://nexus.opendaylight.org/content</nexusproxy>
47       <openflowjava.version>0.5-SNAPSHOT</openflowjava.version>
48       <controller.model.version>1.1-SNAPSHOT</controller.model.version>
49       <sal.api.version>0.8.1-SNAPSHOT</sal.api.version>
50       <sal.connection.api.version>0.1.2-SNAPSHOT</sal.connection.api.version>
51       <sal.common.util.version>1.1-SNAPSHOT</sal.common.util.version>
52       <netconf.parent.version>0.2.5-SNAPSHOT</netconf.parent.version>
53       <config.parent.version>0.2.5-SNAPSHOT</config.parent.version>
54       <build.helper.version>1.8</build.helper.version>
55       <xtend.dstdir>src/main/xtend-gen</xtend.dstdir>
56       <jmxGeneratorPath>src/main/yang-gen-config</jmxGeneratorPath>
57       <salGeneratorPath>src/main/yang-gen-sal</salGeneratorPath>
58       <exi.nagasena.version>0000.0002.0038.0</exi.nagasena.version>
59       <controller.distribution.version>0.1.2-SNAPSHOT</controller.distribution.version>
60
61       <!-- Sonar config -->
62       <sonar-jacoco-listeners.version>2.4</sonar-jacoco-listeners.version>
63       <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
64       <sonar.jacoco.reportPath>target/code-coverage/jacoco.exec</sonar.jacoco.reportPath>
65       <sonar.jacoco.itReportPath>target/code-coverage/jacoco-it.exec</sonar.jacoco.itReportPath>
66       <sonar.profile>Sonar way with Findbugs</sonar.profile>
67
68       <karaf.distro.empty.version>1.4.2-SNAPSHOT</karaf.distro.empty.version>
69       <yang.binding.version>0.6.2-SNAPSHOT</yang.binding.version>
70     </properties>
71
72     <dependencyManagement>
73       <dependencies>
74          <dependency>
75             <groupId>org.opendaylight.yangtools</groupId>
76             <artifactId>yang-binding</artifactId>
77             <version>${yang.binding.version}</version>
78         </dependency>
79           <dependency>
80               <groupId>org.opendaylight.openflowplugin</groupId>
81               <artifactId>openflowplugin-api</artifactId>
82               <version>${project.version}</version>
83           </dependency>
84         <dependency>
85           <groupId>org.opendaylight.openflowjava</groupId>
86           <artifactId>openflow-protocol-impl</artifactId>
87           <version>${openflowjava.version}</version>
88         </dependency>
89         <dependency>
90           <groupId>org.opendaylight.openflowjava</groupId>
91           <artifactId>openflow-protocol-api</artifactId>
92           <version>${openflowjava.version}</version>
93         </dependency>
94         <dependency>
95           <groupId>org.opendaylight.openflowjava</groupId>
96           <artifactId>openflow-protocol-spi</artifactId>
97           <version>${openflowjava.version}</version>
98         </dependency>
99         <dependency>
100           <groupId>org.opendaylight.openflowjava</groupId>
101           <artifactId>util</artifactId>
102           <version>${openflowjava.version}</version>
103         </dependency>
104         <dependency>
105           <groupId>org.opendaylight.openflowjava</groupId>
106           <artifactId>simple-client</artifactId>
107           <version>${openflowjava.version}</version>
108         </dependency>
109         <dependency>
110           <groupId>org.opendaylight.controller.model</groupId>
111           <artifactId>model-flow-base</artifactId>
112           <version>${controller.model.version}</version>
113         </dependency>
114         <dependency>
115           <groupId>org.opendaylight.controller.model</groupId>
116           <artifactId>model-flow-service</artifactId>
117           <version>${controller.model.version}</version>
118         </dependency>
119         <dependency>
120           <groupId>org.opendaylight.controller.model</groupId>
121           <artifactId>model-flow-statistics</artifactId>
122           <version>${controller.model.version}</version>
123         </dependency>
124         <dependency>
125           <groupId>org.opendaylight.controller.model</groupId>
126           <artifactId>model-inventory</artifactId>
127           <version>${controller.model.version}</version>
128         </dependency>
129         <dependency>
130           <groupId>org.opendaylight.controller</groupId>
131           <artifactId>sal-binding-api</artifactId>
132           <version>${controller.model.version}</version>
133         </dependency>
134         <dependency>
135             <groupId>org.opendaylight.controller</groupId>
136             <artifactId>liblldp</artifactId>
137             <version>${sal.api.version}</version>
138         </dependency>
139         <dependency>
140             <groupId>org.opendaylight.controller</groupId>
141             <artifactId>sal-common-util</artifactId>
142             <version>${controller.model.version}</version>
143         </dependency>
144         <!-- IT -->
145         <dependency>
146             <groupId>org.opendaylight.controller</groupId>
147             <artifactId>sal-common-util</artifactId>
148             <version>${sal.common.util.version}</version>
149         </dependency>
150         <dependency>
151             <groupId>org.opendaylight.controller</groupId>
152             <artifactId>config-netconf-connector</artifactId>
153             <version>${netconf.parent.version}</version>
154         </dependency>
155         <dependency>
156             <groupId>org.opendaylight.controller</groupId>
157             <artifactId>sal-binding-it</artifactId>
158             <version>${controller.model.version}</version>
159         </dependency>
160         <dependency>
161             <groupId>org.opendaylight.controller</groupId>
162             <artifactId>sal-binding-broker-impl</artifactId>
163             <version>${controller.model.version}</version>
164         </dependency>
165         <dependency>
166             <groupId>org.opendaylight.controller</groupId>
167             <artifactId>config-manager</artifactId>
168             <version>${config.parent.version}</version>
169         </dependency>
170           <dependency>
171               <groupId>org.opendaylight.controller</groupId>
172               <artifactId>config-api</artifactId>
173               <version>${config.parent.version}</version>
174           </dependency>
175         <dependency>
176             <groupId>org.opendaylight.yangtools.thirdparty</groupId>
177             <artifactId>antlr4-runtime-osgi-nohead</artifactId>
178             <version>4.0</version>
179         </dependency>
180         <dependency>
181           <groupId>org.opendaylight.controller</groupId>
182           <artifactId>logback-config</artifactId>
183           <version>${config.parent.version}</version>
184         </dependency>
185         <dependency>
186           <groupId>org.opendaylight.controller</groupId>
187           <artifactId>config-persister-api</artifactId>
188           <version>${config.parent.version}</version>
189         </dependency>
190         <dependency>
191           <groupId>org.opendaylight.controller</groupId>
192           <artifactId>config-persister-impl</artifactId>
193           <version>${config.parent.version}</version>
194         </dependency>
195         <dependency>
196           <groupId>org.opendaylight.controller</groupId>
197           <artifactId>config-persister-file-xml-adapter</artifactId>
198           <version>${config.parent.version}</version>
199         </dependency>
200         <dependency>
201           <groupId>org.opendaylight.controller</groupId>
202           <artifactId>netconf-monitoring</artifactId>
203           <version>${netconf.parent.version}</version>
204         </dependency>
205         <dependency>
206           <groupId>org.opendaylight.controller</groupId>
207           <artifactId>netconf-client</artifactId>
208           <version>${netconf.parent.version}</version>
209         </dependency>
210         <dependency>
211           <groupId>org.opendaylight.controller</groupId>
212           <artifactId>netconf-impl</artifactId>
213           <version>${netconf.parent.version}</version>
214         </dependency>
215
216         <!-- thirdparty -->
217         <dependency>
218           <groupId>org.openexi</groupId>
219           <artifactId>nagasena</artifactId>
220           <version>${exi.nagasena.version}</version>
221         </dependency>
222         <dependency>
223           <groupId>org.openexi</groupId>
224           <artifactId>nagasena-rta</artifactId>
225           <version>${exi.nagasena.version}</version>
226         </dependency>
227         <dependency>
228           <groupId>org.opendaylight.controller.thirdparty</groupId>
229           <artifactId>ganymed</artifactId>
230           <version>1.1-SNAPSHOT</version>
231         </dependency>
232         <dependency>
233             <groupId>xml-apis</groupId>
234             <artifactId>xml-apis</artifactId>
235             <version>1.4.01</version>
236         </dependency>
237         <dependency>
238             <groupId>org.opendaylight.yangtools.thirdparty</groupId>
239             <artifactId>xtend-lib-osgi</artifactId>
240             <version>2.4.3</version>
241             <scope>test</scope>
242         </dependency>
243       </dependencies>
244     </dependencyManagement>
245
246     <dependencies>
247         <!-- Sonar -->
248         <dependency>
249             <groupId>org.codehaus.sonar-plugins.java</groupId>
250             <artifactId>sonar-jacoco-listeners</artifactId>
251             <version>${sonar-jacoco-listeners.version}</version>
252             <scope>test</scope>
253         </dependency>
254     </dependencies>
255
256     <build>
257         <plugins>
258             <plugin>
259                  <groupId>org.codehaus.mojo</groupId>
260                  <artifactId>build-helper-maven-plugin</artifactId>
261             </plugin>
262             <plugin>
263                 <groupId>org.jacoco</groupId>
264                 <artifactId>jacoco-maven-plugin</artifactId>
265                 <executions>
266                     <execution>
267                         <id>prepare-ut-agent</id>
268                         <phase>process-test-classes</phase>
269                         <goals>
270                             <goal>prepare-agent</goal>
271                         </goals>
272                         <configuration>
273                             <destFile>${sonar.jacoco.reportPath}</destFile>
274                             <propertyName>jacoco.agent.ut.arg</propertyName>
275                         </configuration>
276                     </execution>
277                     <execution>
278                         <id>prepare-it-agent</id>
279                         <phase>pre-integration-test</phase>
280                         <goals>
281                             <goal>prepare-agent</goal>
282                         </goals>
283                         <configuration>
284                             <destFile>${sonar.jacoco.itReportPath}</destFile>
285                             <propertyName>jacoco.agent.it.arg</propertyName>
286                         </configuration>
287                     </execution>
288                 </executions>
289             </plugin>
290         </plugins>
291         <pluginManagement>
292           <plugins>
293             <plugin>
294               <groupId>org.apache.maven.plugins</groupId>
295               <artifactId>maven-compiler-plugin</artifactId>
296               <configuration>
297                 <source>1.7</source>
298                 <target>1.7</target>
299               </configuration>
300             </plugin>
301             <plugin>
302               <groupId>org.ops4j.pax.exam</groupId>
303               <artifactId>maven-paxexam-plugin</artifactId>
304               <version>1.2.4</version>
305             </plugin>
306             <plugin>
307               <groupId>org.eclipse.xtend</groupId>
308               <artifactId>xtend-maven-plugin</artifactId>
309               <version>${xtend.version}</version>
310               <executions>
311                   <execution>
312                       <goals>
313                           <goal>compile</goal>
314                       </goals>
315                       <configuration>
316                           <outputDirectory>${xtend.dstdir}</outputDirectory>
317                       </configuration>
318                   </execution>
319               </executions>
320           </plugin>
321           <plugin>
322               <artifactId>maven-clean-plugin</artifactId>
323               <configuration>
324                   <filesets>
325                       <fileset>
326                           <directory>${xtend.dstdir}</directory>
327                           <includes>
328                               <include>**</include>
329                           </includes>
330                       </fileset>
331                       <fileset>
332                           <directory>${jmxGeneratorPath}</directory>
333                           <includes>
334                               <include>**</include>
335                           </includes>
336                       </fileset>
337                       <fileset>
338                           <directory>${salGeneratorPath}</directory>
339                           <includes>
340                               <include>**</include>
341                           </includes>
342                       </fileset>
343                   </filesets>
344               </configuration>
345             </plugin>
346           <plugin>
347              <groupId>org.codehaus.mojo</groupId>
348              <artifactId>build-helper-maven-plugin</artifactId>
349              <version>${build.helper.version}</version>
350              <executions>
351                 <execution>
352                    <id>add-source</id>
353                    <phase>generate-sources</phase>
354                    <goals>
355                       <goal>add-source</goal>
356                    </goals>
357                    <configuration>
358                       <sources>
359                          <source>${jmxGeneratorPath}</source>
360                          <source>${salGeneratorPath}</source>
361                          <source>${xtend.dstdir}</source>
362                       </sources>
363                    </configuration>
364                 </execution>
365              </executions>
366             </plugin>
367             <plugin>
368               <groupId>org.opendaylight.yangtools</groupId>
369               <artifactId>yang-maven-plugin</artifactId>
370               <version>${yang.binding.version}</version>
371             </plugin>
372             <plugin>
373               <groupId>org.apache.felix</groupId>
374               <artifactId>maven-bundle-plugin</artifactId>
375               <version>${maven.bundle.version}</version>
376               <extensions>true</extensions>
377               <configuration>
378                 <instructions>
379                   <Bundle-Name>${project.groupId}.${project.artifactId}</Bundle-Name>
380                 </instructions>
381                 <manifestLocation>${project.build.directory}/META-INF</manifestLocation>
382               </configuration>
383             </plugin>
384             <!-- Ignore/Execute plugin execution -->
385             <plugin>
386               <groupId>org.eclipse.m2e</groupId>
387               <artifactId>lifecycle-mapping</artifactId>
388               <version>1.0.0</version>
389               <configuration>
390                 <lifecycleMappingMetadata>
391                   <pluginExecutions>
392                     <pluginExecution>
393                       <pluginExecutionFilter>
394                         <groupId>org.codehaus.mojo</groupId>
395                         <artifactId>properties-maven-plugin</artifactId>
396                         <versionRange>[0.0,)</versionRange>
397                         <goals>
398                           <goal>set-system-properties</goal>
399                         </goals>
400                       </pluginExecutionFilter>
401                       <action>
402                         <ignore/>
403                       </action>
404                     </pluginExecution>
405                     <pluginExecution>
406                       <pluginExecutionFilter>
407                         <groupId>org.codehaus.enunciate</groupId>
408                         <artifactId>maven-enunciate-plugin</artifactId>
409                         <versionRange>[0.0,)</versionRange>
410                         <goals>
411                           <goal>docs</goal>
412                         </goals>
413                       </pluginExecutionFilter>
414                       <action>
415                         <ignore/>
416                       </action>
417                     </pluginExecution>
418                     <pluginExecution>
419                       <pluginExecutionFilter>
420                         <groupId>org.jacoco</groupId>
421                         <artifactId>jacoco-maven-plugin</artifactId>
422                         <versionRange>[0.0,)</versionRange>
423                         <goals>
424                           <goal>prepare-agent</goal>
425                           <goal>pre-test</goal>
426                           <goal>post-test</goal>
427                         </goals>
428                       </pluginExecutionFilter>
429                       <action>
430                         <ignore/>
431                       </action>
432                     </pluginExecution>
433                     <pluginExecution>
434                       <pluginExecutionFilter>
435                         <groupId>org.ops4j.pax.exam</groupId>
436                         <artifactId>maven-paxexam-plugin</artifactId>
437                         <versionRange>[1.2.4,)</versionRange>
438                         <goals>
439                           <goal>generate-depends-file</goal>
440                         </goals>
441                       </pluginExecutionFilter>
442                       <action>
443                         <execute>
444                           <runOnIncremental>false</runOnIncremental>
445                         </execute>
446                       </action>
447                     </pluginExecution>
448                     <pluginExecution>
449                       <pluginExecutionFilter>
450                         <groupId>org.apache.maven.plugins</groupId>
451                         <artifactId>maven-checkstyle-plugin</artifactId>
452                         <versionRange>[2.0,)</versionRange>
453                         <goals>
454                           <goal>check</goal>
455                         </goals>
456                       </pluginExecutionFilter>
457                       <action>
458                         <ignore/>
459                       </action>
460                     </pluginExecution>
461                     <pluginExecution>
462                       <pluginExecutionFilter>
463                         <groupId>org.opendaylight.yangtools</groupId>
464                         <artifactId>yang-maven-plugin</artifactId>
465                         <versionRange>[0.5,)</versionRange>
466                         <goals>
467                           <goal>generate-sources</goal>
468                         </goals>
469                       </pluginExecutionFilter>
470                       <action>
471                         <execute/>
472                       </action>
473                     </pluginExecution>
474                     <pluginExecution>
475                       <pluginExecutionFilter>
476                         <groupId>org.codehaus.groovy.maven</groupId>
477                         <artifactId>gmaven-plugin</artifactId>
478                         <versionRange>1.0</versionRange>
479                         <goals>
480                           <goal>execute</goal>
481                         </goals>
482                       </pluginExecutionFilter>
483                       <action>
484                         <ignore/>
485                       </action>
486                     </pluginExecution>
487                     <pluginExecution>
488                       <pluginExecutionFilter>
489                         <groupId>org.apache.maven.plugins</groupId>
490                         <artifactId>maven-enforcer-plugin</artifactId>
491                         <versionRange>${enforcer.version}</versionRange>
492                         <goals>
493                           <goal>enforce</goal>
494                         </goals>
495                       </pluginExecutionFilter>
496                       <action>
497                         <ignore/>
498                       </action>
499                     </pluginExecution>
500                   </pluginExecutions>
501                 </lifecycleMappingMetadata>
502               </configuration>
503             </plugin>
504             <plugin>
505               <groupId>org.apache.maven.plugins</groupId>
506               <artifactId>maven-failsafe-plugin</artifactId>
507               <configuration>
508                 <!-- Specific to generate mapping between tests and covered code -->
509                 <argLine>${jacoco.agent.it.arg}</argLine>
510                 <properties>
511                   <property>
512                     <name>listener</name>
513                     <value>org.sonar.java.jacoco.JUnitListener</value>
514                   </property>
515                 </properties>
516                 <!-- Let's put failsafe reports with surefire to have access to tests failures/success reports in sonar -->
517                 <reportsDirectory>${project.build.directory}/surefire-reports</reportsDirectory>
518               </configuration>
519             </plugin>
520             <plugin>
521               <groupId>org.apache.maven.plugins</groupId>
522               <artifactId>maven-surefire-plugin</artifactId>
523               <configuration>
524                 <!-- Specific to generate mapping between tests and covered code -->
525                 <argLine>${jacoco.agent.ut.arg}</argLine>
526                 <properties>
527                   <property>
528                     <name>listener</name>
529                     <value>org.sonar.java.jacoco.JUnitListener</value>
530                   </property>
531                 </properties>
532               </configuration>
533             </plugin>
534           </plugins>
535         </pluginManagement>
536     </build>
537
538     <profiles>
539       <profile>
540         <id>findbugsReport</id>
541         <reporting>
542           <plugins>
543             <plugin>
544               <groupId>org.apache.maven.plugins</groupId>
545               <artifactId>maven-project-info-reports-plugin</artifactId>
546               <version>2.7</version>
547               <configuration>
548                 <dependencyDetailsEnabled>false</dependencyDetailsEnabled>
549                 <dependencyLocationsEnabled>false</dependencyLocationsEnabled>
550               </configuration>
551               <reportSets>
552                 <reportSet>
553                   <reports>
554                     <report>index</report>
555                     <report>project-team</report>
556                     <report>license</report>
557                     <report>mailing-list</report>
558                     <report>plugin-management</report>
559                     <report>cim</report>
560                     <report>issue-tracking</report>
561                     <report>scm</report>
562                     <report>summary</report>
563                   </reports>
564                 </reportSet>
565               </reportSets>
566             </plugin>
567             <plugin>
568               <groupId>org.codehaus.mojo</groupId>
569               <artifactId>findbugs-maven-plugin</artifactId>
570               <version>2.5.2</version>
571             </plugin>
572             <plugin>
573               <groupId>org.apache.maven.plugins</groupId>
574               <artifactId>maven-pmd-plugin</artifactId>
575               <version>3.0.1</version>
576             </plugin>
577             <plugin>
578               <groupId>org.apache.maven.plugins</groupId>
579               <artifactId>maven-jxr-plugin</artifactId>
580               <version>2.3</version>
581             </plugin>
582           </plugins>
583         </reporting>
584       </profile>
585     </profiles>
586
587     <repositories>
588       <repository>
589         <id>opendaylight-snapshot</id>
590         <name>opendaylight-snapshot</name>
591         <url>http://nexus.opendaylight.org/content/repositories/opendaylight.snapshot</url>
592         <releases>
593           <enabled>false</enabled>
594         </releases>
595       </repository>
596       <repository>
597         <id>public</id>
598         <name>public</name>
599         <url>http://nexus.opendaylight.org/content/groups/public</url>
600         <snapshots>
601           <enabled>false</enabled>
602         </snapshots>
603       </repository>
604
605     </repositories>
606
607     <pluginRepositories>
608       <pluginRepository>
609         <id>opendaylight-central</id>
610         <name>opendaylight-central</name>
611         <url>http://nexus.opendaylight.org/content/repositories/public</url>
612         <snapshots>
613           <enabled>false</enabled>
614         </snapshots>
615       </pluginRepository>
616       <pluginRepository>
617         <id>opendaylight-snapshot</id>
618         <name>central2</name>
619         <url>http://nexus.opendaylight.org/content/repositories/opendaylight.snapshot</url>
620         <releases>
621           <enabled>false</enabled>
622         </releases>
623       </pluginRepository>
624     </pluginRepositories>
625
626     <modules>
627       <module>openflowplugin-api</module>
628       <module>openflowplugin</module>
629       <module>extension</module>
630       <module>distribution/base</module>
631       <module>distribution/cbench</module>
632       <module>distribution/karaf</module>
633       <module>openflowplugin-controller-config</module>
634       <module>openflowplugin-it</module>
635       <module>test-provider</module>
636       <module>drop-test</module>
637       <module>drop-test-karaf</module>
638       <module>test-common</module>
639       <module>features</module>
640       <module>samples/sample-consumer</module>
641       <module>samples/learning-switch</module>
642     <module>applications</module>
643   </modules>
644 </project>