Base integration of Binding Aware Broker with Config Subsystem
[controller.git] / opendaylight / md-sal / pom.xml
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>
8     <scm>
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>
12     </scm>
13
14     <modules>
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>
20
21         <!-- Binding Independent -->
22         <module>sal-dom-api</module>
23         <module>sal-dom-broker</module>
24         <module>sal-dom-spi</module>
25
26         <!-- Binding Aware -->
27         <module>sal-binding-api</module>
28         <module>sal-binding-config</module>
29         <module>sal-binding-broker</module>
30         <module>sal-binding-it</module>
31
32         <!-- Samples -->
33         <module>samples</module>
34
35         <!-- Base Models -->
36         <module>model</module>
37
38         <!-- Compability Packages -->
39         <module>sal-compability</module>
40
41         <!-- Connectors -->
42         <module>sal-connector-api</module>
43         <module>sal-rest-connector</module>
44         <module>flow-management-compatibility</module>
45     </modules>
46
47     <properties>
48         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
49         <nexusproxy>http://nexus.opendaylight.org/content</nexusproxy>
50         <!-- Java Versions -->
51         <maven.compiler.source>1.7</maven.compiler.source>
52         <maven.compiler.target>1.7</maven.compiler.target>
53
54         <!-- Plugin Versions -->
55         <bundle.plugin.version>2.4.0</bundle.plugin.version>
56         <releaseplugin.version>2.3.2</releaseplugin.version>
57
58         <!-- Dependency Versions -->
59         <slf4j.version>1.7.2</slf4j.version>
60         <yang.version>0.5.9-SNAPSHOT</yang.version>
61         <yang.binding.version>0.6.0-SNAPSHOT</yang.binding.version>
62         <yang.codegen.version>0.6.0-SNAPSHOT</yang.codegen.version>
63         <guava.version>14.0.1</guava.version>
64         <osgi.core.version>5.0.0</osgi.core.version>
65         <junit.version>4.8.1</junit.version>
66         <xtend.version>2.4.3</xtend.version>
67         <maven.clean.plugin.version>2.5</maven.clean.plugin.version>
68         <jacoco.version>0.5.3.201107060350</jacoco.version>
69         <!-- Sonar properties using jacoco to retrieve integration test results -->
70         <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
71         <sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
72         <sonar.jacoco.Reportpath>target/jacoco.exec</sonar.jacoco.Reportpath>
73         <sonar.jacoco.itReportPath>target/jacoco-it.exec</sonar.jacoco.itReportPath>
74         <sonar.host.url>https://sonar.opendaylight.org/</sonar.host.url>
75         <sonar.branch>${user.name}-private-view</sonar.branch>
76         <sonar.language>java</sonar.language>
77     </properties>
78
79     <pluginRepositories>
80         <pluginRepository>
81             <id>central</id>
82             <name>maven repo1</name>
83             <url>http://repo1.maven.org/maven2</url>
84             <snapshots>
85                 <enabled>false</enabled>
86             </snapshots>
87             <releases>
88                 <enabled>true</enabled>
89             </releases>
90         </pluginRepository>
91         <pluginRepository>
92             <id>opendaylight-snapshot</id>
93             <name>opendaylight-snapshot</name>
94             <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
95         </pluginRepository>
96         <pluginRepository>
97             <id>opendaylight.release</id>
98             <name>opendaylight.release</name>
99             <url>${nexusproxy}/repositories/opendaylight.release/</url>
100         </pluginRepository>
101     </pluginRepositories>
102
103
104     <repositories>
105         <repository>
106             <id>opendaylight-release</id>
107             <name>opendaylight-release</name>
108             <url>${nexusproxy}/repositories/opendaylight.release/</url>
109             <snapshots>
110                  <enabled>false</enabled>
111             </snapshots>
112             <releases>
113                  <enabled>true</enabled>
114             </releases>
115         </repository>
116         <!-- OpenDayLight Snapshot artifact -->
117         <repository>
118             <id>opendaylight-snapshot</id>
119             <name>opendaylight-snapshot</name>
120             <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
121             <snapshots>
122                 <enabled>true</enabled>
123             </snapshots>
124             <releases>
125                 <enabled>false</enabled>
126             </releases>
127         </repository>
128         <repository>
129             <id>thirdparty</id>
130             <name>thirdparty</name>
131             <url>${nexusproxy}/repositories/thirdparty/</url>
132             <snapshots>
133                  <enabled>false</enabled>
134             </snapshots>
135             <releases>
136                 <updatePolicy>never</updatePolicy>
137                 <enabled>true</enabled>
138             </releases>
139         </repository>
140         <repository>
141             <id>central</id>
142             <name>central</name>
143             <url>http://repo1.maven.org/maven2</url>
144             <snapshots>
145                 <enabled>false</enabled>
146             </snapshots>
147             <releases>
148                 <updatePolicy>never</updatePolicy>
149                 <enabled>true</enabled>
150             </releases>
151         </repository>
152     </repositories>
153
154     <distributionManagement>
155         <!-- OpenDayLight Released artifact -->
156         <repository>
157             <id>opendaylight-release</id>
158             <url>${nexusproxy}/repositories/opendaylight.release/</url>
159         </repository>
160         <!-- OpenDayLight Snapshot artifact -->
161         <snapshotRepository>
162             <id>opendaylight-snapshot</id>
163             <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
164         </snapshotRepository>
165         <!-- Site deployment -->
166         <site>
167             <id>website</id>
168             <url>${sitedeploy}</url>
169         </site>
170     </distributionManagement>
171
172
173     <dependencyManagement>
174         <dependencies>
175
176
177
178
179             <!-- YANG Tools Dependencies -->
180             <dependency>
181                 <groupId>org.opendaylight.yangtools</groupId>
182                 <artifactId>yang-binding</artifactId>
183                 <version>${yang.binding.version}</version>
184             </dependency>
185             <dependency>
186                 <groupId>org.opendaylight.yangtools</groupId>
187                 <artifactId>yang-common</artifactId>
188                 <version>${yang.version}</version>
189             </dependency>
190             <dependency>
191                 <groupId>org.opendaylight.yangtools</groupId>
192                 <artifactId>yang-data-api</artifactId>
193                 <version>${yang.version}</version>
194             </dependency>
195             <dependency>
196                 <groupId>org.opendaylight.yangtools</groupId>
197                 <artifactId>yang-model-api</artifactId>
198                 <version>${yang.version}</version>
199             </dependency>
200             <dependency>
201                 <groupId>org.opendaylight.yangtools</groupId>
202                 <artifactId>yang-data-util</artifactId>
203                 <version>${yang.version}</version>
204             </dependency>
205             <!-- SAL Dependencies -->
206             <dependency>
207                 <groupId>${project.groupId}</groupId>
208                 <artifactId>sal-connector-api</artifactId>
209                 <version>${project.version}</version>
210             </dependency>
211
212             <!-- Supporting Libraries -->
213             <dependency>
214                 <groupId>org.slf4j</groupId>
215                 <artifactId>slf4j-api</artifactId>
216                 <version>${slf4j.version}</version>
217             </dependency>
218             <dependency>
219                 <groupId>com.google.guava</groupId>
220                 <artifactId>guava</artifactId>
221                 <version>${guava.version}</version>
222             </dependency>
223             <dependency>
224                 <groupId>org.eclipse.xtend</groupId>
225                 <artifactId>org.eclipse.xtend.lib</artifactId>
226                 <version>${xtend.version}</version>
227             </dependency>
228
229             <!-- Testing Dependencies -->
230             <dependency>
231                 <groupId>junit</groupId>
232                 <artifactId>junit</artifactId>
233                 <version>${junit.version}</version>
234                 <scope>test</scope>
235             </dependency>
236             <dependency>
237                 <groupId>org.mockito</groupId>
238                 <artifactId>mockito-all</artifactId>
239                 <version>1.9.5</version>
240                 <scope>test</scope>
241             </dependency>
242         </dependencies>
243     </dependencyManagement>
244     <build>
245         <pluginManagement>
246             <plugins>
247                 <plugin>
248                     <groupId>org.apache.maven.plugins</groupId>
249                     <artifactId>maven-release-plugin</artifactId>
250                     <version>${releaseplugin.version}</version>
251                 </plugin>
252                 <plugin>
253                     <groupId>org.apache.felix</groupId>
254                     <artifactId>maven-bundle-plugin</artifactId>
255                     <version>${bundle.plugin.version}</version>
256                     <extensions>true</extensions>
257                     <!--executions>
258                         <execution>
259                             <id>bundle-manifest</id>
260                             <phase>process-classes</phase>
261                             <goals>
262                                 <goal>manifest</goal>
263                             </goals>
264                         </execution>
265                     </executions-->
266                     <configuration>
267                         <instructions>
268                             <Bundle-Name>${project.groupId}.${project.artifactId}</Bundle-Name>
269                         </instructions>
270                         <manifestLocation>${project.basedir}/META-INF</manifestLocation>
271                     </configuration>
272                 </plugin>
273                 <plugin>
274                     <groupId>org.eclipse.xtend</groupId>
275                     <artifactId>xtend-maven-plugin</artifactId>
276                     <version>${xtend.version}</version>
277                     <executions>
278                         <execution>
279                             <goals>
280                                 <goal>compile</goal>
281                             </goals>
282                             <configuration>
283                                 <outputDirectory>${basedir}/src/main/xtend-gen</outputDirectory>
284                             </configuration>
285                         </execution>
286                     </executions>
287                 </plugin>
288                 <plugin>
289                     <artifactId>maven-clean-plugin</artifactId>
290                     <version>${maven.clean.plugin.version}</version>
291                     <configuration>
292                         <filesets>
293                             <fileset>
294                                 <directory>${basedir}/src/main/xtend-gen</directory>
295                                 <includes>
296                                     <include>**</include>
297                                 </includes>
298                             </fileset>
299                         </filesets>
300                     </configuration>
301                 </plugin>
302                 <plugin>
303                     <groupId>org.jacoco</groupId>
304                     <artifactId>jacoco-maven-plugin</artifactId>
305                     <version>${jacoco.version}</version>
306                 </plugin>
307                 <!--This plugin's configuration is used to store Eclipse 
308                     m2e settings only. It has no influence on the Maven build itself. -->
309                 <plugin>
310                     <groupId>org.eclipse.m2e</groupId>
311                     <artifactId>lifecycle-mapping</artifactId>
312                     <version>1.0.0</version>
313                     <configuration>
314                         <lifecycleMappingMetadata>
315                             <pluginExecutions>
316                                 <pluginExecution>
317                                     <pluginExecutionFilter>
318                                         <groupId>
319                                             org.opendaylight.yangtools
320                                         </groupId>
321                                         <artifactId>
322                                             yang-maven-plugin
323                                         </artifactId>
324                                         <versionRange>
325                                             [0.5,)
326                                         </versionRange>
327                                         <goals>
328                                             <goal>
329                                                 generate-sources
330                                             </goal>
331                                         </goals>
332                                     </pluginExecutionFilter>
333                                     <action>
334                                         <ignore></ignore>
335                                     </action>
336                                 </pluginExecution>
337                             </pluginExecutions>
338                         </lifecycleMappingMetadata>
339                     </configuration>
340                 </plugin>
341             </plugins>
342         </pluginManagement>
343         <plugins>
344             <plugin>
345                 <groupId>org.apache.felix</groupId>
346                 <artifactId>maven-bundle-plugin</artifactId>
347             </plugin>
348             <plugin>
349                 <groupId>org.apache.maven.plugins</groupId>
350                 <artifactId>maven-jar-plugin</artifactId>
351                 <version>2.4</version>
352             </plugin>
353             <plugin>
354                 <groupId>org.apache.maven.plugins</groupId>
355                 <artifactId>maven-javadoc-plugin</artifactId>
356                 <version>2.8.1</version>
357                 <configuration>
358                     <stylesheet>maven</stylesheet>
359                     <failOnError>false</failOnError>
360                 </configuration>
361                 <executions>
362                     <execution>
363                         <goals>
364                             <goal>aggregate</goal>
365                         </goals>
366                         <phase>site</phase>
367                     </execution>
368                 </executions>
369             </plugin>
370         </plugins>
371     </build>
372     <reporting>
373         <plugins>
374             <plugin>
375                 <groupId>org.codehaus.mojo</groupId>
376                 <artifactId>findbugs-maven-plugin</artifactId>
377                 <version>2.4.0</version>
378                 <configuration>
379                     <effort>Max</effort>
380                     <threshold>Low</threshold>
381                     <goal>site</goal>
382                 </configuration>
383             </plugin>
384             <plugin>
385                 <groupId>org.codehaus.mojo</groupId>
386                 <artifactId>jdepend-maven-plugin</artifactId>
387                 <version>2.0-beta-2</version>
388             </plugin>
389         </plugins>
390     </reporting>
391 </project>