e44b569759d3b611d35fa730778ca7a16d565a00
[controller.git] / opendaylight / distribution / opendaylight-karaf / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <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">
3   <modelVersion>4.0.0</modelVersion>
4   <parent>
5     <groupId>org.opendaylight.controller</groupId>
6     <artifactId>commons.opendaylight</artifactId>
7     <version>1.5.0-SNAPSHOT</version>
8     <relativePath>../../commons/opendaylight</relativePath>
9   </parent>
10   <artifactId>distribution.opendaylight-karaf</artifactId>
11   <packaging>pom</packaging>
12   <prerequisites>
13     <maven>3.0</maven>
14   </prerequisites>
15
16   <dependencies>
17     <dependency>
18       <!-- scope is compile so all features (there is only one) are installed
19             into startup.properties and the feature repo itself is not installed -->
20       <groupId>org.apache.karaf.features</groupId>
21       <artifactId>framework</artifactId>
22       <version>${karaf.version}</version>
23       <type>kar</type>
24     </dependency>
25     <dependency>
26       <groupId>org.opendaylight.controller</groupId>
27       <artifactId>karaf.branding</artifactId>
28       <scope>compile</scope>
29     </dependency>
30
31     <!-- Resources needed -->
32     <dependency>
33       <groupId>org.opendaylight.controller</groupId>
34       <artifactId>opendaylight-karaf-resources</artifactId>
35       <version>${project.version}</version>
36     </dependency>
37
38     <!-- scope is not runtime so the feature repo is pulled into the local
39     repo on build and thus you actually run.  Failure to do so can lead
40     to very confusing errors for devs -->
41     <dependency>
42       <groupId>org.apache.karaf.features</groupId>
43       <artifactId>standard</artifactId>
44       <version>${karaf.version}</version>
45       <classifier>features</classifier>
46       <type>xml</type>
47     </dependency>
48
49     <!--
50           controller provided features:
51           Note: Nothing should go here that is not locked
52           down with testing... ie, no broken feature repos
53     -->
54
55     <!-- AD-SAL Related Features -->
56     <dependency>
57       <groupId>org.opendaylight.controller</groupId>
58       <artifactId>features-base</artifactId>
59       <classifier>features</classifier>
60       <type>xml</type>
61       <scope>runtime</scope>
62     </dependency>
63     <dependency>
64       <groupId>org.opendaylight.controller</groupId>
65       <artifactId>features-adsal</artifactId>
66       <classifier>features</classifier>
67       <type>xml</type>
68       <scope>runtime</scope>
69     </dependency>
70     <dependency>
71       <groupId>org.opendaylight.controller</groupId>
72       <artifactId>features-nsf</artifactId>
73       <classifier>features</classifier>
74       <type>xml</type>
75       <scope>runtime</scope>
76     </dependency>
77     <!-- MD-SAL Related Features -->
78     <dependency>
79       <groupId>org.opendaylight.controller</groupId>
80       <artifactId>features-mdsal</artifactId>
81       <classifier>features</classifier>
82       <type>xml</type>
83       <scope>runtime</scope>
84     </dependency>
85     <dependency>
86       <groupId>org.opendaylight.controller</groupId>
87       <artifactId>features-flow</artifactId>
88       <classifier>features</classifier>
89       <type>xml</type>
90       <scope>runtime</scope>
91     </dependency>
92     <dependency>
93       <groupId>org.opendaylight.controller</groupId>
94       <artifactId>features-restconf</artifactId>
95       <version>1.2.0-SNAPSHOT</version>
96       <classifier>features</classifier>
97       <type>xml</type>
98       <scope>runtime</scope>
99     </dependency>
100     <!-- Netconf connector features. When this is included, users can test the netconf connector using netconf-testtool -->
101     <dependency>
102       <groupId>org.opendaylight.controller</groupId>
103       <artifactId>features-netconf-connector</artifactId>
104       <classifier>features</classifier>
105       <type>xml</type>
106     </dependency>
107
108   </dependencies>
109
110   <build>
111     <pluginManagement>
112       <plugins>
113         <plugin>
114           <groupId>org.eclipse.m2e</groupId>
115           <artifactId>lifecycle-mapping</artifactId>
116           <version>1.0.0</version>
117           <configuration>
118             <lifecycleMappingMetadata>
119               <pluginExecutions>
120                 <pluginExecution>
121                   <pluginExecutionFilter>
122                     <groupId>org.apache.felix</groupId>
123                     <artifactId>maven-bundle-plugin</artifactId>
124                     <versionRange>[0,)</versionRange>
125                     <goals>
126                       <goal>cleanVersions</goal>
127                     </goals>
128                   </pluginExecutionFilter>
129                   <action>
130                     <ignore></ignore>
131                   </action>
132                 </pluginExecution>
133                 <pluginExecution>
134                   <pluginExecutionFilter>
135                     <groupId>org.apache.maven.plugins</groupId>
136                     <artifactId>maven-dependency-plugin</artifactId>
137                     <versionRange>[0,)</versionRange>
138                     <goals>
139                       <goal>copy</goal>
140                       <goal>unpack</goal>
141                     </goals>
142                   </pluginExecutionFilter>
143                   <action>
144                     <ignore></ignore>
145                   </action>
146                 </pluginExecution>
147                 <pluginExecution>
148                   <pluginExecutionFilter>
149                     <groupId>org.apache.karaf.tooling</groupId>
150                     <artifactId>karaf-maven-plugin</artifactId>
151                     <versionRange>[0,)</versionRange>
152                     <goals>
153                       <goal>commands-generate-help</goal>
154                     </goals>
155                   </pluginExecutionFilter>
156                   <action>
157                     <ignore></ignore>
158                   </action>
159                 </pluginExecution>
160                 <pluginExecution>
161                   <pluginExecutionFilter>
162                     <groupId>org.fusesource.scalate</groupId>
163                     <artifactId>maven-scalate-plugin</artifactId>
164                     <versionRange>[0,)</versionRange>
165                     <goals>
166                       <goal>sitegen</goal>
167                     </goals>
168                   </pluginExecutionFilter>
169                   <action>
170                     <ignore></ignore>
171                   </action>
172                 </pluginExecution>
173                 <pluginExecution>
174                   <pluginExecutionFilter>
175                     <groupId>org.apache.servicemix.tooling</groupId>
176                     <artifactId>depends-maven-plugin</artifactId>
177                     <versionRange>[0,)</versionRange>
178                     <goals>
179                       <goal>generate-depends-file</goal>
180                     </goals>
181                   </pluginExecutionFilter>
182                   <action>
183                     <ignore></ignore>
184                   </action>
185                 </pluginExecution>
186               </pluginExecutions>
187             </lifecycleMappingMetadata>
188           </configuration>
189         </plugin>
190       </plugins>
191     </pluginManagement>
192     <plugins>
193       <plugin>
194         <groupId>org.apache.karaf.tooling</groupId>
195         <artifactId>karaf-maven-plugin</artifactId>
196         <version>${karaf.version}</version>
197         <extensions>true</extensions>
198         <configuration>
199           <!-- no startupFeatures -->
200           <bootFeatures>
201             <feature>standard</feature>
202           </bootFeatures>
203           <!-- no installedFeatures -->
204         </configuration>
205         <executions>
206           <execution>
207             <id>process-resources</id>
208             <goals>
209               <goal>install-kars</goal>
210             </goals>
211             <phase>process-resources</phase>
212           </execution>
213           <execution>
214             <id>package</id>
215             <goals>
216               <goal>instance-create-archive</goal>
217             </goals>
218           </execution>
219         </executions>
220       </plugin>
221       <plugin>
222         <groupId>org.apache.maven.plugins</groupId>
223         <artifactId>maven-checkstyle-plugin</artifactId>
224         <configuration>
225           <excludes>**\/target\/,**\/bin\/,**\/target-ide\/,**\/configuration\/initial\/</excludes>
226         </configuration>
227       </plugin>
228       <plugin>
229         <groupId>org.apache.maven.plugins</groupId>
230         <artifactId>maven-dependency-plugin</artifactId>
231         <version>2.6</version>
232         <executions>
233           <execution>
234             <id>copy</id>
235             <goals>
236               <goal>copy</goal>
237             </goals>
238             <!-- here the phase you need -->
239             <phase>generate-resources</phase>
240             <configuration>
241               <artifactItems>
242                 <artifactItem>
243                   <groupId>org.opendaylight.controller</groupId>
244                   <artifactId>karaf.branding</artifactId>
245                   <version>${karaf.branding.version}</version>
246                   <outputDirectory>target/assembly/lib</outputDirectory>
247                   <destFileName>karaf.branding-${branding.version}.jar</destFileName>
248                 </artifactItem>
249                   <!-- Needs to be copied to lib/ext in order to start bouncy provider for mina sshd -->
250               <artifactItem>
251                   <groupId>org.bouncycastle</groupId>
252                   <artifactId>bcprov-jdk15on</artifactId>
253                   <version>${bouncycastle.version}</version>
254                   <outputDirectory>target/assembly/lib/ext</outputDirectory>
255                   <destFileName>bcprov-jdk15on-${bouncycastle.version}.jar</destFileName>
256               </artifactItem>
257               </artifactItems>
258             </configuration>
259           </execution>
260           <execution>
261             <id>unpack-karaf-resources</id>
262             <goals>
263               <goal>unpack-dependencies</goal>
264             </goals>
265             <phase>prepare-package</phase>
266             <configuration>
267              <outputDirectory>${project.build.directory}/assembly</outputDirectory>
268              <groupId>org.opendaylight.controller</groupId>
269              <includeArtifactIds>opendaylight-karaf-resources</includeArtifactIds>
270              <excludes>META-INF\/**</excludes>
271              <excludeTransitive>true</excludeTransitive>
272              <ignorePermissions>false</ignorePermissions>
273             </configuration>
274           </execution>
275         </executions>
276       </plugin>
277       <plugin>
278         <groupId>org.apache.maven.plugins</groupId>
279         <artifactId>maven-antrun-plugin</artifactId>
280         <executions>
281             <execution>
282                 <phase>prepare-package</phase>
283                 <goals>
284                     <goal>run</goal>
285                 </goals>
286                 <configuration>
287                   <tasks>
288                     <chmod perm="755">
289                         <fileset dir="${project.build.directory}/assembly/bin">
290                           <include name="karaf"/>
291                           <include name="instance"/>
292                           <include name="start"/>
293                           <include name="stop"/>
294                           <include name="status"/>
295                           <include name="client"/>
296                           <include name="shell"/>
297                         </fileset>
298                     </chmod>
299                   </tasks>
300                 </configuration>
301             </execution>
302         </executions>
303       </plugin>
304     </plugins>
305   </build>
306   <scm>
307     <connection>scm:git:ssh://git.opendaylight.org:29418/controller.git</connection>
308     <developerConnection>scm:git:ssh://git.opendaylight.org:29418/controller.git</developerConnection>
309     <tag>HEAD</tag>
310     <url>https://wiki.opendaylight.org/view/OpenDaylight_Controller:Main</url>
311   </scm>
312 </project>

©2013 OpenDaylight, A Linux Foundation Collaborative Project. All Rights Reserved.
OpenDaylight is a registered trademark of The OpenDaylight Project, Inc.
Linux Foundation and OpenDaylight are registered trademarks of the Linux Foundation.
Linux is a registered trademark of Linus Torvalds.