12f99b10934c357a4d14db9b4b81020f4832f221
[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 <!--
4 Copyright (c) 2014 Cisco Systems, Inc. and others.  All rights reserved.
5
6 This program and the accompanying materials are made available under the
7 terms of the Eclipse Public License v1.0 which accompanies this distribution,
8 and is available at http://www.eclipse.org/legal/epl-v10.html
9 -->
10 <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">
11   <modelVersion>4.0.0</modelVersion>
12
13   <parent>
14     <groupId>org.opendaylight.odlparent</groupId>
15     <artifactId>bundle-parent</artifactId>
16     <version>4.0.9</version>
17     <relativePath/>
18   </parent>
19
20   <groupId>org.opendaylight.controller</groupId>
21   <artifactId>mdsal-it-parent</artifactId>
22   <version>1.10.0-SNAPSHOT</version>
23   <packaging>pom</packaging>
24
25   <properties>
26     <mdsal.version>1.10.0-SNAPSHOT</mdsal.version>
27     <karaf.distro.groupId>org.opendaylight.odlparent</karaf.distro.groupId>
28     <karaf.distro.artifactId>opendaylight-karaf-empty</karaf.distro.artifactId>
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     </dependency>
70     <dependency>
71         <groupId>org.ops4j.pax.exam</groupId>
72         <artifactId>pax-exam-extender-service</artifactId>
73     </dependency>
74     <dependency>
75         <groupId>org.ops4j.pax.exam</groupId>
76         <artifactId>pax-exam-inject</artifactId>
77     </dependency>
78     <dependency>
79         <groupId>org.ops4j.pax.exam</groupId>
80         <artifactId>pax-exam-invoker-junit</artifactId>
81     </dependency>
82     <dependency>
83         <groupId>org.ops4j.pax.url</groupId>
84         <artifactId>pax-url-aether</artifactId>
85     </dependency>
86     <dependency>
87         <groupId>javax.inject</groupId>
88         <artifactId>javax.inject</artifactId>
89         <version>1</version>
90     </dependency>
91     <dependency>
92         <groupId>org.apache.karaf.features</groupId>
93         <artifactId>org.apache.karaf.features.core</artifactId>
94         <version>${karaf.version}</version>
95     </dependency>
96     <dependency>
97         <groupId>org.osgi</groupId>
98         <artifactId>org.osgi.core</artifactId>
99     </dependency>
100     <dependency>
101         <groupId>junit</groupId>
102         <artifactId>junit</artifactId>
103     </dependency>
104
105     <!-- Testing Dependencies -->
106     <dependency>
107       <groupId>org.mockito</groupId>
108       <artifactId>mockito-core</artifactId>
109       <scope>test</scope>
110     </dependency>
111   </dependencies>
112   <build>
113     <plugins>
114       <plugin>
115           <artifactId>maven-surefire-plugin</artifactId>
116           <configuration>
117               <systemPropertyVariables>
118                 <!-- CONTROLLER-1799: Use the same repository for Pax Exam as is used for Maven -->
119                 <org.ops4j.pax.url.mvn.localRepository>${settings.localRepository}</org.ops4j.pax.url.mvn.localRepository>
120               </systemPropertyVariables>
121           </configuration>
122       </plugin>
123       <plugin>
124         <groupId>org.apache.maven.plugins</groupId>
125         <artifactId>maven-failsafe-plugin</artifactId>
126         <executions>
127           <execution>
128             <goals>
129               <goal>integration-test</goal>
130               <goal>verify</goal>
131             </goals>
132             <configuration>
133               <systemProperties>
134                 <property>
135                  <name>karaf.distro.groupId</name>
136                  <value>${karaf.distro.groupId}</value>
137                 </property>
138                 <property>
139                  <name>karaf.distro.artifactId</name>
140                  <value>${karaf.distro.artifactId}</value>
141                 </property>
142                 <property>
143                  <name>karaf.distro.version</name>
144                  <value>${karaf.distro.version}</value>
145                 </property>
146                 <property>
147                  <name>karaf.distro.type</name>
148                  <value>${karaf.distro.type}</value>
149                 </property>
150                 <property>
151                  <name>karaf.keep.unpack</name>
152                  <value>${karaf.keep.unpack}</value>
153                 </property>
154               </systemProperties>
155               <reportsDirectory>${project.build.directory}/surefire-reports</reportsDirectory>
156             </configuration>
157           </execution>
158         </executions>
159       </plugin>
160       <!-- Needed if you use versionAsInProject() -->
161       <plugin>
162           <groupId>org.apache.servicemix.tooling</groupId>
163           <artifactId>depends-maven-plugin</artifactId>
164           <executions>
165               <execution>
166                   <id>generate-depends-file</id>
167                   <goals>
168                       <goal>generate-depends-file</goal>
169                   </goals>
170               </execution>
171           </executions>
172       </plugin>
173
174       <!-- Copy the Base Test classes into test-classes so they can become available in the karaf container -->
175       <plugin>
176         <groupId>org.apache.maven.plugins</groupId>
177         <artifactId>maven-dependency-plugin</artifactId>
178         <executions>
179           <execution>
180            <id>unpack-karaf-resources</id>
181            <goals>
182             <goal>unpack-dependencies</goal>
183            </goals>
184            <phase>process-test-resources</phase>
185            <configuration>
186             <outputDirectory>${project.build.directory}/test-classes</outputDirectory>
187             <groupId>org.opendaylight.controller</groupId>
188             <includeArtifactIds>mockito-core,objenesis,mdsal-it-base</includeArtifactIds>
189             <excludes>META-INF\/**</excludes>
190             <ignorePermissions>false</ignorePermissions>
191            </configuration>
192           </execution>
193          </executions>
194       </plugin>
195     </plugins>
196   </build>
197 </project>