Create mvn profile for integrationtests
[controller.git] / opendaylight / config / 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
5     <parent>
6         <groupId>org.opendaylight.controller</groupId>
7         <artifactId>commons.opendaylight</artifactId>
8         <version>1.4.1-SNAPSHOT</version>
9         <relativePath>../commons/opendaylight</relativePath>
10     </parent>
11
12
13     <version>0.2.2-SNAPSHOT</version>
14     <artifactId>config-subsystem</artifactId>
15     <packaging>pom</packaging>
16     <name>${project.artifactId}</name>
17     <prerequisites>
18         <maven>3.0.4</maven>
19     </prerequisites>
20     <modules>
21         <module>config-api</module>
22         <module>config-manager</module>
23         <module>config-util</module>
24         <module>config-persister-api</module>
25         <module>config-persister-file-adapter</module>
26         <module>yang-jmx-generator</module>
27         <module>yang-jmx-generator-plugin</module>
28         <module>yang-store-api</module>
29         <module>yang-store-impl</module>
30         <module>yang-test</module>
31         <module>logback-config</module>
32     </modules>
33
34     <profiles>
35       <profile>
36         <id>integrationtests</id>
37         <activation>
38           <activeByDefault>false</activeByDefault>
39         </activation>
40         <modules>
41           <module>yang-jmx-generator-it</module>
42         </modules>
43       </profile>
44     </profiles>
45
46     <properties>
47         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
48         <java.version.source>1.7</java.version.source>
49         <java.version.target>1.7</java.version.target>
50         <junit.version>4.10</junit.version>
51         <maven.bundle.version>2.3.7</maven.bundle.version>
52         <osgi.version>5.0.0</osgi.version>
53         <jacoco.version>0.6.2.201302030002</jacoco.version>
54         <slf4j.version>1.7.2</slf4j.version>
55         <jolokia.version>1.1.1</jolokia.version>
56         <opendaylight.yang.version>0.5.9-SNAPSHOT</opendaylight.yang.version>
57         <opendaylight.binding.version>0.6.0-SNAPSHOT</opendaylight.binding.version>
58         <opendaylight.yangtools.version>0.1.1-SNAPSHOT</opendaylight.yangtools.version>
59         <jmxGeneratorPath>${project.build.directory}/generated-sources/config</jmxGeneratorPath>
60     </properties>
61
62     <dependencies>
63         <dependency>
64             <groupId>junit</groupId>
65             <artifactId>junit</artifactId>
66             <scope>test</scope>
67         </dependency>
68         <dependency>
69             <groupId>ch.qos.logback</groupId>
70             <artifactId>logback-classic</artifactId>
71             <version>${logback.version}</version>
72             <scope>test</scope>
73         </dependency>
74     </dependencies>
75
76     <dependencyManagement>
77         <dependencies>
78             <dependency>
79                 <groupId>org.slf4j</groupId>
80                 <artifactId>slf4j-api</artifactId>
81                 <version>${slf4j.version}</version>
82             </dependency>
83             <dependency>
84                 <groupId>org.osgi</groupId>
85                 <artifactId>org.osgi.core</artifactId>
86                 <version>${osgi.version}</version>
87             </dependency>
88             <dependency>
89                 <groupId>com.google.code.findbugs</groupId>
90                 <artifactId>jsr305</artifactId>
91                 <version>2.0.1</version>
92             </dependency>
93             <dependency>
94                 <groupId>commons-io</groupId>
95                 <artifactId>commons-io</artifactId>
96                 <version>2.4</version>
97             </dependency>
98             <dependency>
99                 <groupId>com.google.guava</groupId>
100                 <artifactId>guava</artifactId>
101                 <version>14.0.1</version>
102             </dependency>
103             <dependency>
104                 <groupId>org.jolokia</groupId>
105                 <artifactId>jolokia-core</artifactId>
106                 <version>${jolokia.version}</version>
107             </dependency>
108             <dependency>
109                 <groupId>org.jolokia</groupId>
110                 <artifactId>jolokia-jvm</artifactId>
111                 <version>${jolokia.version}</version>
112                 <classifier>agent</classifier>
113             </dependency>
114             <dependency>
115                 <groupId>org.jolokia</groupId>
116                 <artifactId>jolokia-client-java</artifactId>
117                 <version>${jolokia.version}</version>
118             </dependency>
119             <dependency>
120                 <groupId>junit</groupId>
121                 <artifactId>junit</artifactId>
122                 <version>${junit.version}</version>
123             </dependency>
124             <dependency>
125                 <groupId>org.apache.commons</groupId>
126                 <artifactId>commons-lang3</artifactId>
127                 <version>${commons.lang.version}</version>
128             </dependency>
129
130             <dependency>
131                 <groupId>${project.groupId}</groupId>
132                 <artifactId>config-api</artifactId>
133                 <version>${config.version}</version>
134             </dependency>
135
136             <dependency>
137                 <groupId>${project.groupId}</groupId>
138                 <artifactId>config-util</artifactId>
139                 <version>${config.version}</version>
140             </dependency>
141             <dependency>
142                 <groupId>${project.groupId}</groupId>
143                 <artifactId>config-util</artifactId>
144                 <version>${config.version}</version>
145                 <type>test-jar</type>
146             </dependency>
147             <dependency>
148                 <groupId>${project.groupId}</groupId>
149                 <artifactId>config-manager</artifactId>
150                 <version>${config.version}</version>
151             </dependency>
152             <dependency>
153                 <groupId>${project.groupId}</groupId>
154                 <artifactId>config-manager</artifactId>
155                 <version>${config.version}</version>
156                 <type>test-jar</type>
157             </dependency>
158             <dependency>
159                 <groupId>${project.groupId}</groupId>
160                 <artifactId>config-persister-api</artifactId>
161                 <version>${config.version}</version>
162             </dependency>
163             <dependency>
164                 <groupId>org.opendaylight.bgpcep</groupId>
165                 <artifactId>mockito-configuration</artifactId>
166                 <version>${bgpcep.version}</version>
167             </dependency>
168             <dependency>
169                 <groupId>org.opendaylight.yangtools</groupId>
170                 <artifactId>binding-generator-spi</artifactId>
171                 <version>${opendaylight.binding.version}</version>
172             </dependency>
173             <dependency>
174                 <groupId>org.opendaylight.yangtools</groupId>
175                 <artifactId>binding-generator-util</artifactId>
176                 <version>${opendaylight.binding.version}</version>
177             </dependency>
178             <dependency>
179                 <groupId>org.opendaylight.yangtools</groupId>
180                 <artifactId>yang-parser-impl</artifactId>
181                 <version>${opendaylight.yang.version}</version>
182             </dependency>
183             <dependency>
184                 <groupId>org.opendaylight.yangtools</groupId>
185                 <artifactId>binding-generator-impl</artifactId>
186                 <version>${opendaylight.binding.version}</version>
187             </dependency>
188             <dependency>
189                 <groupId>${project.groupId}</groupId>
190                 <artifactId>yang-test</artifactId>
191                 <version>${config.version}</version>
192             </dependency>
193             <dependency>
194                 <groupId>org.opendaylight.controller</groupId>
195                 <artifactId>yang-jmx-generator</artifactId>
196                 <version>${config.version}</version>
197             </dependency>
198             <dependency>
199                 <groupId>org.opendaylight.controller</groupId>
200                 <artifactId>yang-jmx-generator</artifactId>
201                 <version>${config.version}</version>
202                 <type>test-jar</type>
203             </dependency>
204             <dependency>
205                 <groupId>org.opendaylight.yangtools</groupId>
206                 <artifactId>binding-type-provider</artifactId>
207                 <version>${opendaylight.binding.version}</version>
208             </dependency>
209             <dependency>
210                 <groupId>org.opendaylight.yangtools</groupId>
211                 <artifactId>yang-maven-plugin-spi</artifactId>
212                 <version>${opendaylight.yang.version}</version>
213             </dependency>
214             <dependency>
215                 <groupId>${project.groupId}</groupId>
216                 <artifactId>yang-store-api</artifactId>
217                 <version>${config.version}</version>
218             </dependency>
219         </dependencies>
220     </dependencyManagement>
221
222
223     <build>
224         <plugins>
225             <plugin>
226                 <groupId>org.apache.maven.plugins</groupId>
227                 <artifactId>maven-compiler-plugin</artifactId>
228             </plugin>
229             <plugin>
230                 <groupId>org.jacoco</groupId>
231                 <artifactId>jacoco-maven-plugin</artifactId>
232                 <version>${jacoco.version}</version>
233                 <executions>
234                     <execution>
235                         <goals>
236                             <goal>prepare-agent</goal>
237                         </goals>
238                     </execution>
239                     <execution>
240                         <id>report</id>
241                         <phase>prepare-package</phase>
242                         <goals>
243                             <goal>check</goal>
244                             <goal>report</goal>
245                         </goals>
246                         <configuration>
247                             <outputDirectory>${basedir}/target/jacoco</outputDirectory>
248                             <haltOnFailure>false</haltOnFailure>
249                             <check>
250                                 <classRatio>80</classRatio>
251                             </check>
252                         </configuration>
253                     </execution>
254                 </executions>
255             </plugin>
256             <plugin>
257                 <groupId>org.apache.maven.plugins</groupId>
258                 <artifactId>maven-surefire-plugin</artifactId>
259             </plugin>
260             <plugin>
261                 <groupId>org.codehaus.mojo</groupId>
262                 <artifactId>build-helper-maven-plugin</artifactId>
263             </plugin>
264         </plugins>
265
266
267
268         <pluginManagement>
269             <plugins>
270                 <plugin>
271                     <groupId>org.opendaylight.yangtools</groupId>
272                     <artifactId>yang-maven-plugin</artifactId>
273                     <version>${opendaylight.yang.version}</version>
274                     <executions>
275                         <execution>
276                             <goals>
277                                 <goal>generate-sources</goal>
278                             </goals>
279                             <configuration>
280                                 <codeGenerators>
281                                     <generator>
282                                         <codeGeneratorClass>
283                                             org.opendaylight.controller.config.yangjmxgenerator.plugin.JMXGenerator
284                                         </codeGeneratorClass>
285                                         <outputBaseDir>${jmxGeneratorPath}</outputBaseDir>
286                                         <additionalConfiguration>
287                                             <namespaceToPackage1>
288                                                 urn:opendaylight:params:xml:ns:yang:controller==org.opendaylight.controller.config.yang
289                                             </namespaceToPackage1>
290                                         </additionalConfiguration>
291                                     </generator>
292                                 </codeGenerators>
293                                 <inspectDependencies>true</inspectDependencies>
294                             </configuration>
295                         </execution>
296                     </executions>
297                     <dependencies>
298                         <dependency>
299                             <groupId>org.opendaylight.controller</groupId>
300                             <artifactId>yang-jmx-generator-plugin</artifactId>
301                             <version>${config.version}</version>
302                         </dependency>
303                     </dependencies>
304                 </plugin>
305                 <!-- tell eclipse about generated source folders -->
306                 <plugin>
307                     <groupId>org.codehaus.mojo</groupId>
308                     <artifactId>build-helper-maven-plugin</artifactId>
309                     <version>1.8</version>
310                     <executions>
311                         <execution>
312                             <id>add-source</id>
313                             <phase>generate-sources</phase>
314                             <goals>
315                                 <goal>add-source</goal>
316                             </goals>
317                             <configuration>
318                                 <sources>
319                                     <source>${jmxGeneratorPath}</source>
320                                 </sources>
321                             </configuration>
322                         </execution>
323                     </executions>
324                 </plugin>
325                 <plugin>
326                     <groupId>org.apache.maven.plugins</groupId>
327                     <artifactId>maven-jar-plugin</artifactId>
328                     <version>2.4</version>
329                     <executions>
330                         <execution>
331                             <phase>package</phase>
332                             <goals>
333                                 <goal>test-jar</goal>
334                             </goals>
335                         </execution>
336                     </executions>
337                 </plugin>
338                 <plugin>
339                     <groupId>org.apache.felix</groupId>
340                     <artifactId>maven-bundle-plugin</artifactId>
341                     <version>${maven.bundle.version}</version>
342                     <extensions>true</extensions>
343                     <configuration>
344                         <instructions>
345                             <Bundle-Name>${project.groupId}.${project.artifactId}</Bundle-Name>
346                         </instructions>
347                     </configuration>
348                 </plugin>
349                 <plugin>
350                     <groupId>org.apache.maven.plugins</groupId>
351                     <artifactId>maven-surefire-plugin</artifactId>
352                     <version>2.14.1</version>
353                     <configuration>
354                         <redirectTestOutputToFile>true</redirectTestOutputToFile>
355                         <parallel>classes</parallel>
356                         <forkCount>1C</forkCount>
357                         <reuseForks>false</reuseForks>
358                         <perCoreThreadCount>true</perCoreThreadCount>
359                         <threadCount>2</threadCount>
360                     </configuration>
361                 </plugin>
362                 <plugin>
363                     <groupId>org.apache.maven.plugins</groupId>
364                     <artifactId>maven-antrun-plugin</artifactId>
365                     <version>1.3</version>
366                 </plugin>
367                 <plugin>
368                     <groupId>org.codehaus.groovy.maven</groupId>
369                     <artifactId>gmaven-plugin</artifactId>
370                     <version>1.0</version>
371                 </plugin>
372                 <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
373                 <plugin>
374                     <groupId>org.eclipse.m2e</groupId>
375                     <artifactId>lifecycle-mapping</artifactId>
376                     <version>1.0.0</version>
377                     <configuration>
378                         <lifecycleMappingMetadata>
379                             <pluginExecutions>
380                                 <pluginExecution>
381                                     <pluginExecutionFilter>
382                                         <groupId>
383                                             org.opendaylight.yangtools
384                                         </groupId>
385                                         <artifactId>
386                                             yang-maven-plugin
387                                         </artifactId>
388                                         <versionRange>
389                                             [0.5.7-SNAPSHOT,)
390                                         </versionRange>
391                                         <goals>
392                                             <goal>
393                                                 generate-sources
394                                             </goal>
395                                         </goals>
396                                     </pluginExecutionFilter>
397                                     <action>
398                                         <ignore></ignore>
399                                     </action>
400                                 </pluginExecution>
401                             </pluginExecutions>
402                         </lifecycleMappingMetadata>
403                     </configuration>
404                 </plugin>
405             </plugins>
406         </pluginManagement>
407     </build>
408 </project>