<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<parent>
		<groupId>org.eclipse.papyrus.bpmn</groupId>
		<artifactId>org.eclipse.papyrus.bpmn.releng</artifactId>
		<version>0.9.0-SNAPSHOT</version>
	</parent>
	<artifactId>org.eclipse.papyrus.bpmn.p2</artifactId>
	<packaging>eclipse-repository</packaging>

	<build>
		<plugins>
			<plugin>
				<!-- https://github.com/jbosstools/jbosstools-maven-plugins/wiki -->
				<groupId>org.jboss.tools.tycho-plugins</groupId>
				<artifactId>repository-utils</artifactId>
				<executions>
					<execution>
						<id>generate-facade</id>
						<phase>package</phase>
						<goals>
							<goal>generate-repository-facade</goal>
						</goals>
						<configuration>
							<symbols>
								<update.site.name>BPMN</update.site.name>
								<update.site.description>Use this URL in Eclipse to install	BPMN 1.4</update.site.description>
								<update.site.version>${project.version}</update.site.version>
								<project.website>https://www.eclipse.org/papyrus/components/bpmn</project.website>
								<project.issues>${project.issueManagement.url}</project.issues>
								<eclipse.target>${eclipse.targetrelease}</eclipse.target>
								<update.site.nightly>https://hudson.eclipse.org/papyrus/view/BPMN/job/papyrus-bpmn-oxygen/ws/releng/org.eclipse.papyrus.bpmn.p2/target/repository/</update.site.nightly>
							</symbols>
							<associateSites>
								<site>http://download.eclipse.org/modeling/mdt/papyrus/updates/releases/oxygen</site>
							</associateSites>
							<siteTemplateFolder>siteTemplate</siteTemplateFolder>
							<p2StatsUrl>http://download.eclipse.org/stats</p2StatsUrl>
						</configuration>
					</execution>
				</executions>
				<dependencies>
					<dependency>
						<groupId>org.eclipse.tycho</groupId>
						<artifactId>tycho-packaging-plugin</artifactId>
						<version>${tycho-version}</version>
					</dependency>
				</dependencies>
			</plugin>
			<plugin>
				<groupId>org.apache.maven.plugins</groupId>
				<artifactId>maven-deploy-plugin</artifactId>
				<configuration>
					<skip>true</skip>
				</configuration>
			</plugin>
		</plugins>
	</build>
</project>