blob: 7cb57809f9b4944fd8834a1912fe4e4dc3dbbe6a [file] [log] [blame]
<?xml version="1.0" encoding="UTF-8"?>
<!-- - Copyright (c) 2014 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>
<artifactId>tycho</artifactId>
<groupId>org.eclipse.tycho</groupId>
<version>1.5.0</version>
</parent>
<artifactId>tycho-releng</artifactId>
<packaging>pom</packaging>
<name>Tycho Releng</name>
<description>Helper POM for deploying Eclipse artifacts which Tycho needs to get from a Maven repository</description>
<!-- To update the Eclipse artifacts needed by the Maven class-loader side
of Tycho:
1. If needed, update the source p2 repository below
2. Update Equinox and JDT/APT versions in the parent POM: ${equinoxVersion[Maven]}, ${jdtVersion[Maven]},
${jdtAptVersion[Maven]}
3a. For deploying snapshots (to be used by Tycho
snapshots) - In tycho-releng/, execute mvn clean deploy -DforgeSnapshotUrl=https://oss.sonatype.org/content/repositories/snapshots
-DforgeSnapshotId=forge-snapshots
3b. For deploying releases (to be used
by Tycho releases):
- Prerequisite: you need to have GPG properly set up,
see https://docs.sonatype.org/display/Repository/How+To+Generate+PGP+Signatures+With+Maven
- Make sure that ${jdtVersionMaven}, ${jdtAptVersionMaven}, ${equinoxVersionMaven}
in the parent POM don't have a '-SNAPSHOT' suffix - In tycho-releng/, execute
mvn clean deploy -Pdeploy-releases -DforgeReleaseUrl=https://oss.sonatype.org/service/local/staging/deploy/maven2/ -DforgeReleaseId=forge-releases -Dgpg.passphrase=<your_passphrase>
- Close
and release staged artifacts into repository 'Releases' -->
<properties>
<downloaded>${project.build.directory}/repository/plugins/</downloaded>
<!-- don't deploy this helper pom -->
<maven.deploy.skip>true</maven.deploy.skip>
</properties>
<build>
<resources>
<resource>
<directory>src/main/resources</directory>
<filtering>true</filtering>
<includes>
<include>**/*.pom</include>
</includes>
</resource>
<resource>
<directory>src/main/resources</directory>
<filtering>false</filtering>
<excludes>
<exclude>**/*.pom</exclude>
</excludes>
</resource>
</resources>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-resources-plugin</artifactId>
<executions>
<execution>
<id>filter-resources</id>
<goals>
<goal>resources</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.eclipse.tycho.extras</groupId>
<artifactId>tycho-p2-extras-plugin</artifactId>
<version>${tychoBootstrapVersion}</version>
<!--
<executions>
<execution>
<phase>validate</phase>
<goals>
<goal>mirror</goal>
</goals>
</execution>
</executions>
-->
<configuration>
<source>
<repository>
<url>http://download.eclipse.org/releases/photon/201806271001/</url>
<layout>p2</layout>
</repository>
</source>
<ius>
<iu>
<id>org.eclipse.osgi</id>
<version>${equinoxVersion}</version>
</iu>
<iu>
<id>org.eclipse.osgi.source</id>
<version>${equinoxVersion}</version>
</iu>
<iu>
<id>org.eclipse.osgi.compatibility.state</id>
<version>${equinoxCompatVersion}</version>
</iu>
<iu>
<id>org.eclipse.osgi.compatibility.state.source</id>
<version>${equinoxCompatVersion}</version>
</iu>
</ius>
<followStrictOnly>true</followStrictOnly>
</configuration>
</plugin>
<plugin>
<groupId>com.googlecode.maven-download-plugin</groupId>
<artifactId>download-maven-plugin</artifactId>
<version>1.4.1</version>
<executions>
<execution>
<id>download-ecj</id>
<phase>validate</phase>
<goals>
<goal>wget</goal>
</goals>
<configuration>
<url>http://download.eclipse.org/eclipse/downloads/drops4/${ecjVersion}/ecj-${ecjVersion}.jar</url>
<outputDirectory>${project.build.directory}</outputDirectory>
</configuration>
</execution>
<execution>
<id>download-ecj-sources</id>
<phase>validate</phase>
<goals>
<goal>wget</goal>
</goals>
<configuration>
<url>http://download.eclipse.org/eclipse/downloads/drops4/${ecjVersion}/ecjsrc-${ecjVersion}.jar</url>
<outputDirectory>${project.build.directory}</outputDirectory>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
<pluginManagement>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<version>2.8.1</version>
<configuration>
<url>${forgeSnapshotUrl}</url>
<repositoryId>${forgeSnapshotId}</repositoryId>
</configuration>
</plugin>
</plugins>
</pluginManagement>
</build>
<profiles>
<profile>
<id>deploy-ecj-snapshot</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<executions>
<execution>
<id>deploy-ecj</id>
<phase>deploy</phase>
<goals>
<goal>deploy-file</goal>
</goals>
<configuration>
<file>${project.build.directory}/ecj-${ecjVersion}.jar</file>
<sources>${project.build.directory}/ecjsrc-${ecjVersion}.jar</sources>
<pomFile>${project.build.outputDirectory}/org.eclipse.jdt.ecj.pom</pomFile>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>deploy-equinox-snapshots</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-deploy-plugin</artifactId>
<executions>
<execution>
<id>deploy-equinox</id>
<phase>deploy</phase>
<goals>
<goal>deploy-file</goal>
</goals>
<configuration>
<file>${downloaded}/org.eclipse.osgi_${equinoxVersion}.jar</file>
<sources>${downloaded}/org.eclipse.osgi.source_${equinoxVersion}.jar</sources>
<pomFile>${project.build.outputDirectory}/org.eclipse.osgi.pom</pomFile>
</configuration>
</execution>
<execution>
<id>deploy-equinox-compat</id>
<phase>deploy</phase>
<goals>
<goal>deploy-file</goal>
</goals>
<configuration>
<file>${downloaded}/org.eclipse.osgi.compatibility.state_${equinoxCompatVersion}.jar</file>
<sources>${downloaded}/org.eclipse.osgi.compatibility.state.source_${equinoxCompatVersion}.jar</sources>
<pomFile>${project.build.outputDirectory}/org.eclipse.osgi.compatibility.state.pom</pomFile>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>deploy-releases</id>
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-gpg-plugin</artifactId>
<version>1.4</version>
<configuration>
<repositoryId>${forgeReleaseId}</repositoryId>
<url>${forgeReleaseUrl}</url>
</configuration>
<executions>
<execution>
<id>deploy-ecj</id>
<phase>deploy</phase>
<goals>
<goal>sign-and-deploy-file</goal>
</goals>
<configuration>
<file>${project.build.directory}/ecj-${ecjVersion}.jar</file>
<sources>${project.build.directory}/ecjsrc-${ecjVersion}.jar</sources>
<pomFile>${project.build.outputDirectory}/org.eclipse.jdt.ecj.pom</pomFile>
</configuration>
</execution>
<execution>
<id>deploy-equinox</id>
<phase>deploy</phase>
<goals>
<goal>sign-and-deploy-file</goal>
</goals>
<configuration>
<file>${downloaded}/org.eclipse.osgi_${equinoxVersion}.jar</file>
<sources>${downloaded}/org.eclipse.osgi.source_${equinoxVersion}.jar</sources>
<pomFile>${project.build.outputDirectory}/org.eclipse.osgi.pom</pomFile>
</configuration>
</execution>
<execution>
<id>deploy-equinox-compat</id>
<phase>deploy</phase>
<goals>
<goal>sign-and-deploy-file</goal>
</goals>
<configuration>
<file>${downloaded}/org.eclipse.osgi.compatibility.state_${equinoxCompatVersion}.jar</file>
<sources>${downloaded}/org.eclipse.osgi.compatibility.state.source_${equinoxCompatVersion}.jar</sources>
<pomFile>${project.build.outputDirectory}/org.eclipse.osgi.compatibility.state.pom</pomFile>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>