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