Bump versions to 13.0.7-SNAPSHOT
[odlparent.git] / abstract-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         Internal parent for testing single Karaf features. This parent should not be used by downstreams,
16         who should use single-feature-parent.
17     -->
18
19     <parent>
20         <groupId>org.opendaylight.odlparent</groupId>
21         <artifactId>odlparent</artifactId>
22         <version>13.0.7-SNAPSHOT</version>
23         <relativePath>../odlparent</relativePath>
24     </parent>
25
26     <artifactId>abstract-feature-parent</artifactId>
27     <packaging>pom</packaging>
28     <name>ODL :: odlparent :: ${project.artifactId}</name>
29
30     <properties>
31         <checkDependencyChange>false</checkDependencyChange>
32         <failOnDependencyChange>false</failOnDependencyChange>
33
34         <jacoco.skip>true</jacoco.skip>
35         <skip.karaf.featureTest>false</skip.karaf.featureTest>
36
37         <!-- We typically do not have code in feature artifacts, which throws off maven-dependency-plugin -->
38         <odlparent.dependency.skip>true</odlparent.dependency.skip>
39     </properties>
40
41     <dependencies>
42         <!-- Test the generated features.xml -->
43         <dependency>
44             <groupId>org.opendaylight.odlparent</groupId>
45             <artifactId>features-test</artifactId>
46             <version>13.0.7-SNAPSHOT</version>
47             <scope>test</scope>
48         </dependency>
49         <dependency>
50             <groupId>org.opendaylight.odlparent</groupId>
51             <artifactId>bundles-test-lib</artifactId>
52             <scope>test</scope>
53         </dependency>
54         <dependency>
55             <groupId>org.apache.karaf.bundle</groupId>
56             <artifactId>org.apache.karaf.bundle.core</artifactId>
57             <version>${karaf.version}</version>
58             <scope>test</scope>
59         </dependency>
60         <!-- Force SLF4J to test scope -->
61         <dependency>
62             <groupId>org.slf4j</groupId>
63             <artifactId>slf4j-api</artifactId>
64             <scope>test</scope>
65         </dependency>
66     </dependencies>
67
68     <build>
69         <plugins>
70             <plugin>
71                 <!-- This generates the META-INF/maven/dependencies.properties file
72                      which is required by the versionAsInProject() used in SingleFeatureTest -->
73                 <groupId>org.apache.servicemix.tooling</groupId>
74                 <artifactId>depends-maven-plugin</artifactId>
75             </plugin>
76             <plugin>
77                 <artifactId>maven-surefire-plugin</artifactId>
78                 <configuration>
79                     <!-- Overridden to fix corruption with SFT, where the process would hang after test -->
80                     <forkNode implementation="org.apache.maven.plugin.surefire.extensions.SurefireForkNodeFactory"/>
81                     <dependenciesToScan>
82                         <dependency>org.opendaylight.odlparent:features-test</dependency>
83                     </dependenciesToScan>
84                     <additionalClasspathElements>
85                         <additionalClasspathElement>${project.build.directory}/feature</additionalClasspathElement>
86                     </additionalClasspathElements>
87                     <skip>${skip.karaf.featureTest}</skip>
88                     <systemPropertyVariables>
89                         <!-- Use the same repository for Pax Exam as is used for Maven -->
90                         <org.ops4j.pax.url.mvn.localRepository>${settings.localRepository}</org.ops4j.pax.url.mvn.localRepository>
91                     </systemPropertyVariables>
92
93                     <!-- Disable argLine if present, but pass it to SFT -->
94                     <argLine>-DsftArgLine='@{argLine}'</argLine>
95                 </configuration>
96                 <executions>
97                     <execution>
98                         <phase>test</phase>
99                         <goals>
100                             <goal>test</goal>
101                         </goals>
102                     </execution>
103                 </executions>
104             </plugin>
105         </plugins>
106     </build>
107
108     <profiles>
109         <profile>
110             <id>disable-sft</id>
111             <activation>
112                 <!-- Karaf does not have jre.properties for JDK19+ just yet -->
113                 <jdk>[19,)</jdk>
114             </activation>
115
116             <properties>
117                 <skip.karaf.featureTest>true</skip.karaf.featureTest>
118             </properties>
119
120             <build>
121                 <plugins>
122                     <plugin>
123                         <groupId>com.github.ekryd.echo-maven-plugin</groupId>
124                         <artifactId>echo-maven-plugin</artifactId>
125                         <executions>
126                             <execution>
127                                 <id>UNTESTED-JDK</id>
128                                 <goals>
129                                     <goal>echo</goal>
130                                 </goals>
131                                 <phase>test</phase>
132                                 <configuration>
133                                     <message>Running on JDK newer than 18, which is not supported. Skipping feature tests.</message>
134                                 </configuration>
135                             </execution>
136                         </executions>
137                     </plugin>
138                 </plugins>
139             </build>
140         </profile>
141     </profiles>
142 </project>