Bump to odlparent-3.0.0 and yangtools-2.0.0
[bgpcep.git] / parent / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- vi: set et smarttab sw=4 tabstop=4: -->
3 <!--
4  Copyright (c) 2013 Cisco Systems, Inc. and others.  All rights reserved.
5
6  This program and the accompanying materials are made available under the
7  terms of the Eclipse Public License v1.0 which accompanies this distribution,
8  and is available at http://www.eclipse.org/legal/epl-v10.html
9 -->
10
11 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
12          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
13     <modelVersion>4.0.0</modelVersion>
14     <scm>
15         <connection>scm:git:ssh://git.opendaylight.org:29418/bgpcep.git</connection>
16         <developerConnection>scm:git:ssh://git.opendaylight.org:29418/bgpcep.git</developerConnection>
17         <url>https://wiki.opendaylight.org/view/BGP_LS_PCEP:Main</url>
18         <tag>HEAD</tag>
19     </scm>
20     <parent>
21         <groupId>org.opendaylight.odlparent</groupId>
22         <artifactId>odlparent</artifactId>
23         <version>3.0.2</version>
24         <relativePath></relativePath>
25     </parent>
26
27     <groupId>org.opendaylight.bgpcep</groupId>
28     <artifactId>bgpcep-parent</artifactId>
29     <name>BGPCEP common parent</name>
30     <version>0.9.0-SNAPSHOT</version>
31     <packaging>pom</packaging>
32
33     <licenses>
34         <license>
35             <name>The Eclipse Public License v1.0</name>
36             <url>http://www.eclipse.org/legal/epl-v10.html</url>
37             <distribution>repo</distribution>
38         </license>
39     </licenses>
40
41     <properties>
42         <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
43
44         <maven.info.reports.version>2.7</maven.info.reports.version>
45
46         <!-- YANG tools artifacts -->
47         <yangtools.version>2.0.0</yangtools.version>
48
49         <!-- MD-SAL artifacts -->
50         <mdsal.version>2.4.0-SNAPSHOT</mdsal.version>
51         <mdsal.model.version>0.12.0-SNAPSHOT</mdsal.model.version>
52
53         <!-- Controller artifacts -->
54         <controller.config.version>0.8.0-SNAPSHOT</controller.config.version>
55         <controller.framework.version>0.11.0-SNAPSHOT</controller.framework.version>
56         <controller.mdsal.version>1.7.0-SNAPSHOT</controller.mdsal.version>
57
58         <bgpcep.version>0.9.0-SNAPSHOT</bgpcep.version>
59     </properties>
60
61     <dependencyManagement>
62         <dependencies>
63             <dependency>
64                 <groupId>org.opendaylight.bgpcep</groupId>
65                 <artifactId>bgpcep-artifacts</artifactId>
66                 <version>${bgpcep.version}</version>
67                 <type>pom</type>
68                 <scope>import</scope>
69             </dependency>
70
71             <!-- YANG tools -->
72             <dependency>
73                 <groupId>org.opendaylight.yangtools</groupId>
74                 <artifactId>yangtools-artifacts</artifactId>
75                 <version>${yangtools.version}</version>
76                 <scope>import</scope>
77                 <type>pom</type>
78             </dependency>
79
80             <!-- MD-SAL -->
81             <dependency>
82                 <groupId>org.opendaylight.mdsal</groupId>
83                 <artifactId>mdsal-artifacts</artifactId>
84                 <version>${mdsal.version}</version>
85                 <scope>import</scope>
86                 <type>pom</type>
87             </dependency>
88             <dependency>
89                 <groupId>org.opendaylight.mdsal.model</groupId>
90                 <artifactId>mdsal-model-artifacts</artifactId>
91                 <version>${mdsal.model.version}</version>
92                 <scope>import</scope>
93                 <type>pom</type>
94             </dependency>
95
96             <!-- Controller infrastructure -->
97             <dependency>
98                 <groupId>org.opendaylight.controller</groupId>
99                 <artifactId>mdsal-artifacts</artifactId>
100                 <version>${controller.mdsal.version}</version>
101                 <scope>import</scope>
102                 <type>pom</type>
103             </dependency>
104             <dependency>
105                 <groupId>org.opendaylight.controller</groupId>
106                 <artifactId>config-artifacts</artifactId>
107                 <version>${controller.config.version}</version>
108                 <scope>import</scope>
109                 <type>pom</type>
110             </dependency>
111         </dependencies>
112     </dependencyManagement>
113
114     <reporting>
115         <plugins>
116             <plugin>
117                 <groupId>org.apache.maven.plugins</groupId>
118                 <artifactId>maven-project-info-reports-plugin</artifactId>
119                 <version>${maven.info.reports.version}</version>
120                 <reportSets>
121                     <reportSet>
122                         <reports>
123                             <report>dependency-info</report>
124                             <report>license</report>
125                         </reports>
126                     </reportSet>
127                 </reportSets>
128             </plugin>
129             <!--plugin>
130                 <groupId>org.codehaus.mojo</groupId>
131                 <artifactId>findbugs-maven-plugin</artifactId>
132                 <version>2.4.0</version>
133                 <configuration>
134                     <effort>Max</effort>
135                     <threshold>Low</threshold>
136                     <goal>site</goal>
137                 </configuration>
138             </plugin-->
139         </plugins>
140     </reporting>
141
142     <build>
143         <plugins>
144             <plugin>
145                 <groupId>org.apache.maven.plugins</groupId>
146                 <artifactId>maven-compiler-plugin</artifactId>
147                 <configuration>
148                     <source>${java.version.source}</source>
149                     <target>${java.version.target}</target>
150                     <testSource>${java.version.source}</testSource>
151                     <testTarget>${java.version.target}</testTarget>
152                     <showDeprecation>true</showDeprecation>
153                     <showWarnings>true</showWarnings>
154                     <optimize>true</optimize>
155                 </configuration>
156             </plugin>
157             <plugin>
158                 <groupId>org.apache.maven.plugins</groupId>
159                 <artifactId>maven-surefire-plugin</artifactId>
160                 <configuration>
161                     <redirectTestOutputToFile>true</redirectTestOutputToFile>
162                     <!--parallel>classes</parallel>
163                     <forkCount>1C</forkCount>
164                     <perCoreThreadCount>true</perCoreThreadCount-->
165                     <runOrder>alphabetical</runOrder>
166                     <threadCount>1</threadCount>
167                     <reuseForks>false</reuseForks>
168                     <!-- Specific to generate mapping between tests and covered code -->
169                     <!--properties>
170                         <property>
171                             <name>listener</name>
172                             <value>org.sonar.java.jacoco.JUnitListener</value>
173                         </property>
174                     </properties-->
175                 </configuration>
176             </plugin>
177
178             <plugin>
179                 <groupId>org.apache.maven.plugins</groupId>
180                 <artifactId>maven-dependency-plugin</artifactId>
181                 <configuration>
182                     <failOnWarning>true</failOnWarning>
183                     <ignoreNonCompile>true</ignoreNonCompile>
184                 </configuration>
185             </plugin>
186             <plugin>
187                 <!-- Let eclipse know about the generated sources -->
188                 <groupId>org.codehaus.mojo</groupId>
189                 <artifactId>build-helper-maven-plugin</artifactId>
190                 <executions>
191                     <execution>
192                         <phase>generate-sources</phase>
193                         <goals>
194                             <goal>add-source</goal>
195                         </goals>
196                         <configuration>
197                             <sources>
198                                 <source>target/generated-sources/sal</source>
199                                 <source>target/generated-sources/config</source>
200                             </sources>
201                         </configuration>
202                     </execution>
203                 </executions>
204             </plugin>
205             <plugin>
206                 <groupId>org.apache.maven.plugins</groupId>
207                 <artifactId>maven-checkstyle-plugin</artifactId>
208                 <configuration>
209                     <failOnViolation>true</failOnViolation>
210                     <configLocation>checkstyle-logging.xml</configLocation>
211                     <consoleOutput>true</consoleOutput>
212                     <includeTestSourceDirectory>true</includeTestSourceDirectory>
213                     <sourceDirectory>${project.basedir}</sourceDirectory>
214                     <includes>**\/*.java,**\/*.xml,**\/*.ini,**\/*.sh,**\/*.bat,**\/*.yang</includes>
215                     <excludes>
216                         **\/target\/,**\/bin\/,**\/target-ide\/,**\/src/main/yang-gen-config\/,**\/src/main/yang-gen-sal\/,**\/
217                         .m2repo\/,**\/org/opendaylight/protocol/util/LoggerUtil.java,**\/org/opendaylight/protocol/util/LoggerUtilTest.java
218                     </excludes>
219                 </configuration>
220                 <dependencies>
221                     <dependency>
222                         <groupId>org.opendaylight.yangtools</groupId>
223                         <artifactId>checkstyle-logging</artifactId>
224                         <version>${yangtools.version}</version>
225                     </dependency>
226                 </dependencies>
227                 <executions>
228                     <execution>
229                         <goals>
230                             <goal>check</goal>
231                         </goals>
232                     </execution>
233                 </executions>
234             </plugin>
235         </plugins>
236
237         <pluginManagement>
238             <plugins>
239                 <!--This plugin's configuration is used to store Eclipse m2e settings
240                     only. It has no influence on the Maven build itself. -->
241                 <plugin>
242                     <groupId>org.eclipse.m2e</groupId>
243                     <artifactId>lifecycle-mapping</artifactId>
244                     <version>1.0.0</version>
245                     <configuration>
246                         <lifecycleMappingMetadata>
247                             <pluginExecutions>
248                                 <pluginExecution>
249                                     <pluginExecutionFilter>
250                                         <groupId>pl.project13.maven</groupId>
251                                         <artifactId>git-commit-id-plugin</artifactId>
252                                         <versionRange>[2.1.4,)</versionRange>
253                                         <goals>
254                                             <goal>revision</goal>
255                                         </goals>
256                                     </pluginExecutionFilter>
257                                     <action>
258                                         <ignore/>
259                                     </action>
260                                 </pluginExecution>
261                                 <pluginExecution>
262                                     <pluginExecutionFilter>
263                                         <groupId>org.opendaylight.yangtools</groupId>
264                                         <artifactId>yang-maven-plugin</artifactId>
265                                         <versionRange>[0.5,)</versionRange>
266                                         <goals>
267                                             <goal>generate-sources</goal>
268                                         </goals>
269                                     </pluginExecutionFilter>
270                                     <action>
271                                         <execute/>
272                                     </action>
273                                 </pluginExecution>
274                                 <pluginExecution>
275                                     <pluginExecutionFilter>
276                                         <groupId>org.jacoco</groupId>
277                                         <artifactId>jacoco-maven-plugin</artifactId>
278                                         <versionRange>[0.6,)</versionRange>
279                                         <goals>
280                                             <goal>prepare-agent</goal>
281                                         </goals>
282                                     </pluginExecutionFilter>
283                                     <action>
284                                         <ignore/>
285                                     </action>
286                                 </pluginExecution>
287                                 <pluginExecution>
288                                     <pluginExecutionFilter>
289                                         <groupId>org.apache.maven.plugins</groupId>
290                                         <artifactId>maven-checkstyle-plugin</artifactId>
291                                         <versionRange>[2.13,)</versionRange>
292                                         <goals>
293                                             <goal>check</goal>
294                                         </goals>
295                                     </pluginExecutionFilter>
296                                     <action>
297                                         <execute/>
298                                     </action>
299                                 </pluginExecution>
300                             </pluginExecutions>
301                         </lifecycleMappingMetadata>
302                     </configuration>
303                 </plugin>
304
305                 <!-- Our YANG->DTO generation plugin -->
306                 <plugin>
307                     <groupId>org.opendaylight.yangtools</groupId>
308                     <artifactId>yang-maven-plugin</artifactId>
309                     <version>${yangtools.version}</version>
310                     <executions>
311                         <execution>
312                             <goals>
313                                 <goal>generate-sources</goal>
314                             </goals>
315                             <configuration>
316                                 <yangFilesRootDir>src/main/yang</yangFilesRootDir>
317                                 <codeGenerators>
318                                     <generator>
319                                         <codeGeneratorClass>
320                                             org.opendaylight.mdsal.binding.maven.api.gen.plugin.CodeGeneratorImpl
321                                         </codeGeneratorClass>
322                                         <outputBaseDir>
323                                             target/generated-sources/sal
324                                         </outputBaseDir>
325                                     </generator>
326                                     <generator>
327                                         <codeGeneratorClass>
328                                             org.opendaylight.mdsal.binding.yang.unified.doc.generator.maven.DocumentationGeneratorImpl
329                                         </codeGeneratorClass>
330                                         <outputBaseDir>target/site</outputBaseDir>
331                                     </generator>
332                                     <generator>
333                                         <codeGeneratorClass>
334                                             org.opendaylight.mdsal.binding.yang.wadl.generator.maven.WadlGenerator
335                                         </codeGeneratorClass>
336                                         <outputBaseDir>target/site</outputBaseDir>
337                                     </generator>
338                                     <generator>
339                                         <codeGeneratorClass>
340                                             org.opendaylight.controller.config.yangjmxgenerator.plugin.JMXGenerator
341                                         </codeGeneratorClass>
342                                         <outputBaseDir>${project.build.directory}/generated-sources/config
343                                         </outputBaseDir>
344                                         <additionalConfiguration>
345                                             <namespaceToPackage1>
346                                                 urn:opendaylight:params:xml:ns:yang:controller==org.opendaylight.controller.config.yang
347                                             </namespaceToPackage1>
348                                         </additionalConfiguration>
349                                     </generator>
350                                 </codeGenerators>
351                                 <inspectDependencies>true</inspectDependencies>
352                             </configuration>
353                         </execution>
354                     </executions>
355                     <dependencies>
356                         <dependency>
357                             <groupId>org.opendaylight.mdsal</groupId>
358                             <artifactId>maven-sal-api-gen-plugin</artifactId>
359                             <version>${mdsal.model.version}</version>
360                             <type>jar</type>
361                         </dependency>
362                         <dependency>
363                             <groupId>org.opendaylight.controller</groupId>
364                             <artifactId>yang-jmx-generator-plugin</artifactId>
365                             <version>${controller.config.version}</version>
366                         </dependency>
367                     </dependencies>
368                 </plugin>
369             </plugins>
370         </pluginManagement>
371     </build>
372 </project>