Base projects and parents for IT tests.
[controller.git] / opendaylight / config / 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
5   <parent>
6     <groupId>org.opendaylight.controller</groupId>
7     <artifactId>commons.opendaylight</artifactId>
8     <version>1.6.0-SNAPSHOT</version>
9     <relativePath>../commons/opendaylight</relativePath>
10   </parent>
11   <artifactId>config-subsystem</artifactId>
12
13   <version>0.4.0-SNAPSHOT</version>
14   <packaging>pom</packaging>
15   <name>${project.artifactId}</name>
16
17   <modules>
18     <module>config-api</module>
19     <module>config-manager</module>
20     <module>config-plugin-parent</module>
21     <module>config-util</module>
22     <module>config-persister-api</module>
23     <module>config-persister-file-xml-adapter</module>
24     <module>config-persister-feature-adapter</module>
25     <module>yang-jmx-generator</module>
26     <module>yang-jmx-generator-plugin</module>
27     <module>yang-test</module>
28     <module>logback-config</module>
29     <module>threadpool-config-api</module>
30     <module>netty-config-api</module>
31     <module>threadpool-config-impl</module>
32     <module>netty-threadgroup-config</module>
33     <module>netty-event-executor-config</module>
34     <module>netty-timer-config</module>
35     <module>config-persister-directory-xml-adapter</module>
36     <module>yang-test-plugin</module>
37     <module>shutdown-api</module>
38     <module>shutdown-impl</module>
39     <module>netconf-config-dispatcher</module>
40     <module>config-module-archetype</module>
41     <module>config-netty-config</module>
42
43     <module>config-artifacts</module>
44     <module>config-parent</module>
45     <module>config-it-base</module>
46   </modules>
47
48   <dependencies>
49     <dependency>
50       <groupId>org.osgi</groupId>
51       <artifactId>org.osgi.compendium</artifactId>
52     </dependency>
53     <dependency>
54       <groupId>org.osgi</groupId>
55       <artifactId>org.osgi.core</artifactId>
56     </dependency>
57     <dependency>
58       <groupId>ch.qos.logback</groupId>
59       <artifactId>logback-classic</artifactId>
60       <scope>test</scope>
61     </dependency>
62     <dependency>
63       <groupId>junit</groupId>
64       <artifactId>junit</artifactId>
65       <scope>test</scope>
66     </dependency>
67   </dependencies>
68
69   <build>
70
71     <pluginManagement>
72       <plugins>
73         <plugin>
74           <groupId>org.apache.felix</groupId>
75           <artifactId>maven-bundle-plugin</artifactId>
76           <extensions>true</extensions>
77           <configuration>
78             <instructions>
79               <Bundle-Name>${project.groupId}.${project.artifactId}</Bundle-Name>
80             </instructions>
81           </configuration>
82         </plugin>
83         <plugin>
84           <groupId>org.apache.maven.plugins</groupId>
85           <artifactId>maven-antrun-plugin</artifactId>
86           <version>${maven.antrun.plugin.version}</version>
87         </plugin>
88         <plugin>
89           <groupId>org.apache.maven.plugins</groupId>
90           <artifactId>maven-jar-plugin</artifactId>
91           <executions>
92             <execution>
93               <goals>
94                 <goal>test-jar</goal>
95               </goals>
96               <phase>package</phase>
97             </execution>
98           </executions>
99         </plugin>
100         <plugin>
101           <groupId>org.codehaus.groovy.maven</groupId>
102           <artifactId>gmaven-plugin</artifactId>
103           <version>${gmaven.plugin.version}</version>
104         </plugin>
105         <plugin>
106           <groupId>org.opendaylight.yangtools</groupId>
107           <artifactId>yang-maven-plugin</artifactId>
108           <version>${yangtools.version}</version>
109           <dependencies>
110             <dependency>
111               <groupId>org.opendaylight.yangtools</groupId>
112               <artifactId>maven-sal-api-gen-plugin</artifactId>
113               <version>${yangtools.version}</version>
114               <type>jar</type>
115             </dependency>
116           </dependencies>
117           <executions>
118             <execution>
119               <id>sal</id>
120               <goals>
121                 <goal>generate-sources</goal>
122               </goals>
123               <configuration>
124                 <yangFilesRootDir>src/main/yang</yangFilesRootDir>
125                 <codeGenerators>
126                   <generator>
127                     <codeGeneratorClass>org.opendaylight.yangtools.maven.sal.api.gen.plugin.CodeGeneratorImpl</codeGeneratorClass>
128                     <outputBaseDir>${salGeneratorPath}</outputBaseDir>
129                   </generator>
130                   <generator>
131                     <codeGeneratorClass>org.opendaylight.yangtools.yang.unified.doc.generator.maven.DocumentationGeneratorImpl</codeGeneratorClass>
132                     <outputBaseDir>${project.build.directory}/site/models</outputBaseDir>
133                   </generator>
134                 </codeGenerators>
135                 <inspectDependencies>true</inspectDependencies>
136               </configuration>
137             </execution>
138           </executions>
139         </plugin>
140       </plugins>
141     </pluginManagement>
142     <plugins>
143       <plugin>
144         <groupId>org.apache.maven.plugins</groupId>
145         <artifactId>maven-checkstyle-plugin</artifactId>
146         <configuration>
147           <failsOnError>false</failsOnError>
148           <failOnViolation>true</failOnViolation>
149           <configLocation>checkstyle-logging.xml</configLocation>
150           <consoleOutput>true</consoleOutput>
151           <includeTestSourceDirectory>true</includeTestSourceDirectory>
152           <sourceDirectory>${project.basedir}</sourceDirectory>
153           <includes>**\/*.java,**\/*.xml,**\/*.ini,**\/*.sh,**\/*.bat,**\/*.yang</includes>
154           <!-- excluding logback-config, has several checkstyle warnings
155                regarding Logger/LoggerFactory, which couldn't be removed due necessity/intention
156                to use the particular implementation/library of Logger/LoggerFactory -->
157           <excludes>**\/config\/yang\/logback\/config\/**,**\/target\/,**\/bin\/,**\/target-ide\/,**\/${jmxGeneratorPath}\/,**\/${salGeneratorPath}\/</excludes>
158         </configuration>
159         <dependencies>
160           <dependency>
161             <groupId>org.opendaylight.yangtools</groupId>
162             <artifactId>checkstyle-logging</artifactId>
163             <version>${yangtools.version}</version>
164           </dependency>
165         </dependencies>
166         <executions>
167           <execution>
168             <goals>
169               <goal>check</goal>
170             </goals>
171           </execution>
172         </executions>
173       </plugin>
174       <plugin>
175         <groupId>org.apache.maven.plugins</groupId>
176         <artifactId>maven-compiler-plugin</artifactId>
177       </plugin>
178       <plugin>
179         <groupId>org.apache.maven.plugins</groupId>
180         <artifactId>maven-surefire-plugin</artifactId>
181       </plugin>
182       <plugin>
183         <groupId>org.jacoco</groupId>
184         <artifactId>jacoco-maven-plugin</artifactId>
185         <executions>
186           <execution>
187             <goals>
188               <goal>prepare-agent</goal>
189             </goals>
190           </execution>
191           <execution>
192             <id>report</id>
193             <goals>
194               <goal>check</goal>
195               <goal>report</goal>
196             </goals>
197             <phase>prepare-package</phase>
198             <configuration>
199               <outputDirectory>${project.build.directory}/jacoco</outputDirectory>
200               <haltOnFailure>false</haltOnFailure>
201               <rules>
202                 <rule>
203                   <element>CLASS</element>
204                   <excludes>
205                     <exclude>*Test</exclude>
206                   </excludes>
207                   <limits>
208                     <limit>
209                       <counter>LINE</counter>
210                       <value>COVEREDRATIO</value>
211                       <minimum>0.50</minimum>
212                     </limit>
213                   </limits>
214                 </rule>
215               </rules>
216             </configuration>
217           </execution>
218         </executions>
219       </plugin>
220
221     </plugins>
222   </build>
223
224   <profiles>
225     <profile>
226       <id>integrationtests</id>
227       <activation>
228         <activeByDefault>false</activeByDefault>
229       </activation>
230       <modules>
231         <module>yang-jmx-generator-it</module>
232       </modules>
233     </profile>
234   </profiles>
235 </project>

©2013 OpenDaylight, A Linux Foundation Collaborative Project. All Rights Reserved.
OpenDaylight is a registered trademark of The OpenDaylight Project, Inc.
Linux Foundation and OpenDaylight are registered trademarks of the Linux Foundation.
Linux is a registered trademark of Linus Torvalds.