1 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
2 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 <groupId>org.opendaylight.controller</groupId>
5 <artifactId>sal-parent</artifactId>
6 <version>1.0-SNAPSHOT</version>
7 <packaging>pom</packaging>
9 <connection>scm:git:ssh://git.opendaylight.org:29418/controller.git</connection>
10 <developerConnection>scm:git:ssh://git.opendaylight.org:29418/controller.git</developerConnection>
11 <url>https://wiki.opendaylight.org/view/OpenDaylight_Controller:MD-SAL</url>
15 <!-- Common APIs & Implementation -->
16 <module>sal-common</module>
17 <module>sal-common-api</module>
18 <module>sal-common-impl</module>
19 <module>sal-common-util</module>
21 <!-- Binding Independent -->
22 <module>sal-dom-api</module>
23 <module>sal-dom-broker</module>
24 <module>sal-dom-spi</module>
26 <!-- Binding Aware -->
27 <module>sal-binding-api</module>
28 <module>sal-binding-config</module>
29 <module>sal-binding-broker</module>
31 <module>sal-binding-util</module>
32 <module>sal-binding-dom-it</module>
35 <module>samples</module>
38 <module>model</module>
39 <module>sal-remote</module>
40 <module>sal-restconf-broker</module>
44 <module>sal-connector-api</module>
45 <module>sal-rest-connector</module>
46 <module>sal-netconf-connector</module>
48 <module>remoterpc-routingtable/implementation</module>
49 <module>sal-remoterpc-connector/implementation</module>
50 <!-- Clustered Data Store -->
51 <module>clustered-data-store/implementation</module>
53 <module>inventory-manager</module>
54 <module>statistics-manager</module>
55 <module>topology-manager</module>
56 <module>forwardingrules-manager</module>
57 <module>topology-lldp-discovery</module>
59 <!-- Compability Packages -->
60 <module>compatibility</module>
66 <id>integrationtests</id>
68 <activeByDefault>false</activeByDefault>
71 <module>sal-binding-it</module>
72 <module>clustered-data-store/integrationtest</module>
73 <!--module>zeromq-routingtable/integrationtest</module -->
74 <!--module>sal-remoterpc-connector/integrationtest</module -->
75 <!--module>test/sal-rest-connector-it</modulei -->
82 <name>m2e.version</name>
86 <!-- Put the IDE's build output in a folder other than target,
87 so that IDE builds don't interact with Maven builds -->
88 <directory>target-ide</directory>
94 <yangtools.version>0.6.0-SNAPSHOT</yangtools.version>
95 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
96 <nexusproxy>http://nexus.opendaylight.org/content</nexusproxy>
97 <!-- Java Versions -->
98 <maven.compiler.source>1.7</maven.compiler.source>
99 <maven.compiler.target>1.7</maven.compiler.target>
101 <!-- Plugin Versions -->
102 <bundle.plugin.version>2.4.0</bundle.plugin.version>
103 <releaseplugin.version>2.3.2</releaseplugin.version>
105 <!-- Dependency Versions -->
106 <slf4j.version>1.7.2</slf4j.version>
107 <yang.codegen.version>0.6.0-SNAPSHOT</yang.codegen.version>
108 <guava.version>14.0.1</guava.version>
109 <osgi.core.version>5.0.0</osgi.core.version>
110 <junit.version>4.8.1</junit.version>
111 <powermock.version>1.5.1</powermock.version>
112 <mockito.version>1.9.5</mockito.version>
113 <xtend.version>2.4.3</xtend.version>
114 <maven.clean.plugin.version>2.5</maven.clean.plugin.version>
115 <jacoco.version>0.5.3.201107060350</jacoco.version>
117 <!-- Sonar properties using jacoco to retrieve integration test results -->
118 <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
119 <sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
120 <sonar.jacoco.Reportpath>target/jacoco.exec</sonar.jacoco.Reportpath>
121 <sonar.jacoco.itReportPath>target/jacoco-it.exec</sonar.jacoco.itReportPath>
122 <sonar.host.url>https://sonar.opendaylight.org/</sonar.host.url>
123 <sonar.branch>${user.name}-private-view</sonar.branch>
124 <sonar.language>java</sonar.language>
125 <exam.version>3.0.0</exam.version>
126 <sal.version>0.7.0-SNAPSHOT</sal.version>
130 <!-- OpenDayLight Repo Mirror -->
132 <id>opendaylight-mirror</id>
133 <name>opendaylight-mirror</name>
134 <url>${nexusproxy}/groups/public/</url>
136 <enabled>false</enabled>
139 <enabled>true</enabled>
140 <updatePolicy>never</updatePolicy>
143 <!-- OpenDayLight Snapshot artifact -->
145 <id>opendaylight-snapshot</id>
146 <name>opendaylight-snapshot</name>
147 <url> ${nexusproxy}/repositories/opendaylight.snapshot/</url>
149 <enabled>true</enabled>
152 <enabled>false</enabled>
155 </pluginRepositories>
159 <!-- OpenDayLight Repo Mirror -->
161 <id>opendaylight-mirror</id>
162 <name>opendaylight-mirror</name>
163 <url>${nexusproxy}/groups/public/</url>
165 <enabled>false</enabled>
168 <enabled>true</enabled>
169 <updatePolicy>never</updatePolicy>
172 <!-- OpenDayLight Snapshot artifact -->
174 <id>opendaylight-snapshot</id>
175 <name>opendaylight-snapshot</name>
176 <url> ${nexusproxy}/repositories/opendaylight.snapshot/</url>
178 <enabled>true</enabled>
181 <enabled>false</enabled>
186 <distributionManagement>
187 <!-- OpenDayLight Released artifact -->
189 <id>opendaylight-release</id>
190 <url>${nexusproxy}/repositories/opendaylight.release/</url>
192 <!-- OpenDayLight Snapshot artifact -->
194 <id>opendaylight-snapshot</id>
195 <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
196 </snapshotRepository>
197 <!-- Site deployment -->
200 <url>${sitedeploy}</url>
202 </distributionManagement>
205 <dependencyManagement>
208 <groupId>xml-apis</groupId>
209 <artifactId>xml-apis</artifactId>
210 <version>1.4.01</version>
213 <!-- YANG Tools Dependencies -->
215 <groupId>org.opendaylight.yangtools</groupId>
216 <artifactId>yang-binding</artifactId>
217 <version>${yangtools.version}</version>
220 <groupId>org.opendaylight.yangtools</groupId>
221 <artifactId>yang-model-util</artifactId>
222 <version>${yangtools.version}</version>
225 <groupId>org.opendaylight.yangtools</groupId>
226 <artifactId>yang-common</artifactId>
227 <version>${yangtools.version}</version>
230 <groupId>org.opendaylight.yangtools</groupId>
231 <artifactId>yang-data-api</artifactId>
232 <version>${yangtools.version}</version>
235 <groupId>org.opendaylight.yangtools</groupId>
236 <artifactId>yang-data-impl</artifactId>
237 <version>${yangtools.version}</version>
240 <groupId>org.opendaylight.yangtools</groupId>
241 <artifactId>yang-model-api</artifactId>
242 <version>${yangtools.version}</version>
245 <groupId>org.opendaylight.yangtools</groupId>
246 <artifactId>yang-data-util</artifactId>
247 <version>${yangtools.version}</version>
249 <!-- SAL Dependencies -->
251 <groupId>${project.groupId}</groupId>
252 <artifactId>sal-connector-api</artifactId>
253 <version>${project.version}</version>
256 <groupId>org.opendaylight.controller</groupId>
257 <artifactId>sal</artifactId>
258 <version>${sal.version}</version>
261 <groupId>org.osgi</groupId>
262 <artifactId>org.osgi.compendium</artifactId>
267 <!-- Supporting Libraries -->
269 <groupId>org.slf4j</groupId>
270 <artifactId>slf4j-api</artifactId>
271 <version>${slf4j.version}</version>
274 <groupId>com.google.guava</groupId>
275 <artifactId>guava</artifactId>
276 <version>${guava.version}</version>
279 <groupId>org.eclipse.xtend</groupId>
280 <artifactId>org.eclipse.xtend.lib</artifactId>
281 <version>${xtend.version}</version>
284 <groupId>org.osgi</groupId>
285 <artifactId>org.osgi.core</artifactId>
286 <version>${osgi.core.version}</version>
288 <!-- Testing Dependencies -->
290 <groupId>junit</groupId>
291 <artifactId>junit</artifactId>
292 <version>${junit.version}</version>
296 <groupId>org.mockito</groupId>
297 <artifactId>mockito-all</artifactId>
298 <version>${mockito.version}</version>
302 <groupId>org.powermock</groupId>
303 <artifactId>powermock-module-junit4</artifactId>
304 <version>${powermock.version}</version>
308 <groupId>org.powermock</groupId>
309 <artifactId>powermock-api-mockito</artifactId>
310 <version>${powermock.version}</version>
314 <groupId>org.powermock</groupId>
315 <artifactId>powermock-core</artifactId>
316 <version>${powermock.version}</version>
320 <groupId>org.opendaylight.yangtools</groupId>
321 <artifactId>binding-generator-impl</artifactId>
322 <version>0.6.0-SNAPSHOT</version>
325 <groupId>org.opendaylight.yangtools</groupId>
326 <artifactId>yang-parser-impl</artifactId>
327 <version>0.6.0-SNAPSHOT</version>
330 </dependencyManagement>
335 <groupId>org.apache.maven.plugins</groupId>
336 <artifactId>maven-release-plugin</artifactId>
337 <version>${releaseplugin.version}</version>
340 <groupId>org.apache.felix</groupId>
341 <artifactId>maven-bundle-plugin</artifactId>
342 <version>${bundle.plugin.version}</version>
343 <extensions>true</extensions>
344 <!--executions> <execution> <id>bundle-manifest</id>
345 <phase>process-classes</phase> <goals> <goal>manifest</goal> </goals> </execution>
349 <Bundle-Name>${project.groupId}.${project.artifactId}</Bundle-Name>
351 <manifestLocation>${project.basedir}/META-INF</manifestLocation>
355 <groupId>org.eclipse.xtend</groupId>
356 <artifactId>xtend-maven-plugin</artifactId>
357 <version>${xtend.version}</version>
364 <outputDirectory>${basedir}/src/main/xtend-gen</outputDirectory>
370 <artifactId>maven-clean-plugin</artifactId>
371 <version>${maven.clean.plugin.version}</version>
375 <directory>${basedir}/src/main/xtend-gen</directory>
377 <include>**</include>
384 <groupId>org.jacoco</groupId>
385 <artifactId>jacoco-maven-plugin</artifactId>
386 <version>${jacoco.version}</version>
388 <!--This plugin's configuration is used to store Eclipse
389 m2e settings only. It has no influence on the Maven build itself. -->
391 <groupId>org.eclipse.m2e</groupId>
392 <artifactId>lifecycle-mapping</artifactId>
393 <version>1.0.0</version>
395 <lifecycleMappingMetadata>
398 <pluginExecutionFilter>
399 <groupId>org.opendaylight.yangtools</groupId>
400 <artifactId>yang-maven-plugin</artifactId>
401 <versionRange>[0,)</versionRange>
403 <goal>generate-sources</goal>
405 </pluginExecutionFilter>
411 <pluginExecutionFilter>
412 <groupId>net.alchim31.maven</groupId>
413 <artifactId>scala-maven-plugin</artifactId>
414 <versionRange>[0,)</versionRange>
417 <goal>testCompile</goal>
419 </pluginExecutionFilter>
425 <pluginExecutionFilter>
426 <groupId>org.jacoco</groupId>
427 <artifactId>jacoco-maven-plugin</artifactId>
428 <versionRange>[0,)</versionRange>
430 <goal>prepare-agent</goal>
432 </pluginExecutionFilter>
438 </lifecycleMappingMetadata>
446 <groupId>org.apache.felix</groupId>
447 <artifactId>maven-bundle-plugin</artifactId>
450 <groupId>org.codehaus.mojo</groupId>
451 <artifactId>build-helper-maven-plugin</artifactId>
452 <version>1.8</version>
456 <phase>generate-sources</phase>
458 <goal>add-source</goal>
462 <source>${project.build.directory}/generated-sources/config</source>
463 <source>${project.build.directory}/generated-sources/sal</source>
464 <source>src/main/xtend-gen</source>
471 <groupId>org.apache.maven.plugins</groupId>
472 <artifactId>maven-jar-plugin</artifactId>
473 <version>2.4</version>
476 <groupId>org.apache.maven.plugins</groupId>
477 <artifactId>maven-javadoc-plugin</artifactId>
478 <version>2.8.1</version>
480 <stylesheet>maven</stylesheet>
481 <failOnError>false</failOnError>
486 <goal>aggregate</goal>
497 <groupId>org.codehaus.mojo</groupId>
498 <artifactId>findbugs-maven-plugin</artifactId>
499 <version>2.4.0</version>
502 <threshold>Low</threshold>
507 <groupId>org.codehaus.mojo</groupId>
508 <artifactId>jdepend-maven-plugin</artifactId>
509 <version>2.0-beta-2</version>