added profile that allows to choose whether build Li/He features
[openflowplugin.git] / features / 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"
3          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
4     <modelVersion>4.0.0</modelVersion>
5     <parent>
6         <groupId>org.opendaylight.openflowplugin</groupId>
7         <artifactId>openflowplugin-parent</artifactId>
8         <version>0.1.0-SNAPSHOT</version>
9         <relativePath>../parent</relativePath>
10     </parent>
11     <artifactId>features-openflowplugin</artifactId>
12
13     <packaging>jar</packaging>
14
15     <properties>
16         <karaf.empty.distro.version>1.5.0-SNAPSHOT</karaf.empty.distro.version>
17         <config.configfile.directory>etc/opendaylight/karaf</config.configfile.directory>
18         <config.statistics.manager.configfile>30-statistics-manager.xml</config.statistics.manager.configfile>
19         <controller.model.version>1.2.0-SNAPSHOT</controller.model.version>
20         <target.features.file>features.xml</target.features.file>
21     </properties>
22     <profiles>
23         <profile>
24             <id>He</id>
25             <activation>
26                 <activeByDefault>true</activeByDefault>
27             </activation>
28             <properties>
29                 <features.file>features-He.xml</features.file>
30             </properties>
31         </profile>
32         <profile>
33             <id>Li</id>
34             <activation>
35                 <activeByDefault>false</activeByDefault>
36             </activation>
37             <properties>
38                 <features.file>features-Li.xml</features.file>
39             </properties>
40         </profile>
41     </profiles>
42
43     <dependencies>
44         <!-- feature dependencies -->
45         <dependency>
46             <groupId>org.opendaylight.controller</groupId>
47             <artifactId>features-mdsal</artifactId>
48             <version>${mdsal.version}</version>
49             <classifier>features</classifier>
50             <type>xml</type>
51         </dependency>
52         <dependency>
53             <groupId>org.opendaylight.yangtools</groupId>
54             <artifactId>features-yangtools</artifactId>
55             <classifier>features</classifier>
56             <version>${yangtools.version}</version>
57             <type>xml</type>
58         </dependency>
59         <dependency>
60             <groupId>org.opendaylight.controller</groupId>
61             <artifactId>features-restconf</artifactId>
62             <version>${mdsal.version}</version>
63             <classifier>features</classifier>
64             <type>xml</type>
65         </dependency>
66         <dependency>
67             <groupId>org.opendaylight.openflowjava</groupId>
68             <artifactId>features-openflowjava</artifactId>
69             <version>${openflowjava.version}</version>
70             <classifier>features</classifier>
71             <type>xml</type>
72         </dependency>
73
74         <!-- bundle dependencies -->
75         <dependency>
76             <groupId>org.opendaylight.openflowplugin.model</groupId>
77             <artifactId>model-flow-base</artifactId>
78         </dependency>
79         <dependency>
80             <groupId>org.opendaylight.openflowplugin.model</groupId>
81             <artifactId>model-flow-service</artifactId>
82         </dependency>
83         <dependency>
84             <groupId>org.opendaylight.openflowplugin.model</groupId>
85             <artifactId>model-flow-statistics</artifactId>
86         </dependency>
87         <dependency>
88             <groupId>org.opendaylight.controller.model</groupId>
89             <artifactId>model-inventory</artifactId>
90         </dependency>
91         <dependency>
92             <groupId>org.opendaylight.controller.model</groupId>
93             <artifactId>model-topology</artifactId>
94         </dependency>
95
96         <dependency>
97             <groupId>org.opendaylight.openflowplugin.applications</groupId>
98             <artifactId>forwardingrules-manager</artifactId>
99         </dependency>
100         <dependency>
101             <groupId>org.opendaylight.openflowplugin.applications</groupId>
102             <artifactId>forwardingrules-manager-config</artifactId>
103             <classifier>config</classifier>
104             <type>xml</type>
105         </dependency>
106         <dependency>
107             <groupId>org.opendaylight.openflowplugin.applications</groupId>
108             <artifactId>inventory-manager</artifactId>
109         </dependency>
110         <dependency>
111             <groupId>org.opendaylight.openflowplugin.applications</groupId>
112             <artifactId>lldp-speaker</artifactId>
113         </dependency>
114         <dependency>
115             <groupId>org.opendaylight.openflowplugin.applications</groupId>
116             <artifactId>statistics-manager</artifactId>
117         </dependency>
118         <dependency>
119             <groupId>org.opendaylight.openflowplugin.applications</groupId>
120             <artifactId>statistics-manager-config</artifactId>
121             <classifier>config</classifier>
122             <type>xml</type>
123         </dependency>
124
125         <dependency>
126             <groupId>org.opendaylight.dlux</groupId>
127             <artifactId>features-dlux</artifactId>
128             <version>${dlux.version}</version>
129             <classifier>features</classifier>
130             <type>xml</type>
131         </dependency>
132         <dependency>
133             <groupId>org.opendaylight.controller</groupId>
134             <artifactId>features-netconf-connector</artifactId>
135             <version>${netconf.version}</version>
136             <classifier>features</classifier>
137             <type>xml</type>
138         </dependency>
139
140         <dependency>
141             <groupId>org.opendaylight.dlux</groupId>
142             <artifactId>features-dlux</artifactId>
143             <version>${dlux.version}</version>
144             <classifier>features</classifier>
145             <type>xml</type>
146         </dependency>
147         <dependency>
148             <groupId>org.opendaylight.controller</groupId>
149             <artifactId>features-netconf-connector</artifactId>
150             <version>${mdsal.version}</version>
151             <classifier>features</classifier>
152             <type>xml</type>
153         </dependency>
154
155         <!-- bundle dependencies -->
156         <dependency>
157             <groupId>org.opendaylight.openflowplugin</groupId>
158             <artifactId>openflowplugin-api</artifactId>
159         </dependency>
160         <dependency>
161             <groupId>org.opendaylight.openflowplugin</groupId>
162             <artifactId>openflowplugin-extension-api</artifactId>
163         </dependency>
164         <dependency>
165             <groupId>org.opendaylight.openflowplugin</groupId>
166             <artifactId>openflowplugin</artifactId>
167         </dependency>
168         <dependency>
169             <groupId>org.opendaylight.openflowplugin</groupId>
170             <artifactId>openflowplugin-impl</artifactId>
171         </dependency>
172         <dependency>
173             <groupId>org.opendaylight.openflowplugin.applications</groupId>
174             <artifactId>table-miss-enforcer</artifactId>
175         </dependency>
176         <dependency>
177             <groupId>org.opendaylight.openflowplugin.applications</groupId>
178             <artifactId>table-miss-enforcer</artifactId>
179             <type>xml</type>
180             <classifier>config</classifier>
181         </dependency>
182
183         <dependency>
184             <groupId>org.opendaylight.openflowplugin.applications</groupId>
185             <artifactId>topology-lldp-discovery</artifactId>
186         </dependency>
187         <dependency>
188             <groupId>org.opendaylight.openflowplugin.applications</groupId>
189             <artifactId>topology-manager</artifactId>
190         </dependency>
191
192         <dependency>
193             <groupId>org.opendaylight.openflowplugin.applications</groupId>
194             <artifactId>of-switch-config-pusher</artifactId>
195         </dependency>
196         <dependency>
197             <groupId>org.opendaylight.openflowplugin.applications</groupId>
198             <artifactId>of-switch-config-pusher</artifactId>
199             <type>xml</type>
200             <classifier>config</classifier>
201         </dependency>
202
203         <dependency>
204             <groupId>org.opendaylight.openflowplugin.applications</groupId>
205             <artifactId>lldp-speaker</artifactId>
206             <type>xml</type>
207             <classifier>config</classifier>
208         </dependency>
209
210         <dependency>
211             <groupId>org.opendaylight.openflowplugin</groupId>
212             <artifactId>drop-test-karaf</artifactId>
213         </dependency>
214         <dependency>
215             <groupId>org.opendaylight.openflowplugin</groupId>
216             <artifactId>test-common</artifactId>
217         </dependency>
218         <dependency>
219             <groupId>org.opendaylight.openflowplugin</groupId>
220             <artifactId>openflowplugin-controller-config</artifactId>
221             <type>xml</type>
222             <classifier>config-Li</classifier>
223         </dependency>
224         <dependency>
225             <groupId>org.opendaylight.openflowplugin</groupId>
226             <artifactId>openflowplugin-controller-config</artifactId>
227             <type>xml</type>
228             <classifier>config-He</classifier>
229         </dependency>
230         <dependency>
231             <groupId>org.opendaylight.openflowplugin</groupId>
232             <artifactId>openflowplugin-controller-config</artifactId>
233             <type>xml</type>
234             <classifier>configmsgspy</classifier>
235         </dependency>
236         <dependency>
237             <groupId>org.opendaylight.controller</groupId>
238             <artifactId>liblldp</artifactId>
239             <version>${sal.api.version}</version>
240         </dependency>
241
242         <!-- test the features.xml -->
243         <dependency>
244             <groupId>org.opendaylight.odlparent</groupId>
245             <artifactId>features-test</artifactId>
246         </dependency>
247         <!-- dependency for opendaylight-karaf-empty for use by testing -->
248         <dependency>
249             <groupId>org.opendaylight.controller</groupId>
250             <artifactId>opendaylight-karaf-empty</artifactId>
251             <version>${karaf.distro.empty.version}</version>
252             <type>zip</type>
253         </dependency>
254     </dependencies>
255
256     <build>
257         <resources>
258             <resource>
259                 <filtering>true</filtering>
260                 <directory>src/main/resources</directory>
261             </resource>
262         </resources>
263
264         <plugins>
265             <plugin>
266                 <artifactId>maven-antrun-plugin</artifactId>
267                 <executions>
268                     <execution>
269                         <phase>compile</phase>
270                         <configuration>
271                             <target>
272                                 <!-- single feature test looks for features.xml we need to provide that -->
273                                 <delete>
274                                     <fileset dir="src/main/resources/" includes="${target.features.file}" />
275                                 </delete>
276                                 <copy file="src/main/resources/${features.file}" tofile="src/main/resources/${target.features.file}"/>
277                             </target>
278                         </configuration>
279                         <goals>
280                             <goal>run</goal>
281                         </goals>
282                     </execution>
283                 </executions>
284             </plugin>
285             <plugin>
286                 <groupId>org.apache.maven.plugins</groupId>
287                 <artifactId>maven-resources-plugin</artifactId>
288                 <executions>
289                     <execution>
290                         <id>filter</id>
291                         <goals>
292                             <goal>resources</goal>
293                         </goals>
294                         <phase>generate-resources</phase>
295                     </execution>
296                 </executions>
297             </plugin>
298             <plugin>
299                 <groupId>org.codehaus.mojo</groupId>
300                 <artifactId>build-helper-maven-plugin</artifactId>
301                 <executions>
302                     <execution>
303                         <id>attach-artifacts</id>
304                         <goals>
305                             <goal>attach-artifact</goal>
306                         </goals>
307                         <phase>package</phase>
308                         <configuration>
309                             <artifacts>
310                                 <artifact>
311                                     <file>${project.build.directory}/classes/${features.file}</file>
312                                     <type>xml</type>
313                                     <classifier>features</classifier>
314                                 </artifact>
315                             </artifacts>
316                         </configuration>
317                     </execution>
318                 </executions>
319             </plugin>
320             <plugin>
321                 <groupId>org.apache.maven.plugins</groupId>
322                 <artifactId>maven-surefire-plugin</artifactId>
323                 <version>2.16</version>
324                 <configuration>
325                     <systemPropertyVariables>
326                         <karaf.distro.groupId>org.opendaylight.controller</karaf.distro.groupId>
327                         <karaf.distro.artifactId>opendaylight-karaf-empty</karaf.distro.artifactId>
328                         <karaf.distro.version>${karaf.empty.distro.version}</karaf.distro.version>
329                     </systemPropertyVariables>
330                     <dependenciesToScan>
331                         <dependency>org.opendaylight.odlparent:features-test</dependency>
332                     </dependenciesToScan>
333                 </configuration>
334             </plugin>
335         </plugins>
336     </build>
337     <scm>
338         <connection>scm:git:ssh://git.opendaylight.org:29418/controller.git</connection>
339         <developerConnection>scm:git:ssh://git.opendaylight.org:29418/controller.git</developerConnection>
340         <tag>HEAD</tag>
341         <url>https://wiki.opendaylight.org/view/OpenDaylight_Controller:MD-SAL</url>
342     </scm>
343 </project>