b73d604bd850c2aa4f76297009dadd4f8e0c7276
[controller.git] / opendaylight / md-sal / mdsal-it-parent / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- vi: set et smarttab sw=4 tabstop=4: --><!--
3 Copyright (c) 2014 Cisco Systems, Inc. and others.  All rights reserved.
4
5 This program and the accompanying materials are made available under the
6 terms of the Eclipse Public License v1.0 which accompanies this distribution,
7 and is available at http://www.eclipse.org/legal/epl-v10.html
8 -->
9 <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">
10   <modelVersion>4.0.0</modelVersion>
11
12   <parent>
13     <groupId>org.opendaylight.odlparent</groupId>
14     <artifactId>bundle-parent</artifactId>
15     <version>3.0.2</version>
16     <relativePath/>
17   </parent>
18
19   <groupId>org.opendaylight.controller</groupId>
20   <artifactId>mdsal-it-parent</artifactId>
21   <version>1.8.0-SNAPSHOT</version>
22   <packaging>pom</packaging>
23
24   <properties>
25     <mdsal.version>1.8.0-SNAPSHOT</mdsal.version>
26     <karaf.distro.groupId>org.opendaylight.odlparent</karaf.distro.groupId>
27     <karaf.distro.artifactId>opendaylight-karaf-empty</karaf.distro.artifactId>
28     <karaf.distro.version>3.0.2</karaf.distro.version>
29     <karaf.distro.type>zip</karaf.distro.type>
30     <karaf.keep.unpack>false</karaf.keep.unpack>
31   </properties>
32
33   <dependencyManagement>
34     <dependencies>
35       <dependency>
36         <groupId>org.opendaylight.controller</groupId>
37         <artifactId>mdsal-artifacts</artifactId>
38         <version>${mdsal.version}</version>
39         <type>pom</type>
40         <scope>import</scope>
41       </dependency>
42     </dependencies>
43   </dependencyManagement>
44
45   <dependencies>
46     <dependency>
47       <groupId>org.opendaylight.controller</groupId>
48       <artifactId>mdsal-it-base</artifactId>
49       <version>${mdsal.version}</version>
50     </dependency>
51
52     <!-- Dependencies for pax exam karaf container -->
53     <dependency>
54         <groupId>org.ops4j.pax.exam</groupId>
55         <artifactId>pax-exam-container-karaf</artifactId>
56     </dependency>
57     <dependency>
58         <groupId>org.ops4j.pax.exam</groupId>
59         <artifactId>pax-exam-junit4</artifactId>
60     </dependency>
61     <dependency>
62         <groupId>org.ops4j.pax.exam</groupId>
63         <artifactId>pax-exam</artifactId>
64     </dependency>
65     <dependency>
66         <groupId>org.ops4j.pax.exam</groupId>
67         <artifactId>pax-exam-features</artifactId>
68         <type>xml</type>
69
70         <!-- FIXME: remove version declaration and scope once odlparent has this -->
71         <version>${exam.version}</version>
72         <scope>test</scope>
73     </dependency>
74     <dependency>
75         <groupId>org.ops4j.pax.exam</groupId>
76         <artifactId>pax-exam-extender-service</artifactId>
77
78         <!-- FIXME: remove version declaration and scope once odlparent has this -->
79         <version>${exam.version}</version>
80         <scope>test</scope>
81     </dependency>
82     <dependency>
83         <groupId>org.ops4j.pax.exam</groupId>
84         <artifactId>pax-exam-inject</artifactId>
85
86         <!-- FIXME: remove version declaration and scope once odlparent has this -->
87         <version>${exam.version}</version>
88         <scope>test</scope>
89     </dependency>
90
91     <dependency>
92         <groupId>org.ops4j.pax.exam</groupId>
93         <artifactId>pax-exam-invoker-junit</artifactId>
94
95         <!-- FIXME: remove version declaration and scope once odlparent has this -->
96         <version>${exam.version}</version>
97         <scope>test</scope>
98     </dependency>
99
100     <dependency>
101         <groupId>org.ops4j.pax.url</groupId>
102         <artifactId>pax-url-aether</artifactId>
103     </dependency>
104     <dependency>
105         <groupId>javax.inject</groupId>
106         <artifactId>javax.inject</artifactId>
107         <version>1</version>
108     </dependency>
109     <dependency>
110         <groupId>org.apache.karaf.features</groupId>
111         <artifactId>org.apache.karaf.features.core</artifactId>
112         <version>${karaf.version}</version>
113     </dependency>
114     <dependency>
115         <groupId>org.osgi</groupId>
116         <artifactId>org.osgi.core</artifactId>
117     </dependency>
118     <dependency>
119         <groupId>junit</groupId>
120         <artifactId>junit</artifactId>
121     </dependency>
122
123     <!-- Testing Dependencies -->
124     <dependency>
125       <groupId>org.mockito</groupId>
126       <artifactId>mockito-core</artifactId>
127       <scope>test</scope>
128     </dependency>
129   </dependencies>
130   <build>
131     <plugins>
132       <plugin>
133           <artifactId>maven-surefire-plugin</artifactId>
134           <version>${maven.surefire.version}</version>
135           <configuration>
136               <systemPropertyVariables>
137                 <!-- CONTROLLER-1799: Use the same repository for Pax Exam as is used for Maven -->
138                 <org.ops4j.pax.url.mvn.localRepository>${settings.localRepository}</org.ops4j.pax.url.mvn.localRepository>
139               </systemPropertyVariables>
140           </configuration>
141       </plugin>
142       <plugin>
143         <groupId>org.apache.maven.plugins</groupId>
144         <artifactId>maven-failsafe-plugin</artifactId>
145         <executions>
146           <execution>
147             <goals>
148               <goal>integration-test</goal>
149               <goal>verify</goal>
150             </goals>
151             <configuration>
152               <systemProperties>
153                 <property>
154                  <name>karaf.distro.groupId</name>
155                  <value>${karaf.distro.groupId}</value>
156                 </property>
157                 <property>
158                  <name>karaf.distro.artifactId</name>
159                  <value>${karaf.distro.artifactId}</value>
160                 </property>
161                 <property>
162                  <name>karaf.distro.version</name>
163                  <value>${karaf.distro.version}</value>
164                 </property>
165                 <property>
166                  <name>karaf.distro.type</name>
167                  <value>${karaf.distro.type}</value>
168                 </property>
169                 <property>
170                  <name>karaf.keep.unpack</name>
171                  <value>${karaf.keep.unpack}</value>
172                 </property>
173               </systemProperties>
174               <reportsDirectory>${project.build.directory}/surefire-reports</reportsDirectory>
175             </configuration>
176           </execution>
177         </executions>
178       </plugin>
179       <!-- Needed if you use versionAsInProject() -->
180       <plugin>
181           <groupId>org.apache.servicemix.tooling</groupId>
182           <artifactId>depends-maven-plugin</artifactId>
183           <executions>
184               <execution>
185                   <id>generate-depends-file</id>
186                   <goals>
187                       <goal>generate-depends-file</goal>
188                   </goals>
189               </execution>
190           </executions>
191       </plugin>
192
193       <!-- Copy the Base Test classes into test-classes so they can become available in the karaf container -->
194       <plugin>
195         <groupId>org.apache.maven.plugins</groupId>
196         <artifactId>maven-dependency-plugin</artifactId>
197         <executions>
198           <execution>
199            <id>unpack-karaf-resources</id>
200            <goals>
201             <goal>unpack-dependencies</goal>
202            </goals>
203            <phase>process-test-resources</phase>
204            <configuration>
205             <outputDirectory>${project.build.directory}/test-classes</outputDirectory>
206             <groupId>org.opendaylight.controller</groupId>
207             <includeArtifactIds>mockito-core,objenesis,config-it-base,mdsal-it-base</includeArtifactIds>
208             <excludes>META-INF\/**</excludes>
209             <ignorePermissions>false</ignorePermissions>
210            </configuration>
211           </execution>
212          </executions>
213       </plugin>
214     </plugins>
215   </build>
216 </project>