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