<?xml version="1.0" encoding="UTF-8" standalone="no"?><!-- Copyright (c) 
	2016, 2019 Chalmers | University of Gothenburg, rt-labs and others. All rights 
	reserved. This program and the accompanying materials are made available 
	under the terms of the Eclipse Public License v2.0 which accompanies this 
	distribution, and is available at http://www.eclipse.org/legal/epl-v20.html 
	SPDX-License-Identifier: EPL-2.0 Contributors: Chalmers | University of Gothenburg 
	and rt-labs - initial API and implementation and/or initial documentation 
	Chalmers | University of Gothenburg - additional features, updated API --><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>
		<relativePath>../../pom.xml</relativePath>
		<groupId>org.eclipse.capra</groupId>
		<artifactId>parent</artifactId>
		<version>0.8.1-SNAPSHOT</version>
	</parent>
	<groupId>org.eclipse.capra</groupId>
	<artifactId>org.eclipse.capra.p2</artifactId>
	<version>0.8.1-SNAPSHOT</version>
	<packaging>eclipse-repository</packaging>
	<name>Eclipse Capra Update Site</name>

	<pluginRepositories>
		<pluginRepository>
			<id>jboss-public-repository-group</id>
			<name>JBoss Public Repository Group</name>
			<url>http://repository.jboss.org/nexus/content/groups/public/</url>
		</pluginRepository>

		<pluginRepository>
			<id>jboss-snapshots-repository</id>
			<name>JBoss Snapshots Repository</name>
			<url>https://repository.jboss.org/nexus/content/repositories/snapshots/</url>
		</pluginRepository>
	</pluginRepositories>

	<build>
		<plugins>
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-p2-repository-plugin</artifactId>
				<version>${tycho-version}</version>
			</plugin>

			<!-- Generate HTML version of update site -->
			<!-- Also add additional repositories. Note that this information could 
				be entered in category.xml but Tycho ignores it currently. See https://bugs.eclipse.org/bugs/show_bug.cgi?id=453708 -->
			<plugin>
				<groupId>org.jboss.tools.tycho-plugins</groupId>
				<artifactId>repository-utils</artifactId>
				<version>${org.jboss.tools.tycho-plugins.version}</version>

				<executions>
					<execution>
						<id>generate-facade</id>
						<phase>package</phase>

						<goals>
							<goal>generate-repository-facade</goal>
						</goals>

						<configuration>
							<siteTemplateFolder>siteTemplate</siteTemplateFolder>

							<symbols>
								<update.site.name>${project.parent.name}</update.site.name>
							</symbols>

							<!-- this adds references to repositories of dependencies to the update site's content.xml -->
							<associateSites>
								<site>http://hallvard.github.io/plantuml/</site> <!-- PlantUML -->
								<site>http://featureide.cs.ovgu.de/update/v3/</site> <!-- FeatureIDE -->
								<site>http://download.eclipse.org/sphinx/releases/0.8.x/</site> <!-- Sphinx for ProR -->
								<site>http://download.eclipse.org/rmf/updates/releases/0.13.0/</site> <!-- ProR for ReqIF -->
								<site>http://download.eclipse.org/tools/gef/gef4/updates/releases/</site> <!-- GEF4 for Zest -->
							</associateSites>
						</configuration>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>
</project>
