Merge "Adjusted OVSDB features to enable the Pax-exam tests"
[ovsdb.git] / commons / parent / 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
5   <parent>
6     <groupId>org.opendaylight.odlparent</groupId>
7     <artifactId>odlparent</artifactId>
8     <version>1.4.2-SNAPSHOT</version>
9     <relativePath></relativePath>
10   </parent>
11
12   <groupId>org.opendaylight.ovsdb</groupId>
13   <artifactId>commons</artifactId>
14   <name>OVSDB Parent POM</name>
15   <version>1.2.0-SNAPSHOT</version>
16   <packaging>pom</packaging>
17   <prerequisites>
18     <maven>3.0</maven>
19   </prerequisites>
20
21   <properties>
22     <!-- ODL repository / plugin repository -->
23     <nexusproxy>http://nexus.opendaylight.org/content</nexusproxy>
24     <!-- Surefire/Failsafe Arguments -->
25     <argLine>-Xmx1024m -XX:MaxPermSize=256m</argLine>
26     <!-- OVSB Component Versions -->
27     <ovsdb.library.version>1.0.0-SNAPSHOT</ovsdb.library.version>
28     <ovsdb.plugin.version>1.0.0-SNAPSHOT</ovsdb.plugin.version>
29     <plugin.shell.version>1.0.0-SNAPSHOT</plugin.shell.version>
30     <openstack.netvirt.version>1.0.0-SNAPSHOT</openstack.netvirt.version>
31     <openstack.netvirt.providers.version>1.0.0-SNAPSHOT</openstack.netvirt.providers.version>
32     <ovsdb.northbound.version>0.6.0-SNAPSHOT</ovsdb.northbound.version>
33     <schema.openvswitch.version>1.0.0-SNAPSHOT</schema.openvswitch.version>
34     <schema.hardwarevtep.version>1.0.0-SNAPSHOT</schema.hardwarevtep.version>
35     <ovsdb.ofextension.version>1.0.0-SNAPSHOT</ovsdb.ofextension.version>
36     <!-- Skip Coverage and IT by default -->
37     <skip.coverage>true</skip.coverage>
38     <skip.integrationtest>true</skip.integrationtest>
39     <skip.distribution>false</skip.distribution>
40     <!-- The directory where maven was executed -->
41     <root.directory>${env.PWD}</root.directory>
42     <!-- UT reports are per-module -->
43     <sonar.jacoco.reportPath>target/code-coverage/jacoco.exec</sonar.jacoco.reportPath>
44     <!-- IT report is aggregated to enable PAX Exam coverage to be logged -->
45     <sonar.jacoco.itReportPath>${root.directory}/target/code-coverage/jacoco-it.exec</sonar.jacoco.itReportPath>
46     <sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
47     <!-- Override the JaCoCo version in ODL Parent -->
48     <jacoco.version>0.6.4.201312101107</jacoco.version>
49     <!-- ODL Dependency Versions -->
50     <containermanager.version>0.5.2-SNAPSHOT</containermanager.version>
51     <forwardingrulesmanager.version>0.6.0-SNAPSHOT</forwardingrulesmanager.version>
52     <networkconfig.neutron.version>0.4.2-SNAPSHOT</networkconfig.neutron.version>
53     <clustering.services.version>0.5.1-SNAPSHOT</clustering.services.version>
54     <sal.version>0.8.1-SNAPSHOT</sal.version>
55     <sal.connection.version>0.1.2-SNAPSHOT</sal.connection.version>
56     <sal.networkconfiguration.version>0.0.3-SNAPSHOT</sal.networkconfiguration.version>
57     <mdsal.version>1.1-SNAPSHOT</mdsal.version>
58     <openflowplugin.version>0.0.3-SNAPSHOT</openflowplugin.version>
59     <openflowplugin-nicira.version>0.0.3-SNAPSHOT</openflowplugin-nicira.version>
60     <openflowplugin-extension.version>0.0.3-SNAPSHOT</openflowplugin-extension.version>
61     <openflowjava-nicira.version>0.0.3-SNAPSHOT</openflowjava-nicira.version>
62     <openflowjava-extension.version>0.0.3-SNAPSHOT</openflowjava-extension.version>
63     <openflowjava.version>0.5-SNAPSHOT</openflowjava.version>
64     <controller.config.version>0.2.5-SNAPSHOT</controller.config.version>
65     <switchmanager.api.version>0.7.1-SNAPSHOT</switchmanager.api.version>
66     <yangtools.version>0.6.2-SNAPSHOT</yangtools.version>
67     <northbound.commons.version>0.4.2-SNAPSHOT</northbound.commons.version>
68     <checkstyle.rules.version>0.0.3-SNAPSHOT</checkstyle.rules.version>
69     <!-- 3rd Pary Dependency Versions -->
70     <commons.collection.version>1.0</commons.collection.version>
71     <portlet.version>2.0</portlet.version>
72     <powermock.version>1.5.2</powermock.version>
73     <httpcomponents.version>4.2.1</httpcomponents.version>
74     <karaf.shell.version>3.0.0</karaf.shell.version>
75     <odl.karaf.base.version>1.4.2-SNAPSHOT</odl.karaf.base.version>
76     <nsf.version>0.4.2-SNAPSHOT</nsf.version>
77   </properties>
78
79   <dependencyManagement>
80     <dependencies>
81       <dependency>
82         <groupId>commons-collections</groupId>
83         <artifactId>commons-collections</artifactId>
84         <version>${commons.collection.version}</version>
85       </dependency>
86       <dependency>
87         <groupId>io.netty</groupId>
88         <artifactId>netty-all</artifactId>
89         <version>${netty.version}</version>
90       </dependency>
91       <dependency>
92         <groupId>javax.portlet</groupId>
93         <artifactId>portlet-api</artifactId>
94         <version>${portlet.version}</version>
95       </dependency>
96       <dependency>
97         <groupId>org.apache.httpcomponents</groupId>
98         <artifactId>httpcore-nio</artifactId>
99         <version>${httpcomponents.version}</version>
100       </dependency>
101       <dependency>
102         <groupId>org.powermock</groupId>
103         <artifactId>powermock-module-junit4</artifactId>
104         <version>${powermock.version}</version>
105       </dependency>
106       <dependency>
107         <groupId>org.powermock</groupId>
108         <artifactId>powermock-api-mockito</artifactId>
109         <version>${powermock.version}</version>
110       </dependency>
111       <dependency>
112         <groupId>org.opendaylight.controller</groupId>
113         <artifactId>clustering.services</artifactId>
114         <version>${clustering.services.version}</version>
115       </dependency>
116       <dependency>
117         <groupId>org.opendaylight.controller</groupId>
118         <artifactId>sal</artifactId>
119         <version>${sal.version}</version>
120       </dependency>
121       <dependency>
122         <groupId>org.opendaylight.controller</groupId>
123         <artifactId>sal.connection</artifactId>
124         <version>${sal.connection.version}</version>
125       </dependency>
126       <dependency>
127         <groupId>org.opendaylight.controller</groupId>
128         <artifactId>sal.networkconfiguration</artifactId>
129         <version>${sal.networkconfiguration.version}</version>
130       </dependency>
131       <dependency>
132         <groupId>org.opendaylight.controller</groupId>
133         <artifactId>containermanager</artifactId>
134         <version>${containermanager.version}</version>
135       </dependency>
136       <dependency>
137         <groupId>org.opendaylight.controller</groupId>
138         <artifactId>forwardingrulesmanager</artifactId>
139         <version>${forwardingrulesmanager.version}</version>
140       </dependency>
141       <dependency>
142         <groupId>org.opendaylight.controller</groupId>
143         <artifactId>networkconfig.neutron</artifactId>
144         <version>${networkconfig.neutron.version}</version>
145       </dependency>
146       <dependency>
147         <groupId>org.opendaylight.controller</groupId>
148         <artifactId>sal-binding-api</artifactId>
149         <version>${mdsal.version}</version>
150       </dependency>
151       <dependency>
152         <groupId>org.opendaylight.controller</groupId>
153         <artifactId>sal-common-util</artifactId>
154         <version>${mdsal.version}</version>
155       </dependency>
156       <dependency>
157         <groupId>org.opendaylight.controller</groupId>
158         <artifactId>switchmanager</artifactId>
159         <version>${switchmanager.api.version}</version>
160       </dependency>
161       <dependency>
162         <groupId>org.opendaylight.controller.model</groupId>
163         <artifactId>model-flow-base</artifactId>
164         <version>${mdsal.version}</version>
165       </dependency>
166       <dependency>
167         <groupId>org.opendaylight.controller.model</groupId>
168         <artifactId>model-flow-statistics</artifactId>
169         <version>${mdsal.version}</version>
170       </dependency>
171       <dependency>
172         <groupId>org.opendaylight.controller.model</groupId>
173         <artifactId>model-flow-service</artifactId>
174         <version>${mdsal.version}</version>
175       </dependency>
176       <dependency>
177         <groupId>org.opendaylight.controller.model</groupId>
178         <artifactId>model-inventory</artifactId>
179         <version>${mdsal.version}</version>
180       </dependency>
181       <dependency>
182         <groupId>org.opendaylight.yangtools</groupId>
183         <artifactId>yang-binding</artifactId>
184         <version>${yangtools.version}</version>
185       </dependency>
186       <dependency>
187         <groupId>org.opendaylight.yangtools</groupId>
188         <artifactId>features-test</artifactId>
189         <version>${yangtools.version}</version>
190         <scope>test</scope>
191       </dependency>
192       <dependency>
193         <groupId>org.opendaylight.controller</groupId>
194         <artifactId>opendaylight-karaf-empty</artifactId>
195         <version>1.4.2-SNAPSHOT</version>
196         <type>zip</type>
197       </dependency>
198       <dependency>
199         <groupId>org.opendaylight.controller</groupId>
200         <artifactId>commons.northbound</artifactId>
201         <version>${northbound.commons.version}</version>
202       </dependency>
203       <dependency>
204           <groupId>org.opendaylight.controller</groupId>
205           <artifactId>config-api</artifactId>
206           <version>${controller.config.version}</version>
207       </dependency>
208       <dependency>
209           <groupId>org.opendaylight.openflowjava</groupId>
210           <artifactId>openflow-protocol-api</artifactId>
211           <version>${openflowjava.version}</version>
212       </dependency>
213       <dependency>
214           <groupId>org.opendaylight.openflowjava</groupId>
215           <artifactId>openflow-protocol-spi</artifactId>
216           <version>${openflowjava.version}</version>
217       </dependency>
218         <dependency>
219             <groupId>org.opendaylight.openflowjava</groupId>
220             <artifactId>openflow-protocol-impl</artifactId>
221             <version>${openflowjava.version}</version>
222         </dependency>
223       <dependency>
224           <groupId>org.opendaylight.openflowjava</groupId>
225           <artifactId>util</artifactId>
226           <version>${openflowjava.version}</version>
227       </dependency>
228       <dependency>
229           <groupId>org.opendaylight.openflowplugin</groupId>
230           <artifactId>openflowjava-extension-nicira-api</artifactId>
231           <version>${openflowjava-nicira.version}</version>
232       </dependency>
233       <dependency>
234           <groupId>org.opendaylight.openflowplugin</groupId>
235           <artifactId>openflowjava-extension-nicira</artifactId>
236           <version>${openflowjava-nicira.version}</version>
237       </dependency>
238       <dependency>
239           <groupId>org.opendaylight.openflowplugin</groupId>
240           <artifactId>openflowplugin-extension-api</artifactId>
241           <version>${openflowplugin-extension.version}</version>
242       </dependency>
243       <dependency>
244           <groupId>org.opendaylight.openflowplugin</groupId>
245           <artifactId>openflowplugin-extension-nicira</artifactId>
246           <version>${openflowplugin-nicira.version}</version>
247       </dependency>
248       <dependency>
249           <groupId>org.opendaylight.openflowplugin</groupId>
250           <artifactId>openflowplugin</artifactId>
251           <version>${openflowplugin.version}</version>
252       </dependency>
253       <dependency>
254         <groupId>org.opendaylight.ovsdb</groupId>
255         <artifactId>library</artifactId>
256         <version>${ovsdb.library.version}</version>
257       </dependency>
258       <dependency>
259         <groupId>org.opendaylight.ovsdb</groupId>
260         <artifactId>plugin</artifactId>
261         <version>${ovsdb.plugin.version}</version>
262       </dependency>
263       <dependency>
264         <groupId>org.opendaylight.ovsdb</groupId>
265         <artifactId>openstack.net-virt</artifactId>
266         <version>${openstack.netvirt.version}</version>
267       </dependency>
268       <dependency>
269         <groupId>org.opendaylight.ovsdb</groupId>
270         <artifactId>openstack.net-virt-providers</artifactId>
271         <version>${openstack.netvirt.providers.version}</version>
272       </dependency>
273       <dependency>
274         <groupId>org.opendaylight.ovsdb</groupId>
275         <artifactId>northbound</artifactId>
276         <version>${ovsdb.northbound.version}</version>
277       </dependency>
278       <dependency>
279         <groupId>org.opendaylight.ovsdb</groupId>
280         <artifactId>schema.hardwarevtep</artifactId>
281         <version>${schema.hardwarevtep.version}</version>
282       </dependency>
283       <dependency>
284         <groupId>org.opendaylight.ovsdb</groupId>
285         <artifactId>schema.openvswitch</artifactId>
286         <version>${schema.openvswitch.version}</version>
287       </dependency>
288       <dependency>
289         <groupId>org.opendaylight.ovsdb</groupId>
290         <artifactId>plugin-mdsal-adapter</artifactId>
291         <version>${ovsdb.plugin.version}</version>
292       </dependency>
293       <dependency>
294         <groupId>org.opendaylight.ovsdb</groupId>
295         <artifactId>of-extension.nx-ofjava</artifactId>
296         <version>${ovsdb.ofextension.version}</version>
297       </dependency>
298       <dependency>
299         <groupId>org.opendaylight.ovsdb</groupId>
300         <artifactId>of-extension.nx-sal</artifactId>
301         <version>${ovsdb.ofextension.version}</version>
302       </dependency>
303     </dependencies>
304   </dependencyManagement>
305
306   <build>
307     <pluginManagement>
308       <plugins>
309         <plugin>
310           <groupId>org.apache.maven.plugins</groupId>
311           <artifactId>maven-compiler-plugin</artifactId>
312           <configuration>
313             <source>${java.version.source}</source>
314             <target>${java.version.target}</target>
315             <testSource>${java.version.source}</testSource>
316             <testTarget>${java.version.target}</testTarget>
317           </configuration>
318         </plugin>
319         <!-- This configuration should move to ODL-Parent -->
320         <plugin>
321           <groupId>org.apache.maven.plugins</groupId>
322           <artifactId>maven-checkstyle-plugin</artifactId>
323           <version>${checkstyle.version}</version>
324           <configuration>
325             <failsOnError>true</failsOnError>
326             <configLocation>controller/checkstyle.xml</configLocation>
327             <consoleOutput>true</consoleOutput>
328             <includeTestSourceDirectory>true</includeTestSourceDirectory>
329             <sourceDirectory>${project.basedir}</sourceDirectory>
330             <includes>**\/*.java,**\/*.xml,**\/*.ini,**\/*.sh,**\/*.bat</includes>
331             <excludes>**\/target\/,**\/bin\/,**\/target-ide\/,\/</excludes>
332           </configuration>
333           <dependencies>
334             <dependency>
335               <groupId>org.opendaylight.controller</groupId>
336               <artifactId>checkstyle</artifactId>
337               <version>0.0.3-SNAPSHOT</version>
338             </dependency>
339           </dependencies>
340           <executions>
341             <execution>
342               <id>check</id>
343               <goals>
344                 <goal>check</goal>
345               </goals>
346               <phase>process-sources</phase>
347             </execution>
348           </executions>
349         </plugin>
350         <plugin>
351           <groupId>org.jacoco</groupId>
352           <artifactId>jacoco-maven-plugin</artifactId>
353           <version>${jacoco.version}</version>
354           <configuration>
355             <skip>${skip.coverage}</skip>
356           </configuration>
357           <executions>
358             <execution>
359               <id>pre-unit-test</id>
360               <goals>
361                 <goal>prepare-agent</goal>
362               </goals>
363               <configuration>
364                 <destFile>${sonar.jacoco.reportPath}</destFile>
365               </configuration>
366             </execution>
367             <execution>
368               <id>pre-integration-test</id>
369               <goals>
370                 <goal>prepare-agent-integration</goal>
371               </goals>
372               <configuration>
373                 <destFile>${sonar.jacoco.itReportPath}</destFile>
374                 <append>true</append>
375                 <skip>${skip.integrationtest}</skip>
376               </configuration>
377             </execution>
378             <execution>
379               <id>post-unit-test</id>
380               <goals>
381                 <goal>report</goal>
382               </goals>
383               <configuration>
384                 <dataFile>${sonar.jacoco.reportPath}</dataFile>
385               </configuration>
386             </execution>
387             <execution>
388               <id>post-integration-test</id>
389               <goals>
390                 <goal>report-integration</goal>
391               </goals>
392               <configuration>
393                 <dataFile>${sonar.jacoco.itReportPath}</dataFile>
394                 <skip>${skip.integrationtest}</skip>
395               </configuration>
396             </execution>
397           </executions>
398         </plugin>
399         <plugin>
400           <groupId>org.apache.maven.plugins</groupId>
401           <artifactId>maven-surefire-plugin</artifactId>
402           <version>${maven.surefire.version}</version>
403         </plugin>
404         <plugin>
405           <groupId>org.apache.maven.plugins</groupId>
406           <artifactId>maven-failsafe-plugin</artifactId>
407           <version>${failsafe.version}</version>
408           <executions>
409             <execution>
410               <id>failsafe-integration-tests</id>
411               <goals>
412                 <goal>integration-test</goal>
413                 <goal>verify</goal>
414               </goals>
415               <configuration>
416                 <reportsDirectory>${project.build.directory}/surefire-reports</reportsDirectory>
417                 <skipTests>${skip.integrationtest}</skipTests>
418               </configuration>
419             </execution>
420           </executions>
421         </plugin>
422         <plugin>
423           <groupId>org.opendaylight.yangtools</groupId>
424           <artifactId>yang-maven-plugin</artifactId>
425           <version>${yangtools.version}</version>
426           <executions>
427             <execution>
428               <goals>
429                 <goal>generate-sources</goal>
430               </goals>
431               <configuration>
432                 <!-- directory containing yang files to parse and generate code -->
433                 <yangFilesRootDir>src/main/yang</yangFilesRootDir>
434                 <codeGenerators>
435                   <generator>
436                     <codeGeneratorClass>
437                       org.opendaylight.yangtools.maven.sal.api.gen.plugin.CodeGeneratorImpl
438                     </codeGeneratorClass>
439                     <!-- directory into which generated files will be placed -->
440                     <outputBaseDir>
441                       target/generated-sources/sal
442                     </outputBaseDir>
443                   </generator>
444                 </codeGenerators>
445                 <inspectDependencies>true</inspectDependencies>
446               </configuration>
447             </execution>
448           </executions>
449           <dependencies>
450             <dependency>
451               <groupId>org.opendaylight.yangtools</groupId>
452               <artifactId>maven-sal-api-gen-plugin</artifactId>
453               <version>0.6.2-SNAPSHOT</version>
454               <type>jar</type>
455             </dependency>
456           </dependencies>
457         </plugin>
458         <plugin>
459           <groupId>org.codehaus.mojo</groupId>
460           <artifactId>build-helper-maven-plugin</artifactId>
461           <version>1.7</version>
462           <executions>
463             <execution>
464               <phase>generate-sources</phase>
465               <goals>
466                 <goal>add-source</goal>
467               </goals>
468               <configuration>
469                 <sources>
470                   <source>target/generated-sources/sal</source>
471                 </sources>
472               </configuration>
473             </execution>
474           </executions>
475         </plugin>
476       </plugins>
477     </pluginManagement>
478   </build>
479   <url>https://wiki.opendaylight.org/view/OVSDB_Integration:Main</url>
480   <scm>
481     <connection>scm:git:ssh://git.opendaylight.org:29418/ovsdb.git</connection>
482     <developerConnection>scm:git:ssh://git.opendaylight.org:29418/ovsdb.git</developerConnection>
483     <tag>HEAD</tag>
484     <url>https://wiki.opendaylight.org/view/OVSDB_Integration:Main</url>
485   </scm>
486
487   <repositories>
488     <!-- Opendaylight public group -->
489     <repository>
490       <id>opendaylight-public</id>
491       <name>opendaylight-public</name>
492       <url>${nexusproxy}/groups/public/</url>
493       <snapshots>
494         <enabled>false</enabled>
495       </snapshots>
496       <releases>
497         <enabled>true</enabled>
498         <updatePolicy>never</updatePolicy>
499       </releases>
500     </repository>
501     <!-- OpenDayLight Released artifact -->
502     <repository>
503       <id>opendaylight-release</id>
504       <name>opendaylight-release</name>
505       <url>http://nexus.opendaylight.org/content/repositories/opendaylight.release/</url>
506       <snapshots>
507         <enabled>false</enabled>
508       </snapshots>
509       <releases>
510         <enabled>true</enabled>
511       </releases>
512     </repository>
513     <!-- OpenDayLight Snapshot artifact -->
514     <repository>
515       <id>opendaylight-snapshot</id>
516       <name>opendaylight-snapshot</name>
517       <url>http://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</url>
518       <snapshots>
519         <enabled>true</enabled>
520       </snapshots>
521       <releases>
522         <enabled>false</enabled>
523       </releases>
524     </repository>
525   </repositories>
526
527   <pluginRepositories>
528     <!-- Opendaylight public group -->
529     <pluginRepository>
530       <id>opendaylight-public</id>
531       <name>opendaylight-public</name>
532       <url>${nexusproxy}/groups/public/</url>
533       <snapshots>
534         <enabled>false</enabled>
535       </snapshots>
536       <releases>
537         <enabled>true</enabled>
538         <updatePolicy>never</updatePolicy>
539       </releases>
540     </pluginRepository>
541     <!-- OpenDayLight Released artifact -->
542     <pluginRepository>
543       <id>opendaylight-release</id>
544       <name>opendaylight-release</name>
545       <url>http://nexus.opendaylight.org/content/repositories/opendaylight.release/</url>
546       <snapshots>
547         <enabled>false</enabled>
548       </snapshots>
549       <releases>
550         <enabled>true</enabled>
551       </releases>
552     </pluginRepository>
553     <!-- OpenDayLight Snapshot artifact -->
554     <pluginRepository>
555       <id>opendaylight-snapshot</id>
556       <name>opendaylight-snapshot</name>
557       <url>http://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</url>
558       <snapshots>
559         <enabled>true</enabled>
560       </snapshots>
561       <releases>
562         <enabled>false</enabled>
563       </releases>
564     </pluginRepository>
565   </pluginRepositories>
566
567   <profiles>
568     <profile>
569       <id>integrationtest</id>
570       <activation>
571         <activeByDefault>false</activeByDefault>
572       </activation>
573       <properties>
574         <skip.integrationtest>false</skip.integrationtest>
575       </properties>
576     </profile>
577     <profile>
578       <id>coverage</id>
579       <activation>
580         <activeByDefault>false</activeByDefault>
581       </activation>
582       <properties>
583         <skip.coverage>false</skip.coverage>
584       </properties>
585     </profile>
586     <profile>
587       <id>jenkins</id>
588       <activation>
589         <activeByDefault>false</activeByDefault>
590       </activation>
591       <properties>
592         <skip.distribution>true</skip.distribution>
593         <root.directory>${env.WORKSPACE}</root.directory>
594       </properties>
595     </profile>
596   </profiles>
597 </project>