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>
34 <module>samples</module>
37 <module>model</module>
41 <module>sal-connector-api</module>
42 <module>sal-rest-connector</module>
43 <module>sal-netconf-connector</module>
45 <!-- Clustered Data Store -->
46 <module>clustered-data-store/implementation</module>
48 <module>inventory-manager</module>
49 <module>statistics-manager</module>
50 <module>forwardingrules-manager</module>
52 <!-- Compability Packages -->
53 <module>compatibility</module>
54 <module>zeromq-routingtable/implementation</module>
55 <module>sal-zeromq-connector</module>
61 <id>integrationtests</id>
63 <activeByDefault>false</activeByDefault>
66 <module>sal-binding-it</module>
67 <module>zeromq-routingtable/integrationtest</module>
68 <module>clustered-data-store/integrationtest</module>
76 <name>m2e.version</name>
80 <!-- Put the IDE's build output in a folder other than target, so that IDE builds don't interact with Maven builds -->
81 <directory>target-ide</directory>
87 <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
88 <nexusproxy>http://nexus.opendaylight.org/content</nexusproxy>
89 <!-- Java Versions -->
90 <maven.compiler.source>1.7</maven.compiler.source>
91 <maven.compiler.target>1.7</maven.compiler.target>
93 <!-- Plugin Versions -->
94 <bundle.plugin.version>2.4.0</bundle.plugin.version>
95 <releaseplugin.version>2.3.2</releaseplugin.version>
97 <!-- Dependency Versions -->
98 <slf4j.version>1.7.2</slf4j.version>
99 <yang.version>0.5.9-SNAPSHOT</yang.version>
100 <yang.binding.version>0.6.0-SNAPSHOT</yang.binding.version>
101 <yang.codegen.version>0.6.0-SNAPSHOT</yang.codegen.version>
102 <guava.version>14.0.1</guava.version>
103 <osgi.core.version>5.0.0</osgi.core.version>
104 <junit.version>4.8.1</junit.version>
105 <xtend.version>2.4.3</xtend.version>
106 <maven.clean.plugin.version>2.5</maven.clean.plugin.version>
107 <jacoco.version>0.5.3.201107060350</jacoco.version>
108 <!-- Sonar properties using jacoco to retrieve integration test results -->
109 <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
110 <sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
111 <sonar.jacoco.Reportpath>target/jacoco.exec</sonar.jacoco.Reportpath>
112 <sonar.jacoco.itReportPath>target/jacoco-it.exec</sonar.jacoco.itReportPath>
113 <sonar.host.url>https://sonar.opendaylight.org/</sonar.host.url>
114 <sonar.branch>${user.name}-private-view</sonar.branch>
115 <sonar.language>java</sonar.language>
119 <!-- OpenDayLight Repo Mirror -->
121 <id>opendaylight-mirror</id>
122 <name>opendaylight-mirror</name>
123 <url>${nexusproxy}/groups/public/</url>
125 <enabled>false</enabled>
128 <enabled>true</enabled>
129 <updatePolicy>never</updatePolicy>
132 <!-- OpenDayLight Snapshot artifact -->
134 <id>opendaylight-snapshot</id>
135 <name>opendaylight-snapshot</name>
136 <url> ${nexusproxy}/repositories/opendaylight.snapshot/</url>
138 <enabled>true</enabled>
141 <enabled>false</enabled>
144 </pluginRepositories>
148 <!-- OpenDayLight Repo Mirror -->
150 <id>opendaylight-mirror</id>
151 <name>opendaylight-mirror</name>
152 <url>${nexusproxy}/groups/public/</url>
154 <enabled>false</enabled>
157 <enabled>true</enabled>
158 <updatePolicy>never</updatePolicy>
161 <!-- OpenDayLight Snapshot artifact -->
163 <id>opendaylight-snapshot</id>
164 <name>opendaylight-snapshot</name>
165 <url> ${nexusproxy}/repositories/opendaylight.snapshot/</url>
167 <enabled>true</enabled>
170 <enabled>false</enabled>
175 <distributionManagement>
176 <!-- OpenDayLight Released artifact -->
178 <id>opendaylight-release</id>
179 <url>${nexusproxy}/repositories/opendaylight.release/</url>
181 <!-- OpenDayLight Snapshot artifact -->
183 <id>opendaylight-snapshot</id>
184 <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
185 </snapshotRepository>
186 <!-- Site deployment -->
189 <url>${sitedeploy}</url>
191 </distributionManagement>
194 <dependencyManagement>
200 <!-- YANG Tools Dependencies -->
202 <groupId>org.opendaylight.yangtools</groupId>
203 <artifactId>yang-binding</artifactId>
204 <version>${yang.binding.version}</version>
207 <groupId>org.opendaylight.yangtools</groupId>
208 <artifactId>yang-common</artifactId>
209 <version>${yang.version}</version>
212 <groupId>org.opendaylight.yangtools</groupId>
213 <artifactId>yang-data-api</artifactId>
214 <version>${yang.version}</version>
217 <groupId>org.opendaylight.yangtools</groupId>
218 <artifactId>yang-model-api</artifactId>
219 <version>${yang.version}</version>
222 <groupId>org.opendaylight.yangtools</groupId>
223 <artifactId>yang-data-util</artifactId>
224 <version>${yang.version}</version>
226 <!-- SAL Dependencies -->
228 <groupId>${project.groupId}</groupId>
229 <artifactId>sal-connector-api</artifactId>
230 <version>${project.version}</version>
233 <!-- Supporting Libraries -->
235 <groupId>org.slf4j</groupId>
236 <artifactId>slf4j-api</artifactId>
237 <version>${slf4j.version}</version>
240 <groupId>com.google.guava</groupId>
241 <artifactId>guava</artifactId>
242 <version>${guava.version}</version>
245 <groupId>org.eclipse.xtend</groupId>
246 <artifactId>org.eclipse.xtend.lib</artifactId>
247 <version>${xtend.version}</version>
250 <!-- Testing Dependencies -->
252 <groupId>junit</groupId>
253 <artifactId>junit</artifactId>
254 <version>${junit.version}</version>
258 <groupId>org.mockito</groupId>
259 <artifactId>mockito-all</artifactId>
260 <version>1.9.5</version>
264 </dependencyManagement>
269 <groupId>org.apache.maven.plugins</groupId>
270 <artifactId>maven-release-plugin</artifactId>
271 <version>${releaseplugin.version}</version>
274 <groupId>org.apache.felix</groupId>
275 <artifactId>maven-bundle-plugin</artifactId>
276 <version>${bundle.plugin.version}</version>
277 <extensions>true</extensions>
280 <id>bundle-manifest</id>
281 <phase>process-classes</phase>
283 <goal>manifest</goal>
289 <Bundle-Name>${project.groupId}.${project.artifactId}</Bundle-Name>
291 <manifestLocation>${project.basedir}/META-INF</manifestLocation>
295 <groupId>org.eclipse.xtend</groupId>
296 <artifactId>xtend-maven-plugin</artifactId>
297 <version>${xtend.version}</version>
304 <outputDirectory>${basedir}/src/main/xtend-gen</outputDirectory>
310 <artifactId>maven-clean-plugin</artifactId>
311 <version>${maven.clean.plugin.version}</version>
315 <directory>${basedir}/src/main/xtend-gen</directory>
317 <include>**</include>
324 <groupId>org.jacoco</groupId>
325 <artifactId>jacoco-maven-plugin</artifactId>
326 <version>${jacoco.version}</version>
328 <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
330 <groupId>org.eclipse.m2e</groupId>
331 <artifactId>lifecycle-mapping</artifactId>
332 <version>1.0.0</version>
334 <lifecycleMappingMetadata>
337 <pluginExecutionFilter>
338 <groupId>org.opendaylight.yangtools</groupId>
339 <artifactId>yang-maven-plugin</artifactId>
340 <versionRange>[0,)</versionRange>
342 <goal>generate-sources</goal>
344 </pluginExecutionFilter>
350 <pluginExecutionFilter>
351 <groupId>net.alchim31.maven</groupId>
352 <artifactId>scala-maven-plugin</artifactId>
353 <versionRange>[0,)</versionRange>
356 <goal>testCompile</goal>
358 </pluginExecutionFilter>
364 <pluginExecutionFilter>
365 <groupId>org.jacoco</groupId>
366 <artifactId>jacoco-maven-plugin</artifactId>
367 <versionRange>[0,)</versionRange>
369 <goal>prepare-agent</goal>
371 </pluginExecutionFilter>
377 </lifecycleMappingMetadata>
385 <groupId>org.apache.felix</groupId>
386 <artifactId>maven-bundle-plugin</artifactId>
389 <groupId>org.apache.maven.plugins</groupId>
390 <artifactId>maven-jar-plugin</artifactId>
391 <version>2.4</version>
394 <groupId>org.apache.maven.plugins</groupId>
395 <artifactId>maven-javadoc-plugin</artifactId>
396 <version>2.8.1</version>
398 <stylesheet>maven</stylesheet>
399 <failOnError>false</failOnError>
404 <goal>aggregate</goal>
415 <groupId>org.codehaus.mojo</groupId>
416 <artifactId>findbugs-maven-plugin</artifactId>
417 <version>2.4.0</version>
420 <threshold>Low</threshold>
425 <groupId>org.codehaus.mojo</groupId>
426 <artifactId>jdepend-maven-plugin</artifactId>
427 <version>2.0-beta-2</version>