4993eb7ce9237b84042106cea1b966ddf8fd15f6
[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>9.0.9</version>
17     <relativePath/>
18   </parent>
19
20   <groupId>org.opendaylight.controller</groupId>
21   <artifactId>mdsal-it-parent</artifactId>
22   <version>4.0.8-SNAPSHOT</version>
23   <packaging>pom</packaging>
24
25   <properties>
26     <karaf.distro.groupId>org.opendaylight.odlparent</karaf.distro.groupId>
27     <karaf.distro.artifactId>opendaylight-karaf-empty</karaf.distro.artifactId>
28     <karaf.distro.type>zip</karaf.distro.type>
29     <karaf.keep.unpack>false</karaf.keep.unpack>
30
31     <!-- FIXME: Remove this -->
32     <odlparent.modernizer.enforce>false</odlparent.modernizer.enforce>
33   </properties>
34
35   <dependencyManagement>
36     <dependencies>
37       <dependency>
38         <groupId>org.opendaylight.controller</groupId>
39         <artifactId>controller-artifacts</artifactId>
40         <version>4.0.8-SNAPSHOT</version>
41         <type>pom</type>
42         <scope>import</scope>
43       </dependency>
44     </dependencies>
45   </dependencyManagement>
46
47   <dependencies>
48     <dependency>
49       <groupId>org.opendaylight.controller</groupId>
50       <artifactId>mdsal-it-base</artifactId>
51     </dependency>
52
53     <!-- Dependencies for pax exam karaf container -->
54     <dependency>
55         <groupId>org.ops4j.pax.exam</groupId>
56         <artifactId>pax-exam-container-karaf</artifactId>
57     </dependency>
58     <dependency>
59         <groupId>org.ops4j.pax.exam</groupId>
60         <artifactId>pax-exam-junit4</artifactId>
61     </dependency>
62     <dependency>
63         <groupId>org.ops4j.pax.exam</groupId>
64         <artifactId>pax-exam</artifactId>
65     </dependency>
66     <dependency>
67         <groupId>org.ops4j.pax.exam</groupId>
68         <artifactId>pax-exam-features</artifactId>
69         <type>xml</type>
70     </dependency>
71     <dependency>
72         <groupId>org.ops4j.pax.exam</groupId>
73         <artifactId>pax-exam-extender-service</artifactId>
74     </dependency>
75     <dependency>
76         <groupId>org.ops4j.pax.exam</groupId>
77         <artifactId>pax-exam-inject</artifactId>
78     </dependency>
79     <dependency>
80         <groupId>org.ops4j.pax.exam</groupId>
81         <artifactId>pax-exam-invoker-junit</artifactId>
82     </dependency>
83     <dependency>
84         <groupId>org.ops4j.pax.url</groupId>
85         <artifactId>pax-url-aether</artifactId>
86     </dependency>
87     <dependency>
88         <groupId>org.apache.karaf.features</groupId>
89         <artifactId>org.apache.karaf.features.core</artifactId>
90         <version>${karaf.version}</version>
91     </dependency>
92     <dependency>
93         <groupId>org.osgi</groupId>
94         <artifactId>osgi.core</artifactId>
95     </dependency>
96     <dependency>
97         <groupId>junit</groupId>
98         <artifactId>junit</artifactId>
99     </dependency>
100
101     <!-- Testing Dependencies -->
102     <dependency>
103       <groupId>org.mockito</groupId>
104       <artifactId>mockito-core</artifactId>
105       <scope>test</scope>
106     </dependency>
107   </dependencies>
108   <build>
109     <plugins>
110       <plugin>
111           <artifactId>maven-surefire-plugin</artifactId>
112               <!-- Overridden to have TCP channel support -->
113           <version>3.0.0-M5</version>
114           <configuration>
115               <!-- Overridden to fix corruption, where the process would hang after test -->
116               <forkNode implementation="org.apache.maven.plugin.surefire.extensions.SurefireForkNodeFactory"/>
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>