Remove unncessary Sonar variables
[openflowjava.git] / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 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     <parent>
5         <groupId>org.opendaylight.odlparent</groupId>
6         <artifactId>odlparent</artifactId>
7         <version>1.5.0-SNAPSHOT</version>
8         <relativePath/>
9     </parent>
10
11     <groupId>org.opendaylight.openflowjava</groupId>
12     <artifactId>openflow-protocol-parent</artifactId>
13     <version>0.6.0-SNAPSHOT</version>
14     <name>openflowjava</name> <!-- Used by Sonar to set project name -->
15     <packaging>pom</packaging>
16
17     <modules>
18         <module>openflowjava-config</module>
19         <module>openflow-protocol-api</module>
20         <module>openflow-protocol-spi</module>
21         <module>util</module>
22         <module>openflow-protocol-impl</module>
23         <module>openflow-protocol-it</module>
24         <module>features</module>
25         <module>simple-client</module>
26     </modules>
27     <scm>
28         <connection>scm:git:ssh://git.opendaylight.org:29418/openflowjava.git</connection>
29         <developerConnection>scm:git:ssh://git.opendaylight.org:29418/openflowjava.git</developerConnection>
30         <url>https://wiki.opendaylight.org/view/Openflow_Protocol_Library:Main</url>
31       <tag>HEAD</tag>
32     </scm>
33
34     <properties>
35         <nexusproxy>http://nexus.opendaylight.org/content</nexusproxy>
36         <sitedeploy>dav:http://nexus.opendaylight.org/content/sites/site</sitedeploy>
37         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
38         <jmxGeneratorPath>${project.build.directory}/yang-gen-config</jmxGeneratorPath>
39         <karaf.distro.empty.version>1.5.0-SNAPSHOT</karaf.distro.empty.version>
40         <salGeneratorPath>${project.build.directory}/yang-gen-sal</salGeneratorPath>
41         <sonar.skippedModules>org.openflow.openflowj,net.sf.jung2</sonar.skippedModules>
42         <yang.prototype.version>1.2.0-SNAPSHOT</yang.prototype.version>
43         <ietf.model.version>2010.09.24.7-SNAPSHOT</ietf.model.version>
44         <yang.ext.version>2013.09.07.7-SNAPSHOT</yang.ext.version>
45         <yangtools.version>0.7.0-SNAPSHOT</yangtools.version>
46         <yangtools.generator.version>0.7.0-SNAPSHOT</yangtools.generator.version>
47         <mdsal.version>1.2.0-SNAPSHOT</mdsal.version>
48         <config.version>0.3.0-SNAPSHOT</config.version>
49
50         <!-- Sonar config -->
51         <sonar-jacoco-listeners.version>2.4</sonar-jacoco-listeners.version>
52         <sonar.core.codeCoveragePlugin>jacoco</sonar.core.codeCoveragePlugin>
53         <sonar.jacoco.reportPath>target/code-coverage/jacoco.exec</sonar.jacoco.reportPath>
54         <sonar.jacoco.itReportPath>target/code-coverage/jacoco-it.exec</sonar.jacoco.itReportPath>
55     </properties>
56
57     <distributionManagement>
58         <!-- OpenDayLight Released artifact -->
59         <repository>
60             <id>opendaylight-release</id>
61             <url>${nexusproxy}/repositories/opendaylight.release/</url>
62         </repository>
63         <!-- OpenDayLight Snapshot artifact -->
64         <snapshotRepository>
65             <id>opendaylight-snapshot</id>
66             <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
67         </snapshotRepository>
68         <!-- Site deployment -->
69         <!-- site>
70             <id>website</id>
71             <url>${sitedeploy}</url>
72         </site -->
73     </distributionManagement>
74
75
76     <dependencyManagement>
77         <dependencies>
78             <!-- feature dependencies -->
79             <dependency>
80               <groupId>org.opendaylight.yangtools</groupId>
81               <artifactId>features-yangtools</artifactId>
82               <version>${yangtools.version}</version>
83               <classifier>features</classifier>
84               <type>xml</type>
85             </dependency>
86             <dependency>
87               <groupId>org.opendaylight.controller</groupId>
88               <artifactId>features-config</artifactId>
89               <version>${config.version}</version>
90               <classifier>features</classifier>
91               <type>xml</type>
92             </dependency>
93             <dependency>
94                 <groupId>org.opendaylight.yangtools.model</groupId>
95                 <artifactId>ietf-inet-types</artifactId>
96                 <version>${ietf.model.version}</version>
97             </dependency>
98             <dependency>
99                 <groupId>org.opendaylight.yangtools.model</groupId>
100                 <artifactId>ietf-yang-types</artifactId>
101                 <version>${ietf.model.version}</version>
102             </dependency>
103             <dependency>
104                 <groupId>org.opendaylight.yangtools.model</groupId>
105                 <artifactId>yang-ext</artifactId>
106                 <version>${yang.ext.version}</version>
107             </dependency>
108             <dependency>
109                 <groupId>org.opendaylight.controller</groupId>
110                 <artifactId>config-api</artifactId>
111                 <version>0.3.0-SNAPSHOT</version>
112             </dependency>
113             <dependency>
114               <groupId>org.opendaylight.yangtools</groupId>
115               <artifactId>features-test</artifactId>
116               <version>${yangtools.version}</version>
117             </dependency>
118         </dependencies>
119     </dependencyManagement>
120
121     <dependencies>
122         <!-- Sonar -->
123         <dependency>
124             <groupId>org.codehaus.sonar-plugins.java</groupId>
125             <artifactId>sonar-jacoco-listeners</artifactId>
126             <version>${sonar-jacoco-listeners.version}</version>
127             <scope>test</scope>
128         </dependency>
129     </dependencies>
130
131     <build>
132         <plugins>
133             <plugin>
134                 <groupId>org.apache.maven.plugins</groupId>
135                 <artifactId>maven-compiler-plugin</artifactId>
136                 <inherited>true</inherited>
137                 <configuration>
138                     <source>1.7</source>
139                     <target>1.7</target>
140                 </configuration>
141             </plugin>
142             <plugin>
143                 <artifactId>maven-source-plugin</artifactId>
144                 <executions>
145                     <execution>
146                         <id>attach-sources</id>
147                         <phase>deploy</phase>
148                         <goals>
149                             <goal>jar-no-fork</goal>
150                         </goals>
151                     </execution>
152                 </executions>
153             </plugin>
154             <plugin>
155               <groupId>org.apache.felix</groupId>
156               <artifactId>maven-bundle-plugin</artifactId>
157               <extensions>true</extensions>
158               <configuration>
159                 <instructions>
160                   <Bundle-Name>${project.groupId}.${project.artifactId}</Bundle-Name>
161                 </instructions>
162                 <manifestLocation>${project.build.directory}/META-INF</manifestLocation>
163               </configuration>
164             </plugin>
165             <plugin>
166               <groupId>org.apache.maven.plugins</groupId>
167               <artifactId>maven-checkstyle-plugin</artifactId>
168               <version>2.12</version>
169               <configuration>
170                 <failOnViolation>false</failOnViolation>
171                 <configLocation>checkstyle-logging.xml</configLocation>
172                 <consoleOutput>true</consoleOutput>
173                 <includeTestSourceDirectory>true</includeTestSourceDirectory>
174                 <sourceDirectory>${project.basedir}</sourceDirectory>
175                 <includes>**\/*.java,**\/*.xml,**\/*.ini,**\/*.sh,**\/*.bat,**\/*.yang</includes>
176                 <excludes>**\/target\/,**\/bin\/,**\/target-ide\/,**\/src/main/yang-gen-config\/,**\/src/main/yang-gen-sal\/</excludes>
177               </configuration>
178               <dependencies>
179                 <dependency>
180                 <groupId>org.opendaylight.yangtools</groupId>
181                 <artifactId>checkstyle-logging</artifactId>
182                 <version>${yangtools.version}</version>
183                 </dependency>
184               </dependencies>
185               <executions>
186                 <execution>
187                 <goals>
188                   <goal>check</goal>
189                 </goals>
190                 </execution>
191               </executions>
192             </plugin>
193             <plugin>
194                 <groupId>org.codehaus.mojo</groupId>
195                 <artifactId>build-helper-maven-plugin</artifactId>
196             </plugin>
197             <plugin>
198                 <groupId>org.jacoco</groupId>
199                 <artifactId>jacoco-maven-plugin</artifactId>
200                 <executions>
201                     <execution>
202                         <id>prepare-ut-agent</id>
203                         <phase>process-test-classes</phase>
204                         <goals>
205                             <goal>prepare-agent</goal>
206                         </goals>
207                         <configuration>
208                             <destFile>${sonar.jacoco.reportPath}</destFile>
209                             <propertyName>jacoco.agent.ut.arg</propertyName>
210                         </configuration>
211                     </execution>
212                     <execution>
213                         <id>prepare-it-agent</id>
214                         <phase>pre-integration-test</phase>
215                         <goals>
216                             <goal>prepare-agent</goal>
217                         </goals>
218                         <configuration>
219                             <destFile>${sonar.jacoco.itReportPath}</destFile>
220                             <propertyName>jacoco.agent.it.arg</propertyName>
221                         </configuration>
222                     </execution>
223                 </executions>
224             </plugin>
225         </plugins>
226         <pluginManagement>
227             <plugins>
228                 <plugin>
229                     <groupId>org.opendaylight.yangtools</groupId>
230                     <artifactId>yang-maven-plugin</artifactId>
231                     <version>${yangtools.version}</version>
232                 </plugin>
233                 <plugin>
234                     <groupId>org.codehaus.mojo</groupId>
235                     <artifactId>build-helper-maven-plugin</artifactId>
236                     <version>1.8</version>
237                     <executions>
238                         <execution>
239                             <id>add-source</id>
240                             <goals>
241                                 <goal>add-source</goal>
242                             </goals>
243                             <phase>generate-sources</phase>
244                             <configuration>
245                                 <sources>
246                                     <source>src/main/yang</source>
247                                 </sources>
248                             </configuration>
249                         </execution>
250                     </executions>
251                 </plugin>
252                 <plugin>
253                     <groupId>org.apache.maven.plugins</groupId>
254                     <artifactId>maven-failsafe-plugin</artifactId>
255                     <configuration>
256                         <!-- Specific to generate mapping between tests and covered code -->
257                         <argLine>${jacoco.agent.it.arg}</argLine>
258                         <properties>
259                             <property>
260                                 <name>listener</name>
261                                 <value>org.sonar.java.jacoco.JUnitListener</value>
262                             </property>
263                         </properties>
264                         <!-- Let's put failsafe reports with surefire to have access to tests failures/success reports in sonar -->
265                         <reportsDirectory>${project.build.directory}/surefire-reports</reportsDirectory>
266                     </configuration>
267                 </plugin>
268                 <plugin>
269                     <groupId>org.apache.maven.plugins</groupId>
270                     <artifactId>maven-surefire-plugin</artifactId>
271                     <configuration>
272                         <!-- Specific to generate mapping between tests and covered code -->
273                         <argLine>${jacoco.agent.ut.arg}</argLine>
274                         <properties>
275                             <property>
276                                 <name>listener</name>
277                                 <value>org.sonar.java.jacoco.JUnitListener</value>
278                             </property>
279                         </properties>
280                     </configuration>
281                 </plugin>
282                 <!-- Ignore/Execute plugin execution -->
283                 <plugin>
284                   <groupId>org.eclipse.m2e</groupId>
285                   <artifactId>lifecycle-mapping</artifactId>
286                   <version>1.0.0</version>
287                   <configuration>
288                     <lifecycleMappingMetadata>
289                       <pluginExecutions>
290                         <pluginExecution>
291                           <pluginExecutionFilter>
292                             <groupId>org.codehaus.mojo</groupId>
293                             <artifactId>properties-maven-plugin</artifactId>
294                             <versionRange>[0.0,)</versionRange>
295                             <goals>
296                               <goal>set-system-properties</goal>
297                             </goals>
298                           </pluginExecutionFilter>
299                           <action>
300                             <ignore/>
301                           </action>
302                         </pluginExecution>
303                         <pluginExecution>
304                           <pluginExecutionFilter>
305                             <groupId>org.codehaus.enunciate</groupId>
306                             <artifactId>maven-enunciate-plugin</artifactId>
307                             <versionRange>[0.0,)</versionRange>
308                             <goals>
309                               <goal>docs</goal>
310                             </goals>
311                           </pluginExecutionFilter>
312                           <action>
313                             <ignore/>
314                           </action>
315                         </pluginExecution>
316                         <pluginExecution>
317                           <pluginExecutionFilter>
318                             <groupId>org.jacoco</groupId>
319                             <artifactId>jacoco-maven-plugin</artifactId>
320                             <versionRange>[0.0,)</versionRange>
321                             <goals>
322                               <goal>prepare-agent</goal>
323                               <goal>pre-test</goal>
324                               <goal>post-test</goal>
325                             </goals>
326                           </pluginExecutionFilter>
327                           <action>
328                             <ignore/>
329                           </action>
330                         </pluginExecution>
331                         <pluginExecution>
332                           <pluginExecutionFilter>
333                             <groupId>org.ops4j.pax.exam</groupId>
334                             <artifactId>maven-paxexam-plugin</artifactId>
335                             <versionRange>[1.2.4,)</versionRange>
336                             <goals>
337                               <goal>generate-depends-file</goal>
338                             </goals>
339                           </pluginExecutionFilter>
340                           <action>
341                             <execute>
342                               <runOnIncremental>false</runOnIncremental>
343                             </execute>
344                           </action>
345                         </pluginExecution>
346                         <pluginExecution>
347                           <pluginExecutionFilter>
348                             <groupId>org.apache.maven.plugins</groupId>
349                             <artifactId>maven-checkstyle-plugin</artifactId>
350                             <versionRange>[2.0,)</versionRange>
351                             <goals>
352                               <goal>check</goal>
353                             </goals>
354                           </pluginExecutionFilter>
355                           <action>
356                             <ignore/>
357                           </action>
358                         </pluginExecution>
359                         <pluginExecution>
360                           <pluginExecutionFilter>
361                             <groupId>org.opendaylight.yangtools</groupId>
362                             <artifactId>yang-maven-plugin</artifactId>
363                             <versionRange>[0.5,)</versionRange>
364                             <goals>
365                               <goal>generate-sources</goal>
366                             </goals>
367                           </pluginExecutionFilter>
368                           <action>
369                             <execute/>
370                           </action>
371                         </pluginExecution>
372                         <pluginExecution>
373                           <pluginExecutionFilter>
374                             <groupId>org.codehaus.groovy.maven</groupId>
375                             <artifactId>gmaven-plugin</artifactId>
376                             <versionRange>1.0</versionRange>
377                             <goals>
378                               <goal>execute</goal>
379                             </goals>
380                           </pluginExecutionFilter>
381                           <action>
382                             <ignore/>
383                           </action>
384                         </pluginExecution>
385                         <pluginExecution>
386                           <pluginExecutionFilter>
387                             <groupId>org.apache.maven.plugins</groupId>
388                             <artifactId>maven-enforcer-plugin</artifactId>
389                             <versionRange>${enforcer.version}</versionRange>
390                             <goals>
391                               <goal>enforce</goal>
392                             </goals>
393                           </pluginExecutionFilter>
394                           <action>
395                             <ignore/>
396                           </action>
397                         </pluginExecution>
398                       </pluginExecutions>
399                     </lifecycleMappingMetadata>
400                   </configuration>
401                 </plugin>
402             </plugins>
403         </pluginManagement>
404     </build>
405     <reporting>
406         <plugins>
407             <plugin>
408                 <groupId>org.codehaus.mojo</groupId>
409                 <artifactId>findbugs-maven-plugin</artifactId>
410                 <version>2.5.2</version>
411                 <configuration>
412                     <effort>Max</effort>
413                     <threshold>Low</threshold>
414                     <goal>site</goal>
415                 </configuration>
416             </plugin>
417             <plugin>
418               <artifactId>maven-jxr-plugin</artifactId>
419               <version>2.3</version>
420               <configuration>
421                 <aggregate>true</aggregate>
422                 <linkJavadoc>true</linkJavadoc>
423               </configuration>
424             </plugin>
425
426             <plugin>
427                 <groupId>org.codehaus.mojo</groupId>
428                 <artifactId>jdepend-maven-plugin</artifactId>
429                 <version>2.0-beta-2</version>
430             </plugin>
431         </plugins>
432     </reporting>
433     <profiles>
434         <profile>
435             <id>viewbuild</id>
436             <activation>
437                 <activeByDefault>true</activeByDefault>
438             </activation>
439             <properties>
440                 <build.suffix>${project.version}</build.suffix>
441             </properties>
442         </profile>
443         <profile>
444             <id>jenkins</id>
445             <activation>
446                 <property>
447                     <name>BUILDSUFFIX</name>
448                 </property>
449             </activation>
450             <properties>
451                 <build.suffix>${BUILDSUFFIX}</build.suffix>
452             </properties>
453         </profile>
454         <profile>
455             <id>repoBuild</id>
456             <build>
457                 <plugins>
458                     <plugin>
459                         <groupId>org.apache.maven.plugins</groupId>
460                         <artifactId>maven-javadoc-plugin</artifactId>
461                         <version>2.8.1</version>
462                         <executions>
463                             <execution>
464                                 <goals>
465                                     <goal>aggregate</goal>
466                                 </goals>
467                                 <phase>site</phase>
468                             </execution>
469                             <execution>
470                                 <id>attach-javadocs</id>
471                                 <goals>
472                                     <goal>jar</goal>
473                                 </goals>
474                             </execution>
475                         </executions>
476                     </plugin>
477                     <plugin>
478                         <groupId>org.apache.maven.plugins</groupId>
479                         <artifactId>maven-source-plugin</artifactId>
480                         <executions>
481                             <execution>
482                                 <id>attach-sources</id>
483                                 <phase>package</phase>
484                                 <goals>
485                                     <goal>jar-no-fork</goal>
486                                 </goals>
487                             </execution>
488                         </executions>
489                     </plugin>
490                 </plugins>
491             </build>
492         </profile>
493     </profiles>
494 </project>