blob: b847ba67c169f8341af4bed1a11618507478ae30 [file] [log] [blame]
<!--
- Copyright (c) 2010, 2011 SAP AG and others.
- All rights reserved. This program and the accompanying materials
- are made available under the terms of the Eclipse Public License v1.0
- which accompanies this distribution, and is available at
- http://www.eclipse.org/legal/epl-v10.html
-
- Contributors:
- SAP AG - initial API and implementation
-->
<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/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>
<parent>
<groupId>org.eclipse.tycho.extras</groupId>
<artifactId>tycho-extras</artifactId>
<version>1.3.0-SNAPSHOT</version>
</parent>
<artifactId>tycho-p2-extras-plugin</artifactId>
<packaging>maven-plugin</packaging>
<name>p2 Extras Plugin</name>
<properties>
<tycho-build-version>${project.version}</tycho-build-version>
</properties>
<dependencies>
<dependency>
<groupId>org.apache.maven.plugin-tools</groupId>
<artifactId>maven-plugin-annotations</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-p2-facade</artifactId>
</dependency>
<dependency>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-artifactcomparator</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-testing-harness</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<!-- workaround for 393663 -->
<groupId>org.eclipse.tycho</groupId>
<artifactId>tycho-bundles-external</artifactId>
<type>zip</type>
<scope>test</scope>
</dependency>
<!-- begin workaround for 393663 -->
<dependency>
<groupId>org.eclipse.tycho</groupId>
<artifactId>org.eclipse.tycho.p2.resolver.impl</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.eclipse.tycho</groupId>
<artifactId>org.eclipse.tycho.p2.maven.repository</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.eclipse.tycho</groupId>
<artifactId>org.eclipse.tycho.p2.tools.impl</artifactId>
<scope>test</scope>
</dependency>
<!-- end workaround for 393663 -->
<dependency>
<groupId>org.eclipse.tycho</groupId>
<artifactId>sisu-equinox-launching</artifactId>
</dependency>
<dependency>
<!--
Workaround 387848 and 348394.
Ideally, we want to be able to run unit/integration tests in three distinct environments
- on CI system, when tycho-core dependencies are resolved from remote repositories
- on dev machine, when tycho-core is installed in local repository or resolved from repositories
- from within m2e workspace, when tycho-core is resolved according to m2e workspace resolution rules
Due to a limitation in Maven core, it is not possible to force a Maven build to use
locally cached but not installed artifacts. This means that tests MUST be able to resolve tycho-core
artifacts remotely, although Maven will skip actual remote download if artifacts are already cached
locally.
The workaround for this limitation is two step
- this dependency gives maven-invoker has access to all classes required to perform artifact resolution
from remote repositories.
- new snapshots/releases <pluginRepository> in test pom.xml files gives test project access to
tycho-core artifacts
-->
<groupId>org.apache.maven</groupId>
<artifactId>apache-maven</artifactId>
<version>${maven-version}</version>
<classifier>bin</classifier>
<type>tar.gz</type>
<scope>provided</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-component-metadata</artifactId>
</plugin>
<plugin>
<groupId>org.sonatype.plugins</groupId>
<artifactId>maven-properties-plugin</artifactId>
<version>0.0.2</version>
<executions>
<execution>
<phase>process-test-resources</phase>
<goals>
<goal>filter-file</goal>
</goals>
<configuration>
<in>src/test/resources/baseTest.properties</in>
<outDir>target/test-classes/</outDir>
</configuration>
</execution>
</executions>
</plugin>
<!-- During the unit tests, the test project is copied to the target folder
and the publish mojo is executed on the project. The test project may also
be built directly from the command line. This configuration makes sure that
the target folder from a direct invocation is removed. Otherwise it may interfere
with the target folder created during the unit tests. -->
<plugin>
<artifactId>maven-clean-plugin</artifactId>
<configuration>
<filesets>
<fileset>
<directory>src/test/resources/</directory>
<includes>
<include>**/testProject/target/</include>
</includes>
</fileset>
</filesets>
</configuration>
</plugin>
</plugins>
</build>
<profiles>
<profile>
<id>its</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-invoker-plugin</artifactId>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>