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