<?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.7.0</version>
  </parent>
  <groupId>org.eclipse.capra</groupId>
  <artifactId>org.eclipse.capra.p2</artifactId>
  <version>0.7.0</version>
  <packaging>eclipse-repository</packaging>
  <name>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>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
</project>
