Reworked pom files
[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     <groupId>org.opendaylight.controller</groupId>
14     <version>0.2.1-SNAPSHOT</version>
15     <artifactId>config-subsystem</artifactId>
16     <packaging>pom</packaging>
17     <name>${project.artifactId}</name>
18     <prerequisites>
19         <maven>3.0.4</maven>
20     </prerequisites>
21     <modules>
22         <module>config-api</module>
23         <module>config-manager</module>
24         <module>config-util</module>
25         <module>yang-jmx-generator</module>
26         <module>yang-jmx-generator-plugin</module>
27         <module>yang-jmx-generator-it</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     <properties>
34         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
35         <java.version.source>1.7</java.version.source>
36         <java.version.target>1.7</java.version.target>
37         <junit.version>4.10</junit.version>
38         <maven.bundle.version>2.3.7</maven.bundle.version>
39         <osgi.version>5.0.0</osgi.version>
40         <jacoco.version>0.6.2.201302030002</jacoco.version>
41         <slf4j.version>1.7.2</slf4j.version>
42         <jolokia.version>1.1.1</jolokia.version>
43         <osgi.core.version>5.0.0</osgi.core.version>
44         <opendaylight.yang.version>0.5.9-SNAPSHOT</opendaylight.yang.version>
45         <opendaylight.binding.version>0.6.0-SNAPSHOT</opendaylight.binding.version>
46         <jmxGeneratorPath>${project.build.directory}/generated-sources/config</jmxGeneratorPath>
47     </properties>
48
49     <dependencies>
50         <dependency>
51             <groupId>junit</groupId>
52             <artifactId>junit</artifactId>
53             <scope>test</scope>
54         </dependency>
55         <dependency>
56             <groupId>ch.qos.logback</groupId>
57             <artifactId>logback-classic</artifactId>
58             <version>${logback.version}</version>
59             <scope>test</scope>
60         </dependency>
61     </dependencies>
62
63     <dependencyManagement>
64         <dependencies>
65             <dependency>
66                 <groupId>org.slf4j</groupId>
67                 <artifactId>slf4j-api</artifactId>
68                 <version>${slf4j.version}</version>
69             </dependency>
70             <dependency>
71                 <groupId>org.osgi</groupId>
72                 <artifactId>org.osgi.core</artifactId>
73                 <version>${osgi.version}</version>
74             </dependency>
75             <dependency>
76                 <groupId>com.google.code.findbugs</groupId>
77                 <artifactId>jsr305</artifactId>
78                 <version>2.0.1</version>
79             </dependency>
80             <dependency>
81                 <groupId>commons-io</groupId>
82                 <artifactId>commons-io</artifactId>
83                 <version>2.4</version>
84             </dependency>
85             <dependency>
86                 <groupId>com.google.guava</groupId>
87                 <artifactId>guava</artifactId>
88                 <version>14.0.1</version>
89             </dependency>
90             <dependency>
91                 <groupId>org.jolokia</groupId>
92                 <artifactId>jolokia-core</artifactId>
93                 <version>${jolokia.version}</version>
94             </dependency>
95             <dependency>
96                 <groupId>org.jolokia</groupId>
97                 <artifactId>jolokia-jvm</artifactId>
98                 <version>${jolokia.version}</version>
99                 <classifier>agent</classifier>
100             </dependency>
101             <dependency>
102                 <groupId>org.jolokia</groupId>
103                 <artifactId>jolokia-client-java</artifactId>
104                 <version>${jolokia.version}</version>
105             </dependency>
106             <dependency>
107                 <groupId>junit</groupId>
108                 <artifactId>junit</artifactId>
109                 <version>${junit.version}</version>
110             </dependency>
111             <dependency>
112                 <groupId>org.apache.commons</groupId>
113                 <artifactId>commons-lang3</artifactId>
114                 <version>${commons.lang.version}</version>
115             </dependency>
116         </dependencies>
117     </dependencyManagement>
118
119
120     <build>
121         <plugins>
122             <plugin>
123                 <groupId>org.apache.maven.plugins</groupId>
124                 <artifactId>maven-compiler-plugin</artifactId>
125                 <version>2.5.1</version>
126                 <configuration>
127                     <source>${java.version.source}</source>
128                     <target>${java.version.target}</target>
129                     <testSource>${java.version.source}</testSource>
130                     <testTarget>${java.version.target}</testTarget>
131                 </configuration>
132             </plugin>
133             <plugin>
134                 <groupId>org.jacoco</groupId>
135                 <artifactId>jacoco-maven-plugin</artifactId>
136                 <version>${jacoco.version}</version>
137                 <executions>
138                     <execution>
139                         <goals>
140                             <goal>prepare-agent</goal>
141                         </goals>
142                     </execution>
143                     <execution>
144                         <id>report</id>
145                         <phase>prepare-package</phase>
146                         <goals>
147                             <goal>check</goal>
148                             <goal>report</goal>
149                         </goals>
150                         <configuration>
151                             <outputDirectory>${basedir}/target/jacoco</outputDirectory>
152                             <haltOnFailure>false</haltOnFailure>
153                             <check>
154                                 <classRatio>80</classRatio>
155                             </check>
156                         </configuration>
157                     </execution>
158                 </executions>
159             </plugin>
160             <plugin>
161                 <groupId>org.apache.maven.plugins</groupId>
162                 <artifactId>maven-surefire-plugin</artifactId>
163             </plugin>
164             <plugin>
165                 <groupId>org.codehaus.mojo</groupId>
166                 <artifactId>build-helper-maven-plugin</artifactId>
167             </plugin>
168         </plugins>
169         <pluginManagement>
170             <plugins>
171                 <plugin>
172                     <groupId>org.opendaylight.yangtools</groupId>
173                     <artifactId>yang-maven-plugin</artifactId>
174                     <version>${opendaylight.yang.version}</version>
175                     <executions>
176                         <execution>
177                             <goals>
178                                 <goal>generate-sources</goal>
179                             </goals>
180                             <configuration>
181                                 <codeGenerators>
182                                     <generator>
183                                         <codeGeneratorClass>
184                                             org.opendaylight.controller.config.yangjmxgenerator.plugin.JMXGenerator
185                                         </codeGeneratorClass>
186                                         <outputBaseDir>${jmxGeneratorPath}</outputBaseDir>
187                                         <additionalConfiguration>
188                                             <namespaceToPackage1>
189                                                 urn:opendaylight:params:xml:ns:yang:controller==org.opendaylight.controller.config.yang
190                                             </namespaceToPackage1>
191                                         </additionalConfiguration>
192                                     </generator>
193                                 </codeGenerators>
194                                 <inspectDependencies>true</inspectDependencies>
195                             </configuration>
196                         </execution>
197                     </executions>
198                     <dependencies>
199                         <dependency>
200                             <groupId>org.opendaylight.controller</groupId>
201                             <artifactId>yang-jmx-generator-plugin</artifactId>
202                             <version>0.2.1-SNAPSHOT</version>
203                         </dependency>
204                     </dependencies>
205                 </plugin>
206                 <!-- tell eclipse about generated source folders -->
207                 <plugin>
208                     <groupId>org.codehaus.mojo</groupId>
209                     <artifactId>build-helper-maven-plugin</artifactId>
210                     <version>1.8</version>
211                     <executions>
212                         <execution>
213                             <id>add-source</id>
214                             <phase>generate-sources</phase>
215                             <goals>
216                                 <goal>add-source</goal>
217                             </goals>
218                             <configuration>
219                                 <sources>
220                                     <source>${jmxGeneratorPath}</source>
221                                 </sources>
222                             </configuration>
223                         </execution>
224                     </executions>
225                 </plugin>
226                 <plugin>
227                     <groupId>org.apache.maven.plugins</groupId>
228                     <artifactId>maven-jar-plugin</artifactId>
229                     <version>2.4</version>
230                     <executions>
231                         <execution>
232                             <phase>package</phase>
233                             <goals>
234                                 <goal>test-jar</goal>
235                             </goals>
236                         </execution>
237                     </executions>
238                 </plugin>
239                 <plugin>
240                     <groupId>org.apache.felix</groupId>
241                     <artifactId>maven-bundle-plugin</artifactId>
242                     <version>${maven.bundle.version}</version>
243                     <extensions>true</extensions>
244                     <configuration>
245                         <instructions>
246                             <Bundle-Name>${project.groupId}.${project.artifactId}</Bundle-Name>
247                         </instructions>
248                     </configuration>
249                 </plugin>
250                 <plugin>
251                     <groupId>org.apache.maven.plugins</groupId>
252                     <artifactId>maven-surefire-plugin</artifactId>
253                     <version>2.14.1</version>
254                     <configuration>
255                         <redirectTestOutputToFile>true</redirectTestOutputToFile>
256                         <parallel>classes</parallel>
257                         <forkCount>1C</forkCount>
258                         <reuseForks>false</reuseForks>
259                         <perCoreThreadCount>true</perCoreThreadCount>
260                         <threadCount>2</threadCount>
261                     </configuration>
262                 </plugin>
263                 <plugin>
264                     <groupId>org.apache.maven.plugins</groupId>
265                     <artifactId>maven-antrun-plugin</artifactId>
266                     <version>1.3</version>
267                 </plugin>
268                 <plugin>
269                     <groupId>org.codehaus.groovy.maven</groupId>
270                     <artifactId>gmaven-plugin</artifactId>
271                     <version>1.0</version>
272                 </plugin>
273             </plugins>
274         </pluginManagement>
275     </build>
276
277     <pluginRepositories>
278         <pluginRepository>
279             <id>nexus.opendaylight.org</id>
280             <url>http://nexus.opendaylight.org/content/repositories/opendaylight.snapshot</url>
281             <releases>
282                 <enabled>true</enabled>
283             </releases>
284             <snapshots>
285                 <updatePolicy>daily</updatePolicy>
286             </snapshots>
287         </pluginRepository>
288     </pluginRepositories>
289
290     <repositories>
291         <repository>
292             <id>opendaylight-snapshot</id>
293             <url>http://nexus.opendaylight.org/content/repositories/opendaylight.snapshot</url>
294             <snapshots>
295                 <updatePolicy>daily</updatePolicy>
296             </snapshots>
297         </repository>
298     </repositories>
299 </project>