Merge "Moving common code out of remote rpc to clustering common bundle"
[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.4.2-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     <!-- MD-SAL Related Features -->
56     <dependency>
57       <groupId>org.opendaylight.controller</groupId>
58       <artifactId>features-mdsal</artifactId>
59       <classifier>features</classifier>
60       <type>xml</type>
61     </dependency>
62     <dependency>
63       <groupId>org.opendaylight.controller</groupId>
64       <artifactId>features-flow</artifactId>
65       <classifier>features</classifier>
66       <type>xml</type>
67     </dependency>
68   </dependencies>
69
70   <build>
71     <pluginManagement>
72       <plugins>
73         <plugin>
74           <groupId>org.eclipse.m2e</groupId>
75           <artifactId>lifecycle-mapping</artifactId>
76           <version>1.0.0</version>
77           <configuration>
78             <lifecycleMappingMetadata>
79               <pluginExecutions>
80                 <pluginExecution>
81                   <pluginExecutionFilter>
82                     <groupId>org.apache.felix</groupId>
83                     <artifactId>maven-bundle-plugin</artifactId>
84                     <versionRange>[0,)</versionRange>
85                     <goals>
86                       <goal>cleanVersions</goal>
87                     </goals>
88                   </pluginExecutionFilter>
89                   <action>
90                     <ignore></ignore>
91                   </action>
92                 </pluginExecution>
93                 <pluginExecution>
94                   <pluginExecutionFilter>
95                     <groupId>org.apache.maven.plugins</groupId>
96                     <artifactId>maven-dependency-plugin</artifactId>
97                     <versionRange>[0,)</versionRange>
98                     <goals>
99                       <goal>copy</goal>
100                       <goal>unpack</goal>
101                     </goals>
102                   </pluginExecutionFilter>
103                   <action>
104                     <ignore></ignore>
105                   </action>
106                 </pluginExecution>
107                 <pluginExecution>
108                   <pluginExecutionFilter>
109                     <groupId>org.apache.karaf.tooling</groupId>
110                     <artifactId>karaf-maven-plugin</artifactId>
111                     <versionRange>[0,)</versionRange>
112                     <goals>
113                       <goal>commands-generate-help</goal>
114                     </goals>
115                   </pluginExecutionFilter>
116                   <action>
117                     <ignore></ignore>
118                   </action>
119                 </pluginExecution>
120                 <pluginExecution>
121                   <pluginExecutionFilter>
122                     <groupId>org.fusesource.scalate</groupId>
123                     <artifactId>maven-scalate-plugin</artifactId>
124                     <versionRange>[0,)</versionRange>
125                     <goals>
126                       <goal>sitegen</goal>
127                     </goals>
128                   </pluginExecutionFilter>
129                   <action>
130                     <ignore></ignore>
131                   </action>
132                 </pluginExecution>
133                 <pluginExecution>
134                   <pluginExecutionFilter>
135                     <groupId>org.apache.servicemix.tooling</groupId>
136                     <artifactId>depends-maven-plugin</artifactId>
137                     <versionRange>[0,)</versionRange>
138                     <goals>
139                       <goal>generate-depends-file</goal>
140                     </goals>
141                   </pluginExecutionFilter>
142                   <action>
143                     <ignore></ignore>
144                   </action>
145                 </pluginExecution>
146               </pluginExecutions>
147             </lifecycleMappingMetadata>
148           </configuration>
149         </plugin>
150       </plugins>
151     </pluginManagement>
152     <plugins>
153       <plugin>
154         <groupId>org.apache.karaf.tooling</groupId>
155         <artifactId>karaf-maven-plugin</artifactId>
156         <version>${karaf.version}</version>
157         <extensions>true</extensions>
158         <configuration>
159           <!-- no startupFeatures -->
160           <bootFeatures>
161             <feature>standard</feature>
162           </bootFeatures>
163           <!-- no installedFeatures -->
164         </configuration>
165         <executions>
166           <execution>
167             <id>process-resources</id>
168             <goals>
169               <goal>install-kars</goal>
170             </goals>
171             <phase>process-resources</phase>
172           </execution>
173           <execution>
174             <id>package</id>
175             <goals>
176               <goal>instance-create-archive</goal>
177             </goals>
178           </execution>
179         </executions>
180       </plugin>
181       <plugin>
182         <groupId>org.apache.maven.plugins</groupId>
183         <artifactId>maven-checkstyle-plugin</artifactId>
184         <version>${checkstyle.version}</version>
185         <configuration>
186           <excludes>**\/target\/,**\/bin\/,**\/target-ide\/,**\/configuration\/initial\/</excludes>
187         </configuration>
188       </plugin>
189       <plugin>
190         <groupId>org.apache.maven.plugins</groupId>
191         <artifactId>maven-dependency-plugin</artifactId>
192         <version>2.6</version>
193         <executions>
194           <execution>
195             <id>copy</id>
196             <goals>
197               <goal>copy</goal>
198             </goals>
199             <!-- here the phase you need -->
200             <phase>generate-resources</phase>
201             <configuration>
202               <artifactItems>
203                 <artifactItem>
204                   <groupId>org.opendaylight.controller</groupId>
205                   <artifactId>karaf.branding</artifactId>
206                   <version>${karaf.branding.version}</version>
207                   <outputDirectory>target/assembly/lib</outputDirectory>
208                   <destFileName>karaf.branding-${branding.version}.jar</destFileName>
209                 </artifactItem>
210               </artifactItems>
211             </configuration>
212           </execution>
213           <execution>
214             <id>unpack-karaf-resources</id>
215             <goals>
216               <goal>unpack-dependencies</goal>
217             </goals>
218             <phase>prepare-package</phase>
219             <configuration>
220              <outputDirectory>${project.build.directory}/assembly</outputDirectory>
221              <groupId>org.opendaylight.controller</groupId>
222              <includeArtifactIds>opendaylight-karaf-resources</includeArtifactIds>
223              <excludes>META-INF\/**</excludes>
224              <excludeTransitive>true</excludeTransitive>
225              <ignorePermissions>false</ignorePermissions>
226             </configuration>
227           </execution>
228         </executions>
229       </plugin>
230       <plugin>
231         <groupId>org.apache.maven.plugins</groupId>
232         <artifactId>maven-antrun-plugin</artifactId>
233         <executions>
234             <execution>
235                 <phase>prepare-package</phase>
236                 <goals>
237                     <goal>run</goal>
238                 </goals>
239                 <configuration>
240                   <tasks>
241                     <chmod perm="755">
242                         <fileset dir="${project.build.directory}/assembly/bin">
243                           <include name="karaf"/>
244                           <include name="instance"/>
245                         </fileset>
246                     </chmod>
247                   </tasks>
248                 </configuration>
249             </execution>
250         </executions>
251       </plugin>
252     </plugins>
253   </build>
254   <scm>
255     <connection>scm:git:ssh://git.opendaylight.org:29418/controller.git</connection>
256     <developerConnection>scm:git:ssh://git.opendaylight.org:29418/controller.git</developerConnection>
257     <tag>HEAD</tag>
258     <url>https://wiki.opendaylight.org/view/OpenDaylight_Controller:Main</url>
259   </scm>
260 </project>