d9430593bbcd31ded468357d40ab37addbb541fc
[odlparent.git] / features-test / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!-- vi: set et smarttab sw=4 tabstop=4: -->
3 <!--
4  Copyright © 2014, 2017 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"
11     xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
12
13     <parent>
14         <groupId>org.opendaylight.odlparent</groupId>
15         <artifactId>bundle-parent</artifactId>
16         <version>3.0.0-SNAPSHOT</version>
17         <relativePath>../bundle-parent</relativePath>
18     </parent>
19
20     <modelVersion>4.0.0</modelVersion>
21     <artifactId>features-test</artifactId>
22     <packaging>bundle</packaging>
23     <name>ODL :: odlparent :: ${project.artifactId}</name>
24
25     <dependencies>
26         <!-- Dependencies for pax exam karaf container -->
27         <dependency>
28             <groupId>org.ops4j.pax.exam</groupId>
29             <artifactId>pax-exam-container-karaf</artifactId>
30             <scope>compile</scope>
31         </dependency>
32         <dependency>
33             <groupId>org.ops4j.pax.exam</groupId>
34             <artifactId>pax-exam-junit4</artifactId>
35             <scope>compile</scope>
36         </dependency>
37         <dependency>
38             <groupId>org.ops4j.pax.exam</groupId>
39             <artifactId>pax-exam</artifactId>
40             <scope>compile</scope>
41         </dependency>
42         <dependency>
43             <groupId>org.ops4j.pax.url</groupId>
44             <artifactId>pax-url-aether</artifactId>
45             <scope>compile</scope>
46         </dependency>
47         <dependency>
48             <groupId>org.apache.karaf.features</groupId>
49             <artifactId>standard</artifactId>
50             <version>${karaf.version}</version>
51             <classifier>features</classifier>
52             <type>xml</type>
53         </dependency>
54         <dependency>
55             <groupId>junit</groupId>
56             <artifactId>junit</artifactId>
57             <scope>compile</scope>
58         </dependency>
59         <dependency>
60             <groupId>org.apache.karaf.deployer</groupId>
61             <artifactId>org.apache.karaf.deployer.blueprint</artifactId>
62             <version>${karaf.version}</version>
63             <scope>compile</scope>
64         </dependency>
65         <dependency>
66             <groupId>org.apache.karaf.deployer</groupId>
67             <artifactId>org.apache.karaf.deployer.features</artifactId>
68             <version>${karaf.version}</version>
69             <scope>compile</scope>
70         </dependency>
71         <dependency>
72             <groupId>org.ops4j.pax.url</groupId>
73             <artifactId>pax-url-wrap</artifactId>
74             <scope>compile</scope>
75         </dependency>
76         <dependency>
77             <groupId>org.slf4j</groupId>
78             <artifactId>slf4j-api</artifactId>
79             <scope>compile</scope>
80         </dependency>
81         <dependency>
82             <groupId>javax.inject</groupId>
83             <artifactId>javax.inject</artifactId>
84             <scope>compile</scope>
85         </dependency>
86         <dependency>
87             <groupId>org.osgi</groupId>
88             <artifactId>org.osgi.core</artifactId>
89             <scope>compile</scope>
90         </dependency>
91         <dependency>
92             <groupId>org.opendaylight.odlparent</groupId>
93             <artifactId>opendaylight-karaf-empty</artifactId>
94             <type>zip</type>
95         </dependency>
96         <!-- BEWARE of adding additional dependencies here...
97              It will cause weird issues e.g. in integration/distribution/features/repos/distribution -->
98         <dependency>
99             <groupId>${project.groupId}</groupId>
100             <artifactId>bundles4-test</artifactId>
101             <version>${project.version}</version>
102             <scope>provided</scope>
103         </dependency>
104         <dependency>
105             <groupId>org.apache.karaf.bundle</groupId>
106             <artifactId>org.apache.karaf.bundle.core</artifactId>
107             <version>${karaf.version}</version>
108             <scope>provided</scope>
109         </dependency>
110         <dependency>
111           <groupId>com.google.guava</groupId>
112           <artifactId>guava</artifactId>
113           <scope>compile</scope>
114         </dependency>
115         <!-- The following, which are just transitive dependencies of bundles4-test,
116              have to be repeated here so that the Embed-Dependency below for maven-bundle-plugin works: -->
117         <dependency>
118           <groupId>org.hamcrest</groupId>
119           <artifactId>hamcrest-core</artifactId>
120           <scope>provided</scope>
121         </dependency>
122         <dependency>
123           <groupId>org.awaitility</groupId>
124           <artifactId>awaitility</artifactId>
125           <scope>provided</scope>
126           <exclusions>
127             <exclusion>
128               <groupId>cglib</groupId>
129               <artifactId>cglib-nodep</artifactId>
130             </exclusion>
131             <exclusion>
132               <groupId>org.objenesis</groupId>
133               <artifactId>objenesis</artifactId>
134             </exclusion>
135           </exclusions>
136         </dependency>
137         <!-- Real <scope>test dependencies, just for SingleFeatureTestUnitTest -->
138         <dependency>
139           <groupId>com.google.truth</groupId>
140           <artifactId>truth</artifactId>
141           <scope>test</scope>
142         </dependency>
143     </dependencies>
144
145     <build>
146         <resources>
147             <resource>
148                 <directory>src/main/resources</directory>
149                 <filtering>true</filtering>
150             </resource>
151         </resources>
152         <plugins>
153             <plugin>
154                 <groupId>org.apache.felix</groupId>
155                 <artifactId>maven-bundle-plugin</artifactId>
156                 <configuration>
157                   <instructions>
158                     <Embed-Dependency>bundles4-test;inline=true,awaitility;inline=true,hamcrest-core;inline=true</Embed-Dependency>
159                     <!-- same as in bundles4-test/pom.xml: -->
160                     <Import-Package>!net.sf.cglib.proxy,!org.objenesis,*</Import-Package>
161                   </instructions>
162                 </configuration>
163             </plugin>
164             <plugin>
165                 <artifactId>maven-checkstyle-plugin</artifactId>
166                 <configuration>
167                     <propertyExpansion>checkstyle.violationSeverity=error</propertyExpansion>
168                 </configuration>
169                 <executions>
170                     <execution>
171                         <id>check-license</id>
172                         <configuration>
173                             <excludes>
174                                 <!-- Skip Apache Licensed files -->
175                                 org/opendaylight/odlparent/featuretest/CustomBundleUrlStreamHandlerFactory.java
176                             </excludes>
177                         </configuration>
178                     </execution>
179                 </executions>
180             </plugin>
181         </plugins>
182     </build>
183
184   <!--
185     Maven Site Configuration
186
187     The following configuration is necessary for maven-site-plugin to
188     correctly identify the correct deployment path for OpenDaylight Maven
189     sites.
190   -->
191   <url>${odl.site.url}/${project.groupId}/${stream}/${project.artifactId}/</url>
192
193   <distributionManagement>
194     <site>
195       <id>opendaylight-site</id>
196       <url>${nexus.site.url}/${project.artifactId}/</url>
197     </site>
198   </distributionManagement>
199 </project>