Merge "Bug 2526: Race condition may cause missing routes in RPC BucketStore"
[controller.git] / karaf / karaf-parent / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3 Copyright (c) 2014 Cisco Systems, Inc. and others.  All rights reserved.
4
5 This program and the accompanying materials are made available under the
6 terms of the Eclipse Public License v1.0 which accompanies this distribution,
7 and is available at http://www.eclipse.org/legal/epl-v10.html
8 -->
9 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
10   xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
11   <parent>
12     <groupId>org.opendaylight.odlparent</groupId>
13     <artifactId>odlparent</artifactId>
14     <version>1.5.0-SNAPSHOT</version>
15     <relativePath/>
16   </parent>
17   <modelVersion>4.0.0</modelVersion>
18   <groupId>org.opendaylight.controller</groupId>
19   <artifactId>karaf-parent</artifactId>
20   <name>${project.artifactId}</name>
21   <packaging>pom</packaging>
22   <prerequisites>
23     <maven>3.1.1</maven>
24   </prerequisites>
25   <properties>
26     <branding.version>1.1.0-SNAPSHOT</branding.version>
27     <karaf.resources.version>1.5.0-SNAPSHOT</karaf.resources.version>
28   </properties>
29   <dependencyManagement>
30     <dependencies>
31       <dependency>
32         <!-- scope is compile so all features (there is only one) are installed
33         into startup.properties and the feature repo itself is not installed -->
34         <groupId>org.apache.karaf.features</groupId>
35         <artifactId>framework</artifactId>
36         <version>${karaf.version}</version>
37         <type>kar</type>
38         <exclusions>
39           <exclusion>
40             <groupId>org.osgi</groupId>
41             <artifactId>org.osgi.core</artifactId>
42           </exclusion>
43           <exclusion>
44             <groupId>org.apache.sshd</groupId>
45             <artifactId>sshd-core</artifactId>
46           </exclusion>
47         </exclusions>
48       </dependency>
49     </dependencies>
50   </dependencyManagement>
51   <dependencies>
52     <!-- ODL Branding -->
53     <dependency>
54       <groupId>org.opendaylight.controller</groupId>
55       <artifactId>karaf.branding</artifactId>
56       <version>${branding.version}</version>
57       <scope>compile</scope>
58     </dependency>
59
60     <!-- Resources needed -->
61     <dependency>
62       <groupId>org.opendaylight.controller</groupId>
63       <artifactId>opendaylight-karaf-resources</artifactId>
64       <version>${karaf.resources.version}</version>
65     </dependency>
66   </dependencies>
67   <build>
68     <pluginManagement>
69       <plugins>
70         <plugin>
71           <groupId>org.eclipse.m2e</groupId>
72           <artifactId>lifecycle-mapping</artifactId>
73           <version>1.0.0</version>
74           <configuration>
75             <lifecycleMappingMetadata>
76               <pluginExecutions>
77                 <pluginExecution>
78                   <pluginExecutionFilter>
79                     <groupId>org.apache.felix</groupId>
80                     <artifactId>maven-bundle-plugin</artifactId>
81                     <versionRange>[0,)</versionRange>
82                     <goals>
83                       <goal>cleanVersions</goal>
84                     </goals>
85                   </pluginExecutionFilter>
86                   <action>
87                     <ignore></ignore>
88                   </action>
89                 </pluginExecution>
90                 <pluginExecution>
91                   <pluginExecutionFilter>
92                     <groupId>org.apache.maven.plugins</groupId>
93                     <artifactId>maven-dependency-plugin</artifactId>
94                     <versionRange>[0,)</versionRange>
95                     <goals>
96                       <goal>copy</goal>
97                       <goal>unpack</goal>
98                     </goals>
99                   </pluginExecutionFilter>
100                   <action>
101                     <ignore></ignore>
102                   </action>
103                 </pluginExecution>
104                 <pluginExecution>
105                   <pluginExecutionFilter>
106                     <groupId>org.apache.karaf.tooling</groupId>
107                     <artifactId>karaf-maven-plugin</artifactId>
108                     <versionRange>[0,)</versionRange>
109                     <goals>
110                       <goal>commands-generate-help</goal>
111                       <goal>features-add-to-repository</goal>
112                       <goal>install-kars</goal>
113                     </goals>
114                   </pluginExecutionFilter>
115                   <action>
116                     <ignore></ignore>
117                   </action>
118                 </pluginExecution>
119                 <pluginExecution>
120                   <pluginExecutionFilter>
121                     <groupId>org.fusesource.scalate</groupId>
122                     <artifactId>maven-scalate-plugin</artifactId>
123                     <versionRange>[0,)</versionRange>
124                     <goals>
125                       <goal>sitegen</goal>
126                     </goals>
127                   </pluginExecutionFilter>
128                   <action>
129                     <ignore></ignore>
130                   </action>
131                 </pluginExecution>
132                 <pluginExecution>
133                   <pluginExecutionFilter>
134                     <groupId>org.apache.servicemix.tooling</groupId>
135                     <artifactId>depends-maven-plugin</artifactId>
136                     <versionRange>[0,)</versionRange>
137                     <goals>
138                       <goal>generate-depends-file</goal>
139                     </goals>
140                   </pluginExecutionFilter>
141                   <action>
142                     <ignore></ignore>
143                   </action>
144                 </pluginExecution>
145               </pluginExecutions>
146             </lifecycleMappingMetadata>
147           </configuration>
148         </plugin>
149
150         <plugin>
151           <artifactId>maven-resources-plugin</artifactId>
152           <executions>
153             <execution>
154               <id>copy-resources</id>
155               <!-- here the phase you need -->
156               <phase>prepare-package</phase>
157               <goals>
158                 <goal>copy-resources</goal>
159               </goals>
160               <configuration>
161                 <outputDirectory>${basedir}/target/assembly</outputDirectory>
162                 <resources>
163                   <resource>
164                     <directory>src/main/assembly</directory>
165                   </resource>
166                 </resources>
167                 <overwrite>true</overwrite>
168               </configuration>
169             </execution>
170           </executions>
171         </plugin>
172         <plugin>
173           <groupId>org.apache.karaf.tooling</groupId>
174           <artifactId>karaf-maven-plugin</artifactId>
175           <version>${karaf.version}</version>
176           <extensions>true</extensions>
177           <configuration>
178             <!-- no startupFeatures -->
179             <bootFeatures>
180               <feature>standard</feature>
181               <feature>${karaf.localFeature}</feature>
182             </bootFeatures>
183             <!-- no installedFeatures -->
184           </configuration>
185           <executions>
186             <execution>
187               <id>populate-system</id>
188               <phase>generate-resources</phase>
189               <goals>
190                 <goal>features-add-to-repository</goal>
191               </goals>
192               <configuration>
193                 <descriptors>
194                   <descriptor>mvn:org.apache.karaf.features/standard/${karaf.version}/xml/features</descriptor>
195                 </descriptors>
196                 <features>
197                   <feature>standard</feature>
198                   <feature>config</feature>
199                   <feature>package</feature>
200                   <feature>kar</feature>
201                   <feature>ssh</feature>
202                   <feature>management</feature>
203                   <feature>war</feature>
204                 </features>
205                 <repository>target/assembly/system</repository>
206               </configuration>
207             </execution>
208             <execution>
209               <id>process-resources</id>
210               <goals>
211                 <goal>install-kars</goal>
212               </goals>
213               <phase>process-resources</phase>
214             </execution>
215             <execution>
216               <id>package</id>
217               <goals>
218                 <goal>instance-create-archive</goal>
219               </goals>
220             </execution>
221           </executions>
222         </plugin>
223         <plugin>
224           <groupId>org.apache.maven.plugins</groupId>
225           <artifactId>maven-checkstyle-plugin</artifactId>
226           <version>${checkstyle.version}</version>
227           <configuration>
228             <excludes>**\/target\/,**\/bin\/,**\/target-ide\/,**\/configuration\/initial\/</excludes>
229           </configuration>
230         </plugin>
231         <plugin>
232           <groupId>org.apache.maven.plugins</groupId>
233           <artifactId>maven-dependency-plugin</artifactId>
234           <executions>
235             <execution>
236               <id>copy</id>
237               <goals>
238                 <goal>copy</goal>
239               </goals>
240               <!-- here the phase you need -->
241               <phase>generate-resources</phase>
242               <configuration>
243                 <artifactItems>
244                   <artifactItem>
245                     <groupId>org.opendaylight.controller</groupId>
246                     <artifactId>karaf.branding</artifactId>
247                     <version>${karaf.branding.version}</version>
248                     <outputDirectory>target/assembly/lib</outputDirectory>
249                     <destFileName>karaf.branding-${branding.version}.jar</destFileName>
250                   </artifactItem>
251                 </artifactItems>
252               </configuration>
253             </execution>
254             <execution>
255               <id>unpack-karaf-resources</id>
256               <goals>
257                 <goal>unpack-dependencies</goal>
258               </goals>
259               <phase>prepare-package</phase>
260               <configuration>
261                 <outputDirectory>${project.build.directory}/assembly</outputDirectory>
262                 <groupId>org.opendaylight.controller</groupId>
263                 <includeArtifactIds>opendaylight-karaf-resources</includeArtifactIds>
264                 <excludes>META-INF\/**</excludes>
265                 <excludeTransitive>true</excludeTransitive>
266                 <ignorePermissions>false</ignorePermissions>
267               </configuration>
268             </execution>
269             <execution>
270               <id>org.ops4j.pax.url.mvn.cfg</id>
271               <goals>
272                 <goal>copy</goal>
273               </goals>
274               <phase>prepare-package</phase>
275               <configuration>
276                 <artifactItems>
277                   <artifactItem>
278                     <groupId>org.opendaylight.controller</groupId>
279                     <artifactId>opendaylight-karaf-resources</artifactId>
280                     <type>properties</type>
281                     <classifier>config</classifier>
282                     <overWrite>true</overWrite>
283                     <outputDirectory>${project.build.directory}/assembly/etc/</outputDirectory>
284                     <destFileName>org.ops4j.pax.url.mvn.cfg</destFileName>
285                   </artifactItem>
286                 </artifactItems>
287                 <overWriteReleases>true</overWriteReleases>
288                 <overWriteSnapshots>true</overWriteSnapshots>
289               </configuration>
290             </execution>
291           </executions>
292         </plugin>
293         <plugin>
294           <groupId>org.apache.maven.plugins</groupId>
295           <artifactId>maven-antrun-plugin</artifactId>
296           <executions>
297             <execution>
298               <phase>prepare-package</phase>
299               <goals>
300                 <goal>run</goal>
301               </goals>
302               <configuration>
303                 <tasks>
304                   <chmod perm="755">
305                     <fileset dir="${project.build.directory}/assembly/bin">
306                       <include name="karaf"/>
307                       <include name="instance"/>
308                       <include name="start"/>
309                       <include name="stop"/>
310                       <include name="status"/>
311                       <include name="client"/>
312                       <include name="shell"/>
313                     </fileset>
314                   </chmod>
315                 </tasks>
316               </configuration>
317             </execution>
318           </executions>
319         </plugin>
320       </plugins>
321     </pluginManagement>
322     <plugins>
323       <plugin>
324         <artifactId>maven-resources-plugin</artifactId>
325       </plugin>
326       <plugin>
327         <groupId>org.apache.karaf.tooling</groupId>
328         <artifactId>karaf-maven-plugin</artifactId>
329       </plugin>
330       <plugin>
331         <groupId>org.apache.maven.plugins</groupId>
332         <artifactId>maven-checkstyle-plugin</artifactId>
333       </plugin>
334       <plugin>
335         <groupId>org.apache.maven.plugins</groupId>
336         <artifactId>maven-dependency-plugin</artifactId>
337       </plugin>
338       <plugin>
339         <groupId>org.apache.maven.plugins</groupId>
340         <artifactId>maven-antrun-plugin</artifactId>
341       </plugin>
342     </plugins>
343   </build>
344
345 </project>