Added sonar converage for mdsal.
[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-broker</module>
29         <module>sal-binding-it</module>
30
31         <!-- Samples -->
32         <module>samples</module>
33
34         <!-- Base Models -->
35         <module>model</module>
36
37         <!-- Compability Packages -->
38         <module>sal-compability</module>
39
40         <!-- Connectors -->
41         <module>sal-connector-api</module>
42         <module>sal-rest-connector</module>
43         <module>flow-management-compatibility</module>
44     </modules>
45
46     <properties>
47         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
48         <nexusproxy>http://nexus.opendaylight.org/content</nexusproxy>
49         <!-- Java Versions -->
50         <maven.compiler.source>1.7</maven.compiler.source>
51         <maven.compiler.target>1.7</maven.compiler.target>
52
53         <!-- Plugin Versions -->
54         <bundle.plugin.version>2.4.0</bundle.plugin.version>
55         <releaseplugin.version>2.3.2</releaseplugin.version>
56
57         <!-- Dependency Versions -->
58         <slf4j.version>1.7.2</slf4j.version>
59         <yang.version>0.5.9-SNAPSHOT</yang.version>
60         <yang.binding.version>0.6.0-SNAPSHOT</yang.binding.version>
61         <yang.codegen.version>0.6.0-SNAPSHOT</yang.codegen.version>
62         <guava.version>14.0.1</guava.version>
63         <osgi.core.version>5.0.0</osgi.core.version>
64         <junit.version>4.8.1</junit.version>
65         <xtend.version>2.4.3</xtend.version>
66         <jacoco.version>0.5.3.201107060350</jacoco.version>
67         <!-- Sonar properties using jacoco to retrieve integration test results -->
68         <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
69         <!-- Sonar properties using jacoco to retrieve integration test results -->
70         <sonar.dynamicAnalysis>reuseReports</sonar.dynamicAnalysis>
71         <sonar.jacoco.Reportpath>target/jacoco.exec</sonar.jacoco.Reportpath>
72         <sonar.jacoco.itReportPath>target/jacoco-it.exec</sonar.jacoco.itReportPath>
73         <sonar.host.url>https://sonar.opendaylight.org/</sonar.host.url>
74         <sonar.branch>${user.name}-private-view</sonar.branch>
75         <sonar.java.coveragePlugin>jacoco</sonar.java.coveragePlugin>
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         </repository>
110         <!-- OpenDayLight Snapshot artifact -->
111         <repository>
112             <id>opendaylight-snapshot</id>
113             <name>opendaylight-snapshot</name>
114             <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
115         </repository>
116         <repository>
117             <id>thirdparty</id>
118             <name>thirdparty</name>
119             <url>${nexusproxy}/repositories/thirdparty/</url>
120         </repository>
121         <repository>
122             <id>central</id>
123             <name>central</name>
124             <url>http://repo1.maven.org/maven2</url>
125             <snapshots>
126                 <enabled>false</enabled>
127             </snapshots>
128             <releases>
129                 <enabled>true</enabled>
130             </releases>
131         </repository>
132     </repositories>
133
134     <distributionManagement>
135         <!-- OpenDayLight Released artifact -->
136         <repository>
137             <id>opendaylight-release</id>
138             <url>${nexusproxy}/repositories/opendaylight.release/</url>
139         </repository>
140         <!-- OpenDayLight Snapshot artifact -->
141         <snapshotRepository>
142             <id>opendaylight-snapshot</id>
143             <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
144         </snapshotRepository>
145         <!-- Site deployment -->
146         <site>
147             <id>website</id>
148             <url>${sitedeploy}</url>
149         </site>
150     </distributionManagement>
151
152
153     <dependencyManagement>
154         <dependencies>
155
156
157
158
159             <!-- YANG Tools Dependencies -->
160             <dependency>
161                 <groupId>org.opendaylight.yangtools</groupId>
162                 <artifactId>yang-binding</artifactId>
163                 <version>${yang.binding.version}</version>
164             </dependency>
165             <dependency>
166                 <groupId>org.opendaylight.yangtools</groupId>
167                 <artifactId>yang-common</artifactId>
168                 <version>${yang.version}</version>
169             </dependency>
170             <dependency>
171                 <groupId>org.opendaylight.yangtools</groupId>
172                 <artifactId>yang-data-api</artifactId>
173                 <version>${yang.version}</version>
174             </dependency>
175             <dependency>
176                 <groupId>org.opendaylight.yangtools</groupId>
177                 <artifactId>yang-model-api</artifactId>
178                 <version>${yang.version}</version>
179             </dependency>
180             <dependency>
181                 <groupId>org.opendaylight.yangtools</groupId>
182                 <artifactId>yang-data-util</artifactId>
183                 <version>${yang.version}</version>
184             </dependency>
185             <!-- SAL Dependencies -->
186             <dependency>
187                 <groupId>${project.groupId}</groupId>
188                 <artifactId>sal-connector-api</artifactId>
189                 <version>${project.version}</version>
190             </dependency>
191
192             <!-- Supporting Libraries -->
193             <dependency>
194                 <groupId>org.slf4j</groupId>
195                 <artifactId>slf4j-api</artifactId>
196                 <version>${slf4j.version}</version>
197             </dependency>
198             <dependency>
199                 <groupId>com.google.guava</groupId>
200                 <artifactId>guava</artifactId>
201                 <version>${guava.version}</version>
202             </dependency>
203             <dependency>
204                 <groupId>org.eclipse.xtend</groupId>
205                 <artifactId>org.eclipse.xtend.lib</artifactId>
206                 <version>${xtend.version}</version>
207             </dependency>
208
209             <!-- Testing Dependencies -->
210             <dependency>
211                 <groupId>junit</groupId>
212                 <artifactId>junit</artifactId>
213                 <version>${junit.version}</version>
214                 <scope>test</scope>
215             </dependency>
216             <dependency>
217                 <groupId>org.mockito</groupId>
218                 <artifactId>mockito-all</artifactId>
219                 <version>1.9.5</version>
220                 <scope>test</scope>
221             </dependency>
222         </dependencies>
223     </dependencyManagement>
224     <build>
225         <pluginManagement>
226             <plugins>
227                 <plugin>
228                     <groupId>org.apache.maven.plugins</groupId>
229                     <artifactId>maven-release-plugin</artifactId>
230                     <version>${releaseplugin.version}</version>
231                 </plugin>
232                 <plugin>
233                     <groupId>org.apache.felix</groupId>
234                     <artifactId>maven-bundle-plugin</artifactId>
235                     <version>${bundle.plugin.version}</version>
236                     <extensions>true</extensions>
237                     <!--executions>
238                         <execution>
239                             <id>bundle-manifest</id>
240                             <phase>process-classes</phase>
241                             <goals>
242                                 <goal>manifest</goal>
243                             </goals>
244                         </execution>
245                     </executions-->
246                     <configuration>
247                         <instructions>
248                             <Bundle-Name>${project.groupId}.${project.artifactId}</Bundle-Name>
249                         </instructions>
250                         <manifestLocation>${project.basedir}/META-INF</manifestLocation>
251                     </configuration>
252                 </plugin>
253                 <plugin>
254                     <groupId>org.eclipse.xtend</groupId>
255                     <artifactId>xtend-maven-plugin</artifactId>
256                     <version>${xtend.version}</version>
257                     <executions>
258                         <execution>
259                             <goals>
260                                 <goal>compile</goal>
261                             </goals>
262                             <configuration>
263                                 <outputDirectory>${basedir}/src/main/xtend-gen</outputDirectory>
264                             </configuration>
265                         </execution>
266                     </executions>
267                 </plugin>
268                 <plugin>
269                     <artifactId>maven-clean-plugin</artifactId>
270                     <configuration>
271                         <filesets>
272                             <fileset>
273                                 <directory>${basedir}/src/main/xtend-gen</directory>
274                                 <includes>
275                                     <include>**</include>
276                                 </includes>
277                             </fileset>
278                         </filesets>
279                     </configuration>
280                 </plugin>
281                 <plugin>
282                     <groupId>org.jacoco</groupId>
283                     <artifactId>jacoco-maven-plugin</artifactId>
284                     <version>${jacoco.version}</version>
285                 </plugin>
286             </plugins>
287         </pluginManagement>
288         <plugins>
289             <plugin>
290                 <groupId>org.apache.felix</groupId>
291                 <artifactId>maven-bundle-plugin</artifactId>
292             </plugin>
293             <plugin>
294                 <groupId>org.apache.maven.plugins</groupId>
295                 <artifactId>maven-jar-plugin</artifactId>
296                 <version>2.4</version>
297             </plugin>
298             <plugin>
299                 <groupId>org.apache.maven.plugins</groupId>
300                 <artifactId>maven-javadoc-plugin</artifactId>
301                 <version>2.8.1</version>
302                 <configuration>
303                     <stylesheet>maven</stylesheet>
304                     <failOnError>false</failOnError>
305                 </configuration>
306                 <executions>
307                     <execution>
308                         <goals>
309                             <goal>aggregate</goal>
310                         </goals>
311                         <phase>site</phase>
312                     </execution>
313                 </executions>
314             </plugin>
315             <plugin>
316                 <groupId>org.jacoco</groupId>
317                 <artifactId>jacoco-maven-plugin</artifactId>
318                 <configuration>
319                   <includes>org.opendaylight.controller.*</includes>
320                 </configuration>
321                 <executions>
322                   <execution>
323                     <id>pre-test</id>
324                     <goals>
325                       <goal>prepare-agent</goal>
326                     </goals>
327                   </execution>
328                   <execution>
329                     <id>post-test</id>
330                     <phase>test</phase>
331                     <goals>
332                       <goal>report</goal>
333                     </goals>
334                   </execution>
335                 </executions>
336             </plugin>
337         </plugins>
338     </build>
339     <reporting>
340         <plugins>
341             <plugin>
342                 <groupId>org.codehaus.mojo</groupId>
343                 <artifactId>findbugs-maven-plugin</artifactId>
344                 <version>2.4.0</version>
345                 <configuration>
346                     <effort>Max</effort>
347                     <threshold>Low</threshold>
348                     <goal>site</goal>
349                 </configuration>
350             </plugin>
351             <plugin>
352                 <groupId>org.codehaus.mojo</groupId>
353                 <artifactId>jdepend-maven-plugin</artifactId>
354                 <version>2.0-beta-2</version>
355             </plugin>
356         </plugins>
357     </reporting>
358 </project>