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