Bump versions to 9.0.0-SNAPSHOT
[odlparent.git] / single-feature-parent / pom.xml
1 <?xml version="1.0" encoding="UTF-8"?>
2 <!--
3  Copyright © 2016, 2017 Red Hat, 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"
10          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     <modelVersion>4.0.0</modelVersion>
13
14     <!--
15          Base parent POM for building and packaging single Karaf features.
16          Karaf features are generated based on the POM dependencies; they can be supplemented by a base
17          feature.xml file in src/main/feature.
18
19          By default, such single features aren't tested for loadability; they're supposed to be aggregated
20          in a feature repository (see feature-repo-parent), which is tested using SingleFeatureTest. The
21          sft profile can be used to enforce SingleFeatureTest on single features too.
22
23          Single features which aren't part of a repository can not be considered part of a project's API.
24          In any case, refer to each project's declared features to determine their API and future
25          availability.
26
27          Users should do the following:
28
29          - specify this as their parent
30          - make sure the packaging is set to feature
31          - setup projects <dependencies/> as needed for their features
32     -->
33
34     <parent>
35         <groupId>org.opendaylight.odlparent</groupId>
36         <artifactId>untested-single-feature-parent</artifactId>
37         <version>9.0.0-SNAPSHOT</version>
38         <relativePath>../untested-single-feature-parent</relativePath>
39     </parent>
40
41     <artifactId>single-feature-parent</artifactId>
42     <packaging>pom</packaging>
43     <name>ODL :: odlparent :: ${project.artifactId}</name>
44
45     <properties>
46         <jacoco.skip>true</jacoco.skip>
47         <skip.karaf.featureTest>false</skip.karaf.featureTest>
48     </properties>
49
50     <dependencies>
51         <!-- Test the generated features.xml -->
52         <dependency>
53             <groupId>org.opendaylight.odlparent</groupId>
54             <artifactId>features-test</artifactId>
55             <version>9.0.0-SNAPSHOT</version>
56             <scope>test</scope>
57         </dependency>
58         <dependency>
59             <groupId>org.opendaylight.odlparent</groupId>
60             <artifactId>bundles-test-lib</artifactId>
61             <scope>test</scope>
62         </dependency>
63         <dependency>
64             <groupId>org.apache.karaf.bundle</groupId>
65             <artifactId>org.apache.karaf.bundle.core</artifactId>
66             <version>${karaf.version}</version>
67             <scope>test</scope>
68         </dependency>
69         <!-- Force SLF4J to test scope -->
70         <dependency>
71             <groupId>org.slf4j</groupId>
72             <artifactId>slf4j-api</artifactId>
73             <scope>test</scope>
74         </dependency>
75         <dependency>
76             <groupId>org.osgi</groupId>
77             <!-- required due to https://jira.opendaylight.org/browse/ODLPARENT-136 -->
78             <artifactId>osgi.cmpn</artifactId>
79             <scope>test</scope>
80         </dependency>
81     </dependencies>
82
83     <build>
84         <plugins>
85             <plugin>
86                 <artifactId>maven-surefire-plugin</artifactId>
87                 <!-- Overridden to have TCP channel support -->
88                 <version>3.0.0-M5</version>
89                 <configuration>
90                     <!-- Overridden to fix corruption with SFT, where the process would hang after test -->
91                     <forkNode implementation="org.apache.maven.plugin.surefire.extensions.SurefireForkNodeFactory"/>
92                     <dependenciesToScan>
93                         <dependency>org.opendaylight.odlparent:features-test</dependency>
94                     </dependenciesToScan>
95                     <additionalClasspathElements>
96                         <additionalClasspathElement>${project.build.directory}/feature</additionalClasspathElement>
97                     </additionalClasspathElements>
98                     <skip>${skip.karaf.featureTest}</skip>
99                     <systemPropertyVariables>
100                       <!-- Use the same repository for Pax Exam as is used for Maven -->
101                       <org.ops4j.pax.url.mvn.localRepository>${settings.localRepository}</org.ops4j.pax.url.mvn.localRepository>
102                     </systemPropertyVariables>
103                 </configuration>
104                 <executions>
105                     <execution>
106                         <phase>test</phase>
107                         <goals>
108                             <goal>test</goal>
109                         </goals>
110                     </execution>
111                 </executions>
112             </plugin>
113         </plugins>
114     </build>
115
116     <profiles>
117         <profile>
118             <id>disable-sft</id>
119             <activation>
120                 <!-- Karaf does not have jre.properties for JDK16+ just yet -->
121                 <jdk>[16,)</jdk>
122             </activation>
123
124             <properties>
125                 <skip.karaf.featureTest>true</skip.karaf.featureTest>
126             </properties>
127
128             <build>
129                 <plugins>
130                     <plugin>
131                         <groupId>com.github.ekryd.echo-maven-plugin</groupId>
132                         <artifactId>echo-maven-plugin</artifactId>
133                         <executions>
134                             <execution>
135                                 <id>UNTESTED-JDK</id>
136                                 <goals>
137                                     <goal>echo</goal>
138                                 </goals>
139                                 <phase>test</phase>
140                                 <configuration>
141                                     <message>Running on JDK newer than 11, which is not supported. Skipping feature tests.</message>
142                                 </configuration>
143                             </execution>
144                         </executions>
145                     </plugin>
146                 </plugins>
147             </build>
148         </profile>
149     </profiles>
150 </project>