Merge "Refactor LeaderElectionScenarioTests"
[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.5.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     <dependency>
61       <groupId>org.opendaylight.controller</groupId>
62       <artifactId>features-adsal</artifactId>
63       <classifier>features</classifier>
64       <type>xml</type>
65       <scope>runtime</scope>
66     </dependency>
67     <dependency>
68       <groupId>org.opendaylight.controller</groupId>
69       <artifactId>features-nsf</artifactId>
70       <classifier>features</classifier>
71       <type>xml</type>
72       <scope>runtime</scope>
73     </dependency>
74     <!-- MD-SAL Related Features -->
75     <dependency>
76       <groupId>org.opendaylight.controller</groupId>
77       <artifactId>features-mdsal</artifactId>
78       <classifier>features</classifier>
79       <type>xml</type>
80       <scope>runtime</scope>
81     </dependency>
82       <dependency>
83           <groupId>org.opendaylight.controller</groupId>
84           <artifactId>features-extras</artifactId>
85           <version>${project.version}</version>
86           <classifier>features</classifier>
87           <type>xml</type>
88           <scope>runtime</scope>
89       </dependency>
90     <dependency>
91       <groupId>org.opendaylight.controller</groupId>
92       <artifactId>features-flow</artifactId>
93       <classifier>features</classifier>
94       <type>xml</type>
95       <scope>runtime</scope>
96     </dependency>
97     <dependency>
98       <groupId>org.opendaylight.controller</groupId>
99       <artifactId>features-restconf</artifactId>
100       <version>1.2.0-SNAPSHOT</version>
101       <classifier>features</classifier>
102       <type>xml</type>
103       <scope>runtime</scope>
104     </dependency>
105     <!-- Netconf connector features. When this is included, users can test the netconf connector using netconf-testtool -->
106     <dependency>
107       <groupId>org.opendaylight.controller</groupId>
108       <artifactId>features-netconf-connector</artifactId>
109       <classifier>features</classifier>
110       <type>xml</type>
111     </dependency>
112   </dependencies>
113
114   <build>
115     <pluginManagement>
116       <plugins>
117         <plugin>
118           <groupId>org.eclipse.m2e</groupId>
119           <artifactId>lifecycle-mapping</artifactId>
120           <version>1.0.0</version>
121           <configuration>
122             <lifecycleMappingMetadata>
123               <pluginExecutions>
124                 <pluginExecution>
125                   <pluginExecutionFilter>
126                     <groupId>org.apache.felix</groupId>
127                     <artifactId>maven-bundle-plugin</artifactId>
128                     <versionRange>[0,)</versionRange>
129                     <goals>
130                       <goal>cleanVersions</goal>
131                     </goals>
132                   </pluginExecutionFilter>
133                   <action>
134                     <ignore></ignore>
135                   </action>
136                 </pluginExecution>
137                 <pluginExecution>
138                   <pluginExecutionFilter>
139                     <groupId>org.apache.maven.plugins</groupId>
140                     <artifactId>maven-dependency-plugin</artifactId>
141                     <versionRange>[0,)</versionRange>
142                     <goals>
143                       <goal>copy</goal>
144                       <goal>unpack</goal>
145                     </goals>
146                   </pluginExecutionFilter>
147                   <action>
148                     <ignore></ignore>
149                   </action>
150                 </pluginExecution>
151                 <pluginExecution>
152                   <pluginExecutionFilter>
153                     <groupId>org.apache.karaf.tooling</groupId>
154                     <artifactId>karaf-maven-plugin</artifactId>
155                     <versionRange>[0,)</versionRange>
156                     <goals>
157                       <goal>commands-generate-help</goal>
158                     </goals>
159                   </pluginExecutionFilter>
160                   <action>
161                     <ignore></ignore>
162                   </action>
163                 </pluginExecution>
164                 <pluginExecution>
165                   <pluginExecutionFilter>
166                     <groupId>org.fusesource.scalate</groupId>
167                     <artifactId>maven-scalate-plugin</artifactId>
168                     <versionRange>[0,)</versionRange>
169                     <goals>
170                       <goal>sitegen</goal>
171                     </goals>
172                   </pluginExecutionFilter>
173                   <action>
174                     <ignore></ignore>
175                   </action>
176                 </pluginExecution>
177                 <pluginExecution>
178                   <pluginExecutionFilter>
179                     <groupId>org.apache.servicemix.tooling</groupId>
180                     <artifactId>depends-maven-plugin</artifactId>
181                     <versionRange>[0,)</versionRange>
182                     <goals>
183                       <goal>generate-depends-file</goal>
184                     </goals>
185                   </pluginExecutionFilter>
186                   <action>
187                     <ignore></ignore>
188                   </action>
189                 </pluginExecution>
190               </pluginExecutions>
191             </lifecycleMappingMetadata>
192           </configuration>
193         </plugin>
194       </plugins>
195     </pluginManagement>
196     <plugins>
197       <plugin>
198         <groupId>org.apache.karaf.tooling</groupId>
199         <artifactId>karaf-maven-plugin</artifactId>
200         <version>${karaf.version}</version>
201         <extensions>true</extensions>
202         <configuration>
203           <!-- no startupFeatures -->
204           <bootFeatures>
205             <feature>standard</feature>
206           </bootFeatures>
207           <!-- no installedFeatures -->
208         </configuration>
209         <executions>
210           <execution>
211             <id>process-resources</id>
212             <goals>
213               <goal>install-kars</goal>
214             </goals>
215             <phase>process-resources</phase>
216           </execution>
217           <execution>
218             <id>package</id>
219             <goals>
220               <goal>instance-create-archive</goal>
221             </goals>
222           </execution>
223         </executions>
224       </plugin>
225       <plugin>
226         <groupId>org.apache.maven.plugins</groupId>
227         <artifactId>maven-checkstyle-plugin</artifactId>
228         <configuration>
229           <excludes>**\/target\/,**\/bin\/,**\/target-ide\/,**\/configuration\/initial\/</excludes>
230         </configuration>
231       </plugin>
232       <plugin>
233         <groupId>org.apache.maven.plugins</groupId>
234         <artifactId>maven-dependency-plugin</artifactId>
235         <version>2.6</version>
236         <executions>
237           <execution>
238             <id>copy</id>
239             <goals>
240               <goal>copy</goal>
241             </goals>
242             <!-- here the phase you need -->
243             <phase>generate-resources</phase>
244             <configuration>
245               <artifactItems>
246                 <artifactItem>
247                   <groupId>org.opendaylight.controller</groupId>
248                   <artifactId>karaf.branding</artifactId>
249                   <version>${karaf.branding.version}</version>
250                   <outputDirectory>target/assembly/lib</outputDirectory>
251                   <destFileName>karaf.branding-${branding.version}.jar</destFileName>
252                 </artifactItem>
253                   <!-- Needs to be copied to lib/ext in order to start bouncy provider for mina sshd -->
254               <artifactItem>
255                   <groupId>org.bouncycastle</groupId>
256                   <artifactId>bcprov-jdk15on</artifactId>
257                   <version>${bouncycastle.version}</version>
258                   <outputDirectory>target/assembly/lib/ext</outputDirectory>
259                   <destFileName>bcprov-jdk15on-${bouncycastle.version}.jar</destFileName>
260               </artifactItem>
261               </artifactItems>
262             </configuration>
263           </execution>
264           <execution>
265             <id>unpack-karaf-resources</id>
266             <goals>
267               <goal>unpack-dependencies</goal>
268             </goals>
269             <phase>prepare-package</phase>
270             <configuration>
271              <outputDirectory>${project.build.directory}/assembly</outputDirectory>
272              <groupId>org.opendaylight.controller</groupId>
273              <includeArtifactIds>opendaylight-karaf-resources</includeArtifactIds>
274              <excludes>META-INF\/**</excludes>
275              <excludeTransitive>true</excludeTransitive>
276              <ignorePermissions>false</ignorePermissions>
277             </configuration>
278           </execution>
279         </executions>
280       </plugin>
281       <plugin>
282         <groupId>org.apache.maven.plugins</groupId>
283         <artifactId>maven-antrun-plugin</artifactId>
284         <executions>
285             <execution>
286                 <phase>prepare-package</phase>
287                 <goals>
288                     <goal>run</goal>
289                 </goals>
290                 <configuration>
291                   <tasks>
292                     <chmod perm="755">
293                         <fileset dir="${project.build.directory}/assembly/bin">
294                           <include name="karaf"/>
295                           <include name="instance"/>
296                           <include name="start"/>
297                           <include name="stop"/>
298                           <include name="status"/>
299                           <include name="client"/>
300                           <include name="shell"/>
301                         </fileset>
302                     </chmod>
303                   </tasks>
304                 </configuration>
305             </execution>
306         </executions>
307       </plugin>
308     </plugins>
309   </build>
310   <scm>
311     <connection>scm:git:ssh://git.opendaylight.org:29418/controller.git</connection>
312     <developerConnection>scm:git:ssh://git.opendaylight.org:29418/controller.git</developerConnection>
313     <tag>HEAD</tag>
314     <url>https://wiki.opendaylight.org/view/OpenDaylight_Controller:Main</url>
315   </scm>
316 </project>