d32dbdf06d759ec1d3b609762ff953db73d31f0a
[mdsal.git] / common / 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"
11          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
12
13     <parent>
14         <groupId>org.opendaylight.odlparent</groupId>
15         <artifactId>odlparent</artifactId>
16         <version>1.7.0-SNAPSHOT</version>
17         <relativePath></relativePath>
18     </parent>
19
20     <modelVersion>4.0.0</modelVersion>
21     <artifactId>mdsal-parent</artifactId>
22     <groupId>org.opendaylight.mdsal</groupId>
23     <version>2.1.0-SNAPSHOT</version>
24     <packaging>pom</packaging>
25
26     <properties>
27         <yangtools.version>1.0.0-SNAPSHOT</yangtools.version>
28         <salGeneratorPath>target/generated-sources/sal</salGeneratorPath>
29
30         <!-- FIXME: these will be upstreamed -->
31         <maven.depends.version>1.2</maven.depends.version>
32     </properties>
33
34     <dependencyManagement>
35         <dependencies>
36             <dependency>
37                  <groupId>org.opendaylight.odlparent</groupId>
38                  <artifactId>odlparent-artifacts</artifactId>
39                  <version>1.7.0-SNAPSHOT</version>
40                  <type>pom</type>
41                  <scope>import</scope>
42             </dependency>
43             <dependency>
44                  <groupId>org.opendaylight.mdsal</groupId>
45                  <artifactId>mdsal-artifacts</artifactId>
46                  <version>2.1.0-SNAPSHOT</version>
47                  <type>pom</type>
48                  <scope>import</scope>
49             </dependency>
50             <dependency>
51                  <groupId>org.opendaylight.yangtools</groupId>
52                  <artifactId>yangtools-artifacts</artifactId>
53                  <version>1.0.0-SNAPSHOT</version>
54                  <type>pom</type>
55                  <scope>import</scope>
56             </dependency>
57             <!-- Testing Dependencies -->
58             <dependency>
59                 <groupId>org.apache.maven.shared</groupId>
60                 <artifactId>maven-verifier</artifactId>
61                 <version>1.6</version>
62                 <scope>test</scope>
63             </dependency>
64             <dependency>
65                 <groupId>org.codehaus.groovy</groupId>
66                 <artifactId>groovy</artifactId>
67                 <version>2.4.5</version>
68                 <scope>test</scope>
69             </dependency>
70             <dependency>
71                 <groupId>org.codehaus.groovy</groupId>
72                 <artifactId>groovy-xml</artifactId>
73                 <version>2.4.5</version>
74                 <scope>test</scope>
75             </dependency>
76             <dependency>
77                 <groupId>org.apache.maven</groupId>
78                 <artifactId>maven-core</artifactId>
79                 <version>3.3.3</version>
80             </dependency>
81             <dependency>
82                 <groupId>org.apache.maven</groupId>
83                 <artifactId>maven-plugin-api</artifactId>
84                 <version>3.3.3</version>
85             </dependency>
86             <dependency>
87                 <groupId>org.glassfish.jersey.ext</groupId>
88                 <artifactId>jersey-proxy-client</artifactId>
89                 <version>2.22</version>
90             </dependency>
91             <dependency>
92                 <groupId>org.glassfish.jersey.core</groupId>
93                 <artifactId>jersey-client</artifactId>
94                 <version>2.0</version>
95             </dependency>
96         </dependencies>
97     </dependencyManagement>
98
99     <dependencies>
100         <dependency>
101             <groupId>org.slf4j</groupId>
102             <artifactId>slf4j-simple</artifactId>
103             <scope>test</scope>
104         </dependency>
105     </dependencies>
106
107     <build>
108         <pluginManagement>
109             <plugins>
110                 <plugin>
111                     <groupId>org.apache.maven.plugins</groupId>
112                     <artifactId>maven-jar-plugin</artifactId>
113                     <version>${maven.jar.version}</version>
114                     <configuration>
115                         <archive>
116                             <!--
117                                  Bundle OSGi Manifest created by maven-bundle-plugin
118                                  into a jar file
119                                  -->
120                             <manifestFile>${project.build.outputDirectory}/META-INF/MANIFEST.MF</manifestFile>
121                         </archive>
122                     </configuration>
123                 </plugin>
124                 <plugin>
125                     <groupId>org.apache.felix</groupId>
126                     <artifactId>maven-bundle-plugin</artifactId>
127                     <extensions>true</extensions>
128                     <executions>
129                         <execution>
130                             <id>bundle-manifest</id>
131                             <phase>process-classes</phase>
132                             <goals>
133                                 <goal>manifest</goal>
134                             </goals>
135                         </execution>
136                     </executions>
137                 </plugin>
138
139                 <plugin>
140                     <groupId>org.eclipse.m2e</groupId>
141                     <artifactId>lifecycle-mapping</artifactId>
142                     <version>1.0.0</version>
143                     <configuration>
144                         <lifecycleMappingMetadata>
145                             <pluginExecutions>
146                                 <pluginExecution>
147                                     <pluginExecutionFilter>
148                                         <groupId>org.apache.felix</groupId>
149                                         <artifactId>maven-bundle-plugin</artifactId>
150                                         <versionRange>[1.0,)</versionRange>
151                                         <goals>
152                                             <goal>manifest</goal>
153                                         </goals>
154                                     </pluginExecutionFilter>
155                                     <action>
156                                         <execute />
157                                     </action>
158                                 </pluginExecution>
159                                 <pluginExecution>
160                                     <pluginExecutionFilter>
161                                         <groupId>org.apache.maven.plugins</groupId>
162                                         <artifactId>maven-antrun-plugin</artifactId>
163                                         <versionRange>[1.0,)</versionRange>
164                                         <goals>
165                                             <goal>run</goal>
166                                         </goals>
167                                     </pluginExecutionFilter>
168                                     <action>
169                                         <execute/>
170                                     </action>
171                                 </pluginExecution>
172                                 <pluginExecution>
173                                     <pluginExecutionFilter>
174                                         <groupId>org.opendaylight.yangtools</groupId>
175                                         <artifactId>yang-maven-plugin</artifactId>
176                                         <versionRange>[0.5,)</versionRange>
177                                         <goals>
178                                             <goal>generate-sources</goal>
179                                         </goals>
180                                      </pluginExecutionFilter>
181                                      <action>
182                                          <execute/>
183                                      </action>
184                                  </pluginExecution>
185                                  <pluginExecution>
186                                     <pluginExecutionFilter>
187                                         <groupId>org.codehaus.mojo</groupId>
188                                         <artifactId>properties-maven-plugin</artifactId>
189                                         <versionRange>1.0-alpha-2</versionRange>
190                                         <goals>
191                                             <goal>write-project-properties</goal>
192                                         </goals>
193                                      </pluginExecutionFilter>
194                                      <action>
195                                          <ignore />
196                                      </action>
197                                  </pluginExecution>
198                                  <pluginExecution>
199                                     <pluginExecutionFilter>
200                                         <groupId>org.ops4j.pax.exam</groupId>
201                                         <artifactId>maven-paxexam-plugin</artifactId>
202                                         <versionRange>1.2.4</versionRange>
203                                         <goals>
204                                             <goal>generate-depends-file</goal>
205                                         </goals>
206                                      </pluginExecutionFilter>
207                                      <action>
208                                          <ignore />
209                                      </action>
210                                  </pluginExecution>
211                                  <pluginExecution>
212                                     <pluginExecutionFilter>
213                                         <groupId>org.jacoco</groupId>
214                                         <artifactId>jacoco-maven-plugin</artifactId>
215                                         <versionRange>[0.6,)</versionRange>
216                                         <goals>
217                                             <goal>prepare-agent</goal>
218                                         </goals>
219                                      </pluginExecutionFilter>
220                                      <action>
221                                          <ignore/>
222                                      </action>
223                                  </pluginExecution>
224                                  <pluginExecution>
225                                     <pluginExecutionFilter>
226                                         <groupId>org.apache.maven.plugins</groupId>
227                                         <artifactId>maven-checkstyle-plugin</artifactId>
228                                         <versionRange>[2.12,)</versionRange>
229                                         <goals>
230                                             <goal>check</goal>
231                                         </goals>
232                                      </pluginExecutionFilter>
233                                      <action>
234                                          <execute/>
235                                      </action>
236                                  </pluginExecution>
237                             </pluginExecutions>
238                         </lifecycleMappingMetadata>
239                     </configuration>
240                 </plugin>
241                 <plugin>
242                     <groupId>org.opendaylight.yangtools</groupId>
243                     <artifactId>yang-maven-plugin</artifactId>
244                     <version>0.9.0-SNAPSHOT</version>
245                     <executions>
246                         <execution>
247                             <goals>
248                                 <goal>generate-sources</goal>
249                             </goals>
250                             <configuration>
251                                 <yangFilesRootDir>src/main/yang</yangFilesRootDir>
252                                 <codeGenerators>
253                                     <generator>
254                                         <codeGeneratorClass>
255                                             org.opendaylight.yangtools.maven.sal.api.gen.plugin.CodeGeneratorImpl
256                                         </codeGeneratorClass>
257                                         <outputBaseDir>
258                                             ${salGeneratorPath}
259                                         </outputBaseDir>
260                                     </generator>
261                                     <generator>
262                                         <codeGeneratorClass>org.opendaylight.yangtools.yang.unified.doc.generator.maven.DocumentationGeneratorImpl</codeGeneratorClass>
263                                         <outputBaseDir>target/site/models</outputBaseDir>
264                                     </generator>
265                                     <generator>
266                                         <codeGeneratorClass>org.opendaylight.yangtools.yang.wadl.generator.maven.WadlGenerator</codeGeneratorClass>
267                                         <outputBaseDir>target/site/models</outputBaseDir>
268                                     </generator>
269                                 </codeGenerators>
270                                 <inspectDependencies>true</inspectDependencies>
271                             </configuration>
272                         </execution>
273                     </executions>
274                     <dependencies>
275                         <dependency>
276                             <groupId>org.opendaylight.mdsal</groupId>
277                             <artifactId>maven-sal-api-gen-plugin</artifactId>
278                             <version>0.9.0-SNAPSHOT</version>
279                             <type>jar</type>
280                         </dependency>
281                     </dependencies>
282                 </plugin>
283                 <plugin>
284                     <groupId>org.ops4j.pax.exam</groupId>
285                     <artifactId>maven-paxexam-plugin</artifactId>
286                     <version>1.2.4</version>
287                     <executions>
288                         <execution>
289                             <id>generate-config</id>
290                             <goals>
291                                 <goal>generate-depends-file</goal>
292                             </goals>
293                         </execution>
294                     </executions>
295                 </plugin>
296                 <plugin>
297                     <groupId>org.apache.maven.plugins</groupId>
298                     <artifactId>maven-javadoc-plugin</artifactId>
299                     <version>${maven.javadoc.version}</version>
300                     <configuration>
301                         <stylesheetfile>stylesheet.css</stylesheetfile>
302                     </configuration>
303                     <executions>
304                         <execution>
305                             <id>attach-javadocs</id>
306                             <goals>
307                                 <goal>jar</goal>
308                             </goals>
309                         </execution>
310                         <execution>
311                             <goals>
312                                 <goal>aggregate</goal>
313                             </goals>
314                             <phase>site</phase>
315                         </execution>
316                     </executions>
317                 </plugin>
318                 <plugin>
319                     <groupId>org.codehaus.mojo</groupId>
320                     <artifactId>build-helper-maven-plugin</artifactId>
321                     <version>1.9.1</version>
322                     <executions>
323                         <execution>
324                             <phase>generate-sources</phase>
325                             <goals>
326                                 <goal>add-source</goal>
327                             </goals>
328                             <configuration>
329                                 <sources>
330                                     <source>target/generated-sources/parser</source>
331                                     <source>${salGeneratorPath}</source>
332                                 </sources>
333                             </configuration>
334                         </execution>
335                     </executions>
336                 </plugin>
337                 <plugin>
338                     <groupId>org.apache.servicemix.tooling</groupId>
339                     <artifactId>depends-maven-plugin</artifactId>
340                     <version>${maven.depends.version}</version>
341                     <executions>
342                         <execution>
343                             <id>generate-depends-file</id>
344                             <goals>
345                                 <goal>generate-depends-file</goal>
346                             </goals>
347                         </execution>
348                     </executions>
349                 </plugin>
350             </plugins>
351         </pluginManagement>
352
353         <plugins>
354             <plugin>
355                 <groupId>org.apache.maven.plugins</groupId>
356                 <artifactId>maven-enforcer-plugin</artifactId>
357                 <!--
358                 <executions>
359                     <execution>
360                         <id>enforce-dependencies</id>
361                         <configuration>
362                             <rules>
363                                 <DependencyConvergence />
364                             </rules>
365                         </configuration>
366                         <goals>
367                             <goal>enforce</goal>
368                         </goals>
369                     </execution>
370                 </executions>
371                 -->
372             </plugin>
373             <plugin>
374                 <groupId>org.apache.maven.plugins</groupId>
375                 <artifactId>maven-jar-plugin</artifactId>
376             </plugin>
377             <plugin>
378                 <groupId>org.apache.felix</groupId>
379                 <artifactId>maven-bundle-plugin</artifactId>
380             </plugin>
381             <plugin>
382                 <groupId>org.apache.maven.plugins</groupId>
383                 <artifactId>maven-javadoc-plugin</artifactId>
384             </plugin>
385             <plugin>
386               <groupId>org.codehaus.mojo</groupId>
387               <artifactId>build-helper-maven-plugin</artifactId>
388             </plugin>
389         </plugins>
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
408 </project>