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