1 <?xml version="1.0" encoding="UTF-8"?>
3 Copyright (C) 2014 Red Hat, Inc. and others. All rights reserved.
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
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>
15 <groupId>org.opendaylight.odlparent</groupId>
16 <artifactId>odlparent</artifactId>
17 <version>1.6.0-SNAPSHOT</version>
21 <groupId>org.opendaylight.ovsdb</groupId>
22 <artifactId>commons</artifactId>
23 <name>${project.artifactId}.parent</name>
24 <version>1.4.0-SNAPSHOT</version>
25 <packaging>pom</packaging>
26 <description>The OVSDB Plugin integration project is a project for OpenDaylight that will implement the Open vSwitch Database RFC 7047 management protocol allowing the Southbound configuration of vSwitches and a network virtualization implementation.</description>
27 <url>https://wiki.opendaylight.org/view/OVSDB_Integration:Main</url>
30 <name>Eclipse Public License v1.0</name>
31 <url>http://www.eclipse.org/legal/epl-v10.html</url>
36 <name>Sam Hague</name>
37 <email>shague@gmail.com</email>
38 <url>https://github.com/shague</url>
42 <connection>scm:git:ssh://git.opendaylight.org:29418/ovsdb.git</connection>
43 <developerConnection>scm:git:ssh://git.opendaylight.org:29418/ovsdb.git</developerConnection>
45 <url>https://wiki.opendaylight.org/view/OVSDB_Integration:Main</url>
53 <lifecycle.mapping.version>1.0.0</lifecycle.mapping.version>
54 <!-- Surefire/Failsafe Arguments -->
55 <argLine>-Xmx1024m -XX:MaxPermSize=256m</argLine>
56 <!-- OVSDB Component Versions -->
57 <openstack.netvirt.version>1.2.0-SNAPSHOT</openstack.netvirt.version>
58 <openstack.netvirt.providers.version>1.2.0-SNAPSHOT</openstack.netvirt.providers.version>
59 <ovsdb.features.version>1.2.0-SNAPSHOT</ovsdb.features.version>
60 <ovsdb.library.version>1.2.0-SNAPSHOT</ovsdb.library.version>
61 <ovsdb.northbound.version>0.8.0-SNAPSHOT</ovsdb.northbound.version>
62 <ovsdb.plugin.version>1.2.0-SNAPSHOT</ovsdb.plugin.version>
63 <ovsdb.plugin.compatibility.layer.version>1.2.0-SNAPSHOT</ovsdb.plugin.compatibility.layer.version>
64 <ovsdb.ovssfc.version>0.2.0-SNAPSHOT</ovsdb.ovssfc.version>
65 <ovsdb.utils.config.version>1.2.0-SNAPSHOT</ovsdb.utils.config.version>
66 <ovsdb.utils.mdsal.node.version>1.2.0-SNAPSHOT</ovsdb.utils.mdsal.node.version>
67 <ovsdb.utils.mdsal.openflow.version>1.2.0-SNAPSHOT</ovsdb.utils.mdsal.openflow.version>
68 <ovsdb.utils.servicehelper.version>1.2.0-SNAPSHOT</ovsdb.utils.servicehelper.version>
69 <plugin.shell.version>1.2.0-SNAPSHOT</plugin.shell.version>
70 <schema.hardwarevtep.version>1.2.0-SNAPSHOT</schema.hardwarevtep.version>
71 <schema.openvswitch.version>1.2.0-SNAPSHOT</schema.openvswitch.version>
72 <!-- Skip Coverage and IT by default -->
73 <skip.coverage>true</skip.coverage>
74 <skip.distribution>false</skip.distribution>
75 <skip.integrationtest>true</skip.integrationtest>
76 <skip.karaf.featureTest>false</skip.karaf.featureTest>
77 <!-- The directory where maven was executed TODO see if this can be removed -->
78 <root.directory>${env.PWD}</root.directory>
79 <!-- IT report is aggregated to enable PAX Exam coverage to be logged -->
80 <sonar.jacoco.itReportPath>${root.directory}/target/code-coverage/jacoco-it.exec</sonar.jacoco.itReportPath>
81 <sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
82 <!-- ODL Dependency Versions -->
83 <clustering.services.version>0.7.0-SNAPSHOT</clustering.services.version>
84 <containermanager.version>0.7.0-SNAPSHOT</containermanager.version>
85 <controller.config.version>0.4.0-SNAPSHOT</controller.config.version>
86 <forwardingrulesmanager.version>0.8.0-SNAPSHOT</forwardingrulesmanager.version>
87 <mdsal.version>1.3.0-SNAPSHOT</mdsal.version>
88 <networkconfig.neutron.version>0.6.0-SNAPSHOT</networkconfig.neutron.version>
89 <northbound.commons.version>0.6.0-SNAPSHOT</northbound.commons.version>
90 <nsf.version>0.6.0-SNAPSHOT</nsf.version>
91 <odl.karaf.base.version>1.6.0-SNAPSHOT</odl.karaf.base.version>
92 <odlparent.version>1.6.0-SNAPSHOT</odlparent.version>
93 <openflowjava-nicira.version>0.2.0-SNAPSHOT</openflowjava-nicira.version>
94 <openflowjava-extension.version>0.2.0-SNAPSHOT</openflowjava-extension.version>
95 <openflowjava.version>0.7.0-SNAPSHOT</openflowjava.version>
96 <openflowplugin.version>0.2.0-SNAPSHOT</openflowplugin.version>
97 <sal.version>0.10.0-SNAPSHOT</sal.version>
98 <switchmanager.api.version>0.9.0-SNAPSHOT</switchmanager.api.version>
99 <yangtools.version>0.8.0-SNAPSHOT</yangtools.version>
100 <!-- 3rd Pary Dependency Versions -->
101 <commons.collection.version>1.0</commons.collection.version>
102 <httpcomponents.version>4.2.1</httpcomponents.version>
103 <portlet.version>2.0</portlet.version>
104 <powermock.version>1.5.2</powermock.version>
107 <dependencyManagement>
110 <groupId>commons-collections</groupId>
111 <artifactId>commons-collections</artifactId>
112 <version>${commons.collection.version}</version>
115 <groupId>io.netty</groupId>
116 <artifactId>netty-all</artifactId>
117 <version>${netty.version}</version>
120 <groupId>javax.portlet</groupId>
121 <artifactId>portlet-api</artifactId>
122 <version>${portlet.version}</version>
125 <groupId>org.apache.httpcomponents</groupId>
126 <artifactId>httpcore-nio</artifactId>
127 <version>${httpcomponents.version}</version>
130 <groupId>org.opendaylight.controller</groupId>
131 <artifactId>commons.northbound</artifactId>
132 <version>${northbound.commons.version}</version>
135 <groupId>org.opendaylight.controller</groupId>
136 <artifactId>config-api</artifactId>
137 <version>${controller.config.version}</version>
140 <groupId>org.opendaylight.controller</groupId>
141 <artifactId>clustering.services</artifactId>
142 <version>${clustering.services.version}</version>
145 <groupId>org.opendaylight.controller</groupId>
146 <artifactId>containermanager</artifactId>
147 <version>${containermanager.version}</version>
150 <groupId>org.opendaylight.controller</groupId>
151 <artifactId>forwardingrulesmanager</artifactId>
152 <version>${forwardingrulesmanager.version}</version>
155 <groupId>org.opendaylight.neutron</groupId>
156 <artifactId>neutron-spi</artifactId>
157 <version>${networkconfig.neutron.version}</version>
160 <groupId>org.opendaylight.controller</groupId>
161 <artifactId>opendaylight-karaf-empty</artifactId>
162 <version>1.6.0-SNAPSHOT</version>
166 <groupId>org.opendaylight.controller</groupId>
167 <artifactId>sal</artifactId>
168 <version>${sal.version}</version>
172 <groupId>org.opendaylight.yangtools</groupId>
173 <artifactId>yangtools-artifacts</artifactId>
174 <version>${yangtools.version}</version>
176 <scope>import</scope>
179 <groupId>org.opendaylight.controller</groupId>
180 <artifactId>config-artifacts</artifactId>
181 <version>${controller.config.version}</version>
183 <scope>import</scope>
186 <groupId>org.opendaylight.controller</groupId>
187 <artifactId>mdsal-artifacts</artifactId>
188 <version>${mdsal.version}</version>
189 <scope>import</scope>
193 <groupId>org.opendaylight.openflowjava</groupId>
194 <artifactId>openflowjava-artifacts</artifactId>
195 <version>${openflowjava.version}</version>
197 <scope>import</scope>
201 <groupId>org.opendaylight.controller</groupId>
202 <artifactId>switchmanager</artifactId>
203 <version>${switchmanager.api.version}</version>
206 <groupId>org.opendaylight.openflowplugin.model</groupId>
207 <artifactId>model-flow-base</artifactId>
208 <version>${openflowplugin.version}</version>
211 <groupId>org.opendaylight.openflowplugin.model</groupId>
212 <artifactId>model-flow-service</artifactId>
213 <version>${openflowplugin.version}</version>
216 <groupId>org.opendaylight.openflowplugin.model</groupId>
217 <artifactId>model-flow-statistics</artifactId>
218 <version>${openflowplugin.version}</version>
221 <groupId>org.opendaylight.odlparent</groupId>
222 <artifactId>features-test</artifactId>
223 <version>${odlparent.version}</version>
227 <groupId>org.opendaylight.openflowplugin</groupId>
228 <artifactId>openflowplugin</artifactId>
229 <version>${openflowplugin.version}</version>
232 <groupId>org.opendaylight.openflowplugin</groupId>
233 <artifactId>openflowjava-extension-nicira</artifactId>
234 <version>${openflowjava-nicira.version}</version>
237 <groupId>org.opendaylight.openflowplugin</groupId>
238 <artifactId>openflowjava-extension-nicira-api</artifactId>
239 <version>${openflowjava-nicira.version}</version>
242 <groupId>org.opendaylight.openflowplugin</groupId>
243 <artifactId>openflowplugin-extension-api</artifactId>
244 <version>${openflowplugin.version}</version>
247 <groupId>org.opendaylight.openflowplugin</groupId>
248 <artifactId>openflowplugin-extension-nicira</artifactId>
249 <version>${openflowplugin.version}</version>
252 <groupId>org.opendaylight.openflowplugin</groupId>
253 <artifactId>openflowplugin-extension-nicira-config</artifactId>
254 <version>${openflowplugin.version}</version>
257 <groupId>org.opendaylight.ovsdb</groupId>
258 <artifactId>features-ovsdb</artifactId>
259 <version>${ovsdb.features.version}</version>
262 <groupId>org.opendaylight.ovsdb</groupId>
263 <artifactId>library</artifactId>
264 <version>${ovsdb.library.version}</version>
267 <groupId>org.opendaylight.ovsdb</groupId>
268 <artifactId>northbound</artifactId>
269 <version>${ovsdb.northbound.version}</version>
272 <groupId>org.opendaylight.ovsdb</groupId>
273 <artifactId>openstack.net-virt</artifactId>
274 <version>${openstack.netvirt.version}</version>
277 <groupId>org.opendaylight.ovsdb</groupId>
278 <artifactId>openstack.net-virt-providers</artifactId>
279 <version>${openstack.netvirt.providers.version}</version>
282 <groupId>org.opendaylight.ovsdb</groupId>
283 <artifactId>ovsdb-plugin-compatibility-layer</artifactId>
284 <version>${ovsdb.plugin.compatibility.layer.version}</version>
287 <groupId>org.opendaylight.ovsdb</groupId>
288 <artifactId>plugin</artifactId>
289 <version>${ovsdb.plugin.version}</version>
292 <groupId>org.opendaylight.ovsdb</groupId>
293 <artifactId>plugin-mdsal-adapter</artifactId>
294 <version>${ovsdb.plugin.adapter.version}</version>
297 <groupId>org.opendaylight.ovsdb</groupId>
298 <artifactId>plugin-shell</artifactId>
299 <version>${plugin.shell.version}</version>
302 <groupId>org.opendaylight.ovsdb</groupId>
303 <artifactId>schema.hardwarevtep</artifactId>
304 <version>${schema.hardwarevtep.version}</version>
307 <groupId>org.opendaylight.ovsdb</groupId>
308 <artifactId>schema.openvswitch</artifactId>
309 <version>${schema.openvswitch.version}</version>
312 <groupId>org.opendaylight.ovsdb</groupId>
313 <artifactId>utils.config</artifactId>
314 <version>${ovsdb.utils.config.version}</version>
317 <groupId>org.opendaylight.ovsdb</groupId>
318 <artifactId>utils.mdsal-node</artifactId>
319 <version>${ovsdb.utils.mdsal.node.version}</version>
322 <groupId>org.opendaylight.ovsdb</groupId>
323 <artifactId>utils.mdsal-openflow</artifactId>
324 <version>${ovsdb.utils.mdsal.openflow.version}</version>
327 <groupId>org.opendaylight.ovsdb</groupId>
328 <artifactId>utils.servicehelper</artifactId>
329 <version>${ovsdb.utils.servicehelper.version}</version>
332 <groupId>org.powermock</groupId>
333 <artifactId>powermock-module-junit4</artifactId>
334 <version>${powermock.version}</version>
337 <groupId>org.powermock</groupId>
338 <artifactId>powermock-api-mockito</artifactId>
339 <version>${powermock.version}</version>
342 <groupId>org.powermock</groupId>
343 <artifactId>powermock-core</artifactId>
344 <version>${powermock.version}</version>
347 </dependencyManagement>
353 <groupId>org.apache.maven.plugins</groupId>
354 <artifactId>maven-compiler-plugin</artifactId>
356 <source>${java.version.source}</source>
357 <target>${java.version.target}</target>
358 <testSource>${java.version.source}</testSource>
359 <testTarget>${java.version.target}</testTarget>
362 <!-- This configuration should move to ODL-Parent -->
364 <groupId>org.eclipse.m2e</groupId>
365 <artifactId>lifecycle-mapping</artifactId>
366 <version>${lifecycle.mapping.version}</version>
368 <lifecycleMappingMetadata>
371 <pluginExecutionFilter>
372 <groupId>org.codehaus.mojo</groupId>
373 <artifactId>properties-maven-plugin</artifactId>
374 <versionRange>[0.0,)</versionRange>
376 <goal>set-system-properties</goal>
378 </pluginExecutionFilter>
384 <pluginExecutionFilter>
385 <groupId>org.jacoco</groupId>
386 <artifactId>jacoco-maven-plugin</artifactId>
387 <versionRange>[0.0,)</versionRange>
389 <goal>prepare-agent</goal>
390 <goal>pre-test</goal>
391 <goal>post-test</goal>
393 </pluginExecutionFilter>
399 <pluginExecutionFilter>
400 <groupId>org.opendaylight.yangtools</groupId>
401 <artifactId>yang-maven-plugin</artifactId>
402 <versionRange>[0.5,)</versionRange>
404 <goal>generate-sources</goal>
406 </pluginExecutionFilter>
412 </lifecycleMappingMetadata>
416 <groupId>org.apache.maven.plugins</groupId>
417 <artifactId>maven-checkstyle-plugin</artifactId>
420 <groupId>com.puppycrawl.tools</groupId>
421 <artifactId>checkstyle</artifactId>
422 <version>6.4.1</version>
426 <configLocation>src/main/resources/ovsdb_checks.xml</configLocation>
427 <failsOnError>true</failsOnError>
428 <includes>**/*.java,**/*.xml,**/*.ini,**/*.sh,**/*.bat</includes>
429 <excludes>**/yang/,**/features/,**/integrationtest/,**/northbound/,
430 **/openstack/,**/ovs-sfc/,
431 **/ovsdb-plugin-compatibility-layer/,
432 **/plugin/,**/plugin-shell/,
433 **/schema/hardwarevtep/,**/schema/openvswitch/,
434 **/southbound/,**/utils/
439 <groupId>org.jacoco</groupId>
440 <artifactId>jacoco-maven-plugin</artifactId>
441 <version>${jacoco.version}</version>
443 <skip>${skip.coverage}</skip>
447 <id>pre-unit-test</id>
449 <goal>prepare-agent</goal>
452 <destFile>${sonar.jacoco.reportPath}</destFile>
456 <id>pre-integration-test</id>
458 <goal>prepare-agent-integration</goal>
461 <destFile>${sonar.jacoco.itReportPath}</destFile>
462 <append>true</append>
463 <skip>${skip.integrationtest}</skip>
467 <id>post-unit-test</id>
472 <dataFile>${sonar.jacoco.reportPath}</dataFile>
476 <id>post-integration-test</id>
478 <goal>report-integration</goal>
481 <dataFile>${sonar.jacoco.itReportPath}</dataFile>
482 <skip>${skip.integrationtest}</skip>
488 <groupId>org.apache.maven.plugins</groupId>
489 <artifactId>maven-surefire-plugin</artifactId>
492 <groupId>org.apache.maven.plugins</groupId>
493 <artifactId>maven-failsafe-plugin</artifactId>
496 <id>failsafe-integration-tests</id>
498 <goal>integration-test</goal>
502 <reportsDirectory>${project.build.directory}/surefire-reports</reportsDirectory>
503 <skipTests>${skip.integrationtest}</skipTests>
509 <groupId>org.opendaylight.yangtools</groupId>
510 <artifactId>yang-maven-plugin</artifactId>
511 <version>${yangtools.version}</version>
515 <goal>generate-sources</goal>
518 <!-- directory containing yang files to parse and generate code -->
519 <yangFilesRootDir>src/main/yang</yangFilesRootDir>
523 org.opendaylight.yangtools.maven.sal.api.gen.plugin.CodeGeneratorImpl
524 </codeGeneratorClass>
525 <!-- directory into which generated files will be placed -->
527 target/generated-sources/sal
531 <inspectDependencies>true</inspectDependencies>
537 <groupId>org.opendaylight.yangtools</groupId>
538 <artifactId>maven-sal-api-gen-plugin</artifactId>
539 <version>${yangtools.version}</version>
545 <groupId>org.codehaus.mojo</groupId>
546 <artifactId>build-helper-maven-plugin</artifactId>
547 <version>1.7</version>
550 <phase>generate-sources</phase>
552 <goal>add-source</goal>
556 <source>target/generated-sources/sal</source>
568 <id>integrationtest</id>
570 <activeByDefault>false</activeByDefault>
573 <skip.integrationtest>false</skip.integrationtest>
579 <activeByDefault>false</activeByDefault>
582 <skip.coverage>false</skip.coverage>
588 <activeByDefault>false</activeByDefault>
591 <skip.distribution>true</skip.distribution>
592 <root.directory>${env.WORKSPACE}</root.directory>
598 <activeByDefault>false</activeByDefault>
601 <skip.karaf.featureTest>false</skip.karaf.featureTest>