<?xml version="1.0" encoding="UTF-8"?>
<!--
   Copyright (C) 2017 École Polytechnique de Montréal

   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
-->

<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>org.eclipse.tracecompass.incubator.common-parent</artifactId>
    <groupId>org.eclipse.tracecompass.incubator</groupId>
    <version>0.0.1-SNAPSHOT</version>
  </parent>

  <artifactId>org.eclipse.tracecompass.incubator.releng-site</artifactId>
  <name>Trace Compass Incubator Repository</name>
  <packaging>eclipse-repository</packaging>

<build>
  <plugins>
    <plugin>
      <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>
        </execution>
      </executions>
      <configuration>
        <removeDefaultCategory>true</removeDefaultCategory>
        <skipWebContentGeneration>true</skipWebContentGeneration>
        <skipBuildInfo>true</skipBuildInfo>
      </configuration>
    </plugin>
  </plugins>
</build>

<profiles>
  <profile>
    <id>deploy-update-site</id>
    <properties>
      <siteDestination>/home/data/httpd/download.eclipse.org/tracecompass.incubator/master/repository/</siteDestination>
    </properties>
    <build>
      <plugins>
        <plugin>
          <artifactId>maven-antrun-plugin</artifactId>
          <version>1.8</version>
          <executions>
            <execution>
              <id>deploy</id>
              <phase>install</phase>
                <goals>
                  <goal>run</goal>
                </goals>
                <configuration>
                <target>
                  <delete includeemptydirs="false">
                    <fileset
                      dir="${siteDestination}">
                      <include name="**" />
                    </fileset>
                  </delete>
                  <copy includeemptydirs="false"
                    todir="${siteDestination}">
                    <fileset dir="target/repository">
                      <include name="**" />
                    </fileset>
                  </copy>
                </target>
              </configuration>
            </execution>
          </executions>
        </plugin>
      </plugins>
    </build>
  </profile>
</profiles>

</project>
