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