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