Merge "Use odlparent configuration for jacoco"
[l2switch.git] / parent / 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"
3          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4   <modelVersion>4.0.0</modelVersion>
5   <parent>
6     <groupId>org.opendaylight.odlparent</groupId>
7     <artifactId>odlparent</artifactId>
8     <version>1.6.0-SNAPSHOT</version>
9     <relativePath/>
10   </parent>
11   <groupId>org.opendaylight.l2switch</groupId>
12   <artifactId>l2switch-parent</artifactId>
13   <version>0.3.0-SNAPSHOT</version>
14   <packaging>pom</packaging>
15
16   <properties>
17     <codeGeneratorPath>src/main/yang-gen-code</codeGeneratorPath>
18     <configCodeGeneratorPath>src/main/yang-gen-config</configCodeGeneratorPath>
19     <nexus_proxy>http://nexus.opendaylight.org/content</nexus_proxy>
20     <mdsal.version>1.3.0-SNAPSHOT</mdsal.version>
21     <yangtools.version>0.8.0-SNAPSHOT</yangtools.version>
22     <jung2.version>2.0.1</jung2.version>
23     <config.version>0.4.0-SNAPSHOT</config.version>
24     <openflow.plugin.version>0.2.0-SNAPSHOT</openflow.plugin.version>
25     <dlux.version>0.3.0-SNAPSHOT</dlux.version>
26     <config.configfile.directory>etc/opendaylight/karaf</config.configfile.directory>
27     <config.packethandler.configfile>50-packethandler.xml</config.packethandler.configfile>
28     <config.loopremover.configfile>52-loopremover.xml</config.loopremover.configfile>
29     <config.arphandler.configfile>54-arphandler.xml</config.arphandler.configfile>
30     <config.addresstracker.configfile>56-addresstracker.xml</config.addresstracker.configfile>
31     <config.hosttracker.configfile>57-hosttracker.xml</config.hosttracker.configfile>
32     <config.l2switchmain.configfile>58-l2switchmain.xml</config.l2switchmain.configfile>
33   </properties>
34
35   <dependencyManagement>
36     <dependencies>
37       <dependency>
38         <groupId>org.opendaylight.yangtools</groupId>
39         <artifactId>yangtools-artifacts</artifactId>
40         <version>${yangtools.version}</version>
41         <scope>import</scope>
42         <type>pom</type>
43       </dependency>
44       <dependency>
45         <groupId>org.opendaylight.mdsal</groupId>
46         <artifactId>mdsal-artifacts</artifactId>
47         <version>2.0.0-SNAPSHOT</version>
48         <scope>import</scope>
49         <type>pom</type>
50       </dependency>
51       <dependency>
52         <groupId>org.opendaylight.mdsal.model</groupId>
53         <artifactId>mdsal-model-artifacts</artifactId>
54         <version>0.8.0-SNAPSHOT</version>
55         <scope>import</scope>
56         <type>pom</type>
57       </dependency>
58       <dependency>
59         <groupId>org.opendaylight.controller</groupId>
60         <artifactId>config-artifacts</artifactId>
61         <version>${config.version}</version>
62         <scope>import</scope>
63         <type>pom</type>
64       </dependency>
65       <dependency>
66         <groupId>org.opendaylight.controller</groupId>
67         <artifactId>mdsal-artifacts</artifactId>
68         <version>${mdsal.version}</version>
69         <scope>import</scope>
70         <type>pom</type>
71       </dependency>
72       <dependency>
73         <groupId>org.opendaylight.openflowplugin</groupId>
74         <artifactId>openflowplugin-artifacts</artifactId>
75         <version>${openflow.plugin.version}</version>
76         <scope>import</scope>
77         <type>pom</type>
78       </dependency>
79       <dependency>
80         <groupId>org.opendaylight.l2switch</groupId>
81         <artifactId>l2switch-artifacts</artifactId>
82         <version>${project.version}</version>
83         <scope>import</scope>
84         <type>pom</type>
85       </dependency>
86
87       <dependency>
88         <groupId>org.opendaylight.controller.thirdparty</groupId>
89         <artifactId>net.sf.jung2</artifactId>
90         <version>${jung2.version}</version>
91       </dependency>
92     </dependencies>
93   </dependencyManagement>
94
95   <distributionManagement>
96     <!-- OpenDayLight Released artifact -->
97     <repository>
98       <id>opendaylight-release</id>
99       <url>${nexusproxy}/repositories/opendaylight.release/</url>
100     </repository>
101     <!-- OpenDayLight Snapshot artifact -->
102     <snapshotRepository>
103       <id>opendaylight-snapshot</id>
104       <url>${nexusproxy}/repositories/opendaylight.snapshot/</url>
105     </snapshotRepository>
106     <site>
107       <id>${project.artifactId}-site</id>
108       <url>./</url>
109     </site>
110   </distributionManagement>
111
112   <build>
113       <pluginManagement>
114           <plugins>
115               <plugin>
116                   <groupId>org.apache.maven.plugins</groupId>
117                   <artifactId>maven-compiler-plugin</artifactId>
118                   <version>${maven.compile.plugin.version}</version>
119                   <configuration>
120                       <source>${java.version.source}</source>
121                       <target>${java.version.target}</target>
122                   </configuration>
123               </plugin>
124
125               <plugin>
126                 <groupId>org.apache.maven.plugins</groupId>
127                 <artifactId>maven-checkstyle-plugin</artifactId>
128                 <version>${checkstyle.version}</version>
129                 <configuration>
130                   <failsOnError>true</failsOnError>
131                   <configLocation>controller/checkstyle.xml</configLocation>
132                   <consoleOutput>true</consoleOutput>
133                   <includeTestSourceDirectory>true</includeTestSourceDirectory>
134                   <sourceDirectory>${project.basedir}</sourceDirectory>
135                   <includes>**\/*.java,**\/*.yang,**\/*.xml,**\/*.ini,**\/*.sh,**\/*.bat</includes>
136                   <excludes>**\/target\/,**\/bin\/,**\/target-ide\/,\/,**\/xtend-gen\/,**\/yang-gen-code\/,**\/${codeGeneratorPath}\/,**\/${configCodeGeneratorPath}\/,</excludes>
137                 </configuration>
138                 <dependencies>
139                   <dependency>
140                     <groupId>org.opendaylight.controller</groupId>
141                     <artifactId>checkstyle</artifactId>
142                     <version>0.2.0-SNAPSHOT</version>
143                   </dependency>
144                 </dependencies>
145                 <executions>
146                   <execution>
147                     <id>check</id>
148                     <goals>
149                       <goal>check</goal>
150                     </goals>
151                     <phase>process-sources</phase>
152                   </execution>
153                 </executions>
154               </plugin>
155
156               <!--  tells eclipse to import these folders into the package explorer as "source" folders
157                     which allows eclipse to resolve the classes correctly during an eclipse build -->
158               <plugin>
159                   <groupId>org.codehaus.mojo</groupId>
160                   <artifactId>build-helper-maven-plugin</artifactId>
161                   <version>1.8</version>
162                   <executions>
163                       <execution>
164                           <id>add-source</id>
165                           <goals>
166                               <goal>add-source</goal>
167                           </goals>
168                           <phase>generate-sources</phase>
169                           <configuration>
170                               <sources>
171                                   <source>src/main/yang</source>
172                                   <source>${codeGeneratorPath}</source>
173                                   <source>${configCodeGeneratorPath}</source>
174                               </sources>
175                           </configuration>
176                       </execution>
177                   </executions>
178               </plugin>
179               <!--  cleans up auto generated code  -->
180               <plugin>
181                   <artifactId>maven-clean-plugin</artifactId>
182                   <configuration>
183                       <filesets>
184                           <fileset>
185                               <directory>${codeGeneratorPath}</directory>
186                               <directory>${configCodeGeneratorPath}</directory>
187                               <includes>
188                                   <include>**</include>
189                               </includes>
190                           </fileset>
191                       </filesets>
192                   </configuration>
193               </plugin>
194
195               <!-- Ignore/Execute plugin execution -->
196               <plugin>
197                   <groupId>org.eclipse.m2e</groupId>
198                   <artifactId>lifecycle-mapping</artifactId>
199                   <version>1.0.0</version>
200                   <configuration>
201                       <lifecycleMappingMetadata>
202                           <pluginExecutions>
203                               <pluginExecution>
204                                   <pluginExecutionFilter>
205                                       <groupId>org.codehaus.mojo</groupId>
206                                       <artifactId>properties-maven-plugin</artifactId>
207                                       <versionRange>[0.0,)</versionRange>
208                                       <goals>
209                                           <goal>set-system-properties</goal>
210                                       </goals>
211                                   </pluginExecutionFilter>
212                                   <action>
213                                       <ignore />
214                                   </action>
215                               </pluginExecution>
216                               <pluginExecution>
217                                   <pluginExecutionFilter>
218                                       <groupId>org.jacoco</groupId>
219                                       <artifactId>jacoco-maven-plugin</artifactId>
220                                       <versionRange>[0.0,)</versionRange>
221                                       <goals>
222                                           <goal>prepare-agent</goal>
223                                           <goal>pre-test</goal>
224                                           <goal>post-test</goal>
225                                       </goals>
226                                   </pluginExecutionFilter>
227                                   <action>
228                                       <ignore />
229                                   </action>
230                               </pluginExecution>
231                               <pluginExecution>
232                                   <pluginExecutionFilter>
233                                       <groupId>org.ops4j.pax.exam</groupId>
234                                       <artifactId>maven-paxexam-plugin</artifactId>
235                                       <versionRange>[1.2.4,)</versionRange>
236                                       <goals>
237                                           <goal>generate-depends-file</goal>
238                                       </goals>
239                                   </pluginExecutionFilter>
240                                   <action>
241                                       <execute>
242                                           <runOnIncremental>false</runOnIncremental>
243                                       </execute>
244                                   </action>
245                               </pluginExecution>
246                               <pluginExecution>
247                                   <pluginExecutionFilter>
248                                       <groupId>org.apache.maven.plugins</groupId>
249                                       <artifactId>maven-checkstyle-plugin</artifactId>
250                                       <versionRange>[2.0,)</versionRange>
251                                       <goals>
252                                           <goal>check</goal>
253                                       </goals>
254                                   </pluginExecutionFilter>
255                                   <action>
256                                       <ignore />
257                                   </action>
258                               </pluginExecution>
259                               <pluginExecution>
260                                   <pluginExecutionFilter>
261                                       <groupId>org.opendaylight.yangtools</groupId>
262                                       <artifactId>yang-maven-plugin</artifactId>
263                                       <versionRange>[0.5,)</versionRange>
264                                       <goals>
265                                           <goal>generate-sources</goal>
266                                       </goals>
267                                   </pluginExecutionFilter>
268                                   <action>
269                                       <execute />
270                                   </action>
271                               </pluginExecution>
272                               <pluginExecution>
273                                   <pluginExecutionFilter>
274                                       <groupId>org.codehaus.groovy.maven</groupId>
275                                       <artifactId>gmaven-plugin</artifactId>
276                                       <versionRange>1.0</versionRange>
277                                       <goals>
278                                           <goal>execute</goal>
279                                       </goals>
280                                   </pluginExecutionFilter>
281                                   <action>
282                                       <ignore />
283                                   </action>
284                               </pluginExecution>
285                               <pluginExecution>
286                                   <pluginExecutionFilter>
287                                       <groupId>org.apache.maven.plugins</groupId>
288                                       <artifactId>maven-enforcer-plugin</artifactId>
289                                       <versionRange>${enforcer.version}</versionRange>
290                                       <goals>
291                                           <goal>enforce</goal>
292                                       </goals>
293                                   </pluginExecutionFilter>
294                                   <action>
295                                       <ignore />
296                                   </action>
297                               </pluginExecution>
298                           </pluginExecutions>
299                       </lifecycleMappingMetadata>
300                   </configuration>
301               </plugin>
302           </plugins>
303       </pluginManagement>
304       <plugins>
305           <plugin>
306             <groupId>org.codehaus.mojo</groupId>
307             <artifactId>build-helper-maven-plugin</artifactId>
308           </plugin>
309           <plugin>
310               <groupId>org.apache.maven.plugins</groupId>
311               <artifactId>maven-checkstyle-plugin</artifactId>
312           </plugin>
313       </plugins>
314   </build>
315
316
317 </project>