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