34215fe0b02554382e68db00fddbf08ab205d047
[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>plugin-shell</artifactId>
266         <version>${plugin.shell.version}</version>
267       </dependency>
268       <dependency>
269         <groupId>org.opendaylight.ovsdb</groupId>
270         <artifactId>openstack.net-virt</artifactId>
271         <version>${openstack.netvirt.version}</version>
272       </dependency>
273       <dependency>
274         <groupId>org.opendaylight.ovsdb</groupId>
275         <artifactId>openstack.net-virt-providers</artifactId>
276         <version>${openstack.netvirt.providers.version}</version>
277       </dependency>
278       <dependency>
279         <groupId>org.opendaylight.ovsdb</groupId>
280         <artifactId>northbound</artifactId>
281         <version>${ovsdb.northbound.version}</version>
282       </dependency>
283       <dependency>
284         <groupId>org.opendaylight.ovsdb</groupId>
285         <artifactId>schema.hardwarevtep</artifactId>
286         <version>${schema.hardwarevtep.version}</version>
287       </dependency>
288       <dependency>
289         <groupId>org.opendaylight.ovsdb</groupId>
290         <artifactId>schema.openvswitch</artifactId>
291         <version>${schema.openvswitch.version}</version>
292       </dependency>
293       <dependency>
294         <groupId>org.opendaylight.ovsdb</groupId>
295         <artifactId>plugin-mdsal-adapter</artifactId>
296         <version>${ovsdb.plugin.version}</version>
297       </dependency>
298       <dependency>
299         <groupId>org.opendaylight.ovsdb</groupId>
300         <artifactId>of-extension.nx-ofjava</artifactId>
301         <version>${ovsdb.ofextension.version}</version>
302       </dependency>
303       <dependency>
304         <groupId>org.opendaylight.ovsdb</groupId>
305         <artifactId>of-extension.nx-sal</artifactId>
306         <version>${ovsdb.ofextension.version}</version>
307       </dependency>
308     </dependencies>
309   </dependencyManagement>
310
311   <build>
312     <pluginManagement>
313       <plugins>
314         <plugin>
315           <groupId>org.apache.maven.plugins</groupId>
316           <artifactId>maven-compiler-plugin</artifactId>
317           <configuration>
318             <source>${java.version.source}</source>
319             <target>${java.version.target}</target>
320             <testSource>${java.version.source}</testSource>
321             <testTarget>${java.version.target}</testTarget>
322           </configuration>
323         </plugin>
324         <!-- This configuration should move to ODL-Parent -->
325         <plugin>
326           <groupId>org.apache.maven.plugins</groupId>
327           <artifactId>maven-checkstyle-plugin</artifactId>
328           <version>${checkstyle.version}</version>
329           <configuration>
330             <failsOnError>true</failsOnError>
331             <configLocation>controller/checkstyle.xml</configLocation>
332             <consoleOutput>true</consoleOutput>
333             <includeTestSourceDirectory>true</includeTestSourceDirectory>
334             <sourceDirectory>${project.basedir}</sourceDirectory>
335             <includes>**\/*.java,**\/*.xml,**\/*.ini,**\/*.sh,**\/*.bat</includes>
336             <excludes>**\/target\/,**\/bin\/,**\/target-ide\/,\/</excludes>
337           </configuration>
338           <dependencies>
339             <dependency>
340               <groupId>org.opendaylight.controller</groupId>
341               <artifactId>checkstyle</artifactId>
342               <version>0.0.3-SNAPSHOT</version>
343             </dependency>
344           </dependencies>
345           <executions>
346             <execution>
347               <id>check</id>
348               <goals>
349                 <goal>check</goal>
350               </goals>
351               <phase>process-sources</phase>
352             </execution>
353           </executions>
354         </plugin>
355         <plugin>
356           <groupId>org.jacoco</groupId>
357           <artifactId>jacoco-maven-plugin</artifactId>
358           <version>${jacoco.version}</version>
359           <configuration>
360             <skip>${skip.coverage}</skip>
361           </configuration>
362           <executions>
363             <execution>
364               <id>pre-unit-test</id>
365               <goals>
366                 <goal>prepare-agent</goal>
367               </goals>
368               <configuration>
369                 <destFile>${sonar.jacoco.reportPath}</destFile>
370               </configuration>
371             </execution>
372             <execution>
373               <id>pre-integration-test</id>
374               <goals>
375                 <goal>prepare-agent-integration</goal>
376               </goals>
377               <configuration>
378                 <destFile>${sonar.jacoco.itReportPath}</destFile>
379                 <append>true</append>
380                 <skip>${skip.integrationtest}</skip>
381               </configuration>
382             </execution>
383             <execution>
384               <id>post-unit-test</id>
385               <goals>
386                 <goal>report</goal>
387               </goals>
388               <configuration>
389                 <dataFile>${sonar.jacoco.reportPath}</dataFile>
390               </configuration>
391             </execution>
392             <execution>
393               <id>post-integration-test</id>
394               <goals>
395                 <goal>report-integration</goal>
396               </goals>
397               <configuration>
398                 <dataFile>${sonar.jacoco.itReportPath}</dataFile>
399                 <skip>${skip.integrationtest}</skip>
400               </configuration>
401             </execution>
402           </executions>
403         </plugin>
404         <plugin>
405           <groupId>org.apache.maven.plugins</groupId>
406           <artifactId>maven-surefire-plugin</artifactId>
407           <version>${maven.surefire.version}</version>
408         </plugin>
409         <plugin>
410           <groupId>org.apache.maven.plugins</groupId>
411           <artifactId>maven-failsafe-plugin</artifactId>
412           <version>${failsafe.version}</version>
413           <executions>
414             <execution>
415               <id>failsafe-integration-tests</id>
416               <goals>
417                 <goal>integration-test</goal>
418                 <goal>verify</goal>
419               </goals>
420               <configuration>
421                 <reportsDirectory>${project.build.directory}/surefire-reports</reportsDirectory>
422                 <skipTests>${skip.integrationtest}</skipTests>
423               </configuration>
424             </execution>
425           </executions>
426         </plugin>
427         <plugin>
428           <groupId>org.opendaylight.yangtools</groupId>
429           <artifactId>yang-maven-plugin</artifactId>
430           <version>${yangtools.version}</version>
431           <executions>
432             <execution>
433               <goals>
434                 <goal>generate-sources</goal>
435               </goals>
436               <configuration>
437                 <!-- directory containing yang files to parse and generate code -->
438                 <yangFilesRootDir>src/main/yang</yangFilesRootDir>
439                 <codeGenerators>
440                   <generator>
441                     <codeGeneratorClass>
442                       org.opendaylight.yangtools.maven.sal.api.gen.plugin.CodeGeneratorImpl
443                     </codeGeneratorClass>
444                     <!-- directory into which generated files will be placed -->
445                     <outputBaseDir>
446                       target/generated-sources/sal
447                     </outputBaseDir>
448                   </generator>
449                 </codeGenerators>
450                 <inspectDependencies>true</inspectDependencies>
451               </configuration>
452             </execution>
453           </executions>
454           <dependencies>
455             <dependency>
456               <groupId>org.opendaylight.yangtools</groupId>
457               <artifactId>maven-sal-api-gen-plugin</artifactId>
458               <version>0.6.2-SNAPSHOT</version>
459               <type>jar</type>
460             </dependency>
461           </dependencies>
462         </plugin>
463         <plugin>
464           <groupId>org.codehaus.mojo</groupId>
465           <artifactId>build-helper-maven-plugin</artifactId>
466           <version>1.7</version>
467           <executions>
468             <execution>
469               <phase>generate-sources</phase>
470               <goals>
471                 <goal>add-source</goal>
472               </goals>
473               <configuration>
474                 <sources>
475                   <source>target/generated-sources/sal</source>
476                 </sources>
477               </configuration>
478             </execution>
479           </executions>
480         </plugin>
481       </plugins>
482     </pluginManagement>
483   </build>
484   <url>https://wiki.opendaylight.org/view/OVSDB_Integration:Main</url>
485   <scm>
486     <connection>scm:git:ssh://git.opendaylight.org:29418/ovsdb.git</connection>
487     <developerConnection>scm:git:ssh://git.opendaylight.org:29418/ovsdb.git</developerConnection>
488     <tag>HEAD</tag>
489     <url>https://wiki.opendaylight.org/view/OVSDB_Integration:Main</url>
490   </scm>
491
492   <repositories>
493     <!-- Opendaylight public group -->
494     <repository>
495       <id>opendaylight-public</id>
496       <name>opendaylight-public</name>
497       <url>${nexusproxy}/groups/public/</url>
498       <snapshots>
499         <enabled>false</enabled>
500       </snapshots>
501       <releases>
502         <enabled>true</enabled>
503         <updatePolicy>never</updatePolicy>
504       </releases>
505     </repository>
506     <!-- OpenDayLight Released artifact -->
507     <repository>
508       <id>opendaylight-release</id>
509       <name>opendaylight-release</name>
510       <url>http://nexus.opendaylight.org/content/repositories/opendaylight.release/</url>
511       <snapshots>
512         <enabled>false</enabled>
513       </snapshots>
514       <releases>
515         <enabled>true</enabled>
516       </releases>
517     </repository>
518     <!-- OpenDayLight Snapshot artifact -->
519     <repository>
520       <id>opendaylight-snapshot</id>
521       <name>opendaylight-snapshot</name>
522       <url>http://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</url>
523       <snapshots>
524         <enabled>true</enabled>
525       </snapshots>
526       <releases>
527         <enabled>false</enabled>
528       </releases>
529     </repository>
530   </repositories>
531
532   <pluginRepositories>
533     <!-- Opendaylight public group -->
534     <pluginRepository>
535       <id>opendaylight-public</id>
536       <name>opendaylight-public</name>
537       <url>${nexusproxy}/groups/public/</url>
538       <snapshots>
539         <enabled>false</enabled>
540       </snapshots>
541       <releases>
542         <enabled>true</enabled>
543         <updatePolicy>never</updatePolicy>
544       </releases>
545     </pluginRepository>
546     <!-- OpenDayLight Released artifact -->
547     <pluginRepository>
548       <id>opendaylight-release</id>
549       <name>opendaylight-release</name>
550       <url>http://nexus.opendaylight.org/content/repositories/opendaylight.release/</url>
551       <snapshots>
552         <enabled>false</enabled>
553       </snapshots>
554       <releases>
555         <enabled>true</enabled>
556       </releases>
557     </pluginRepository>
558     <!-- OpenDayLight Snapshot artifact -->
559     <pluginRepository>
560       <id>opendaylight-snapshot</id>
561       <name>opendaylight-snapshot</name>
562       <url>http://nexus.opendaylight.org/content/repositories/opendaylight.snapshot/</url>
563       <snapshots>
564         <enabled>true</enabled>
565       </snapshots>
566       <releases>
567         <enabled>false</enabled>
568       </releases>
569     </pluginRepository>
570   </pluginRepositories>
571
572   <profiles>
573     <profile>
574       <id>integrationtest</id>
575       <activation>
576         <activeByDefault>false</activeByDefault>
577       </activation>
578       <properties>
579         <skip.integrationtest>false</skip.integrationtest>
580       </properties>
581     </profile>
582     <profile>
583       <id>coverage</id>
584       <activation>
585         <activeByDefault>false</activeByDefault>
586       </activation>
587       <properties>
588         <skip.coverage>false</skip.coverage>
589       </properties>
590     </profile>
591     <profile>
592       <id>jenkins</id>
593       <activation>
594         <activeByDefault>false</activeByDefault>
595       </activation>
596       <properties>
597         <skip.distribution>true</skip.distribution>
598         <root.directory>${env.WORKSPACE}</root.directory>
599       </properties>
600     </profile>
601   </profiles>
602 </project>