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