<?xml version="1.0" encoding="UTF-8"?>
<!--
  ~ Copyright (c) 2010-2021 BSI Business Systems Integration AG.
  ~ 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
  ~ https://www.eclipse.org/legal/epl-v10.html
  ~
  ~ Contributors:
  ~     BSI Business Systems Integration 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 https://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <parent>
    <groupId>org.eclipse.scout.sdk</groupId>
    <artifactId>org.eclipse.scout.sdk.p2</artifactId>
    <version>11.0.14</version>
    <relativePath>../org.eclipse.scout.sdk.p2</relativePath>
  </parent>

  <artifactId>org.eclipse.scout.sdk-repository</artifactId>
  <packaging>eclipse-repository</packaging>

  <name>Eclipse Scout SDK Repository</name>

  <properties>
    <p2repo-zip-path>${project.build.directory}/org.eclipse.scout.sdk-repository-${project.version}.zip</p2repo-zip-path>
  </properties>

  <profiles>
    <profile>
      <id>eclipse-stage</id>

      <properties>
        <buildType>N</buildType>
        <stageTargetDir>nightly/11.0</stageTargetDir>
        <buildId>${buildType}${master_build_timestamp}</buildId>
        <buildsToKeep>3</buildsToKeep>
      </properties>

      <build>
        <plugins>
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-enforcer-plugin</artifactId>
            <configuration>
              <rules>
                <requirePluginVersions>
                  <unCheckedPluginList>org.eclipse.scout.sdk:updatesite-maven-plugin</unCheckedPluginList>
                </requirePluginVersions>
              </rules>
            </configuration>
          </plugin>
          <plugin>
            <groupId>org.eclipse.scout.sdk</groupId>
            <artifactId>updatesite-maven-plugin</artifactId>
            <version>${project.version}</version>
            <configuration>
              <updatesiteDir>${buildId}</updatesiteDir>
              <compositeDir>${stageTargetDir}</compositeDir>
              <maxSize>${buildsToKeep}</maxSize>
            </configuration>
            <executions>
              <execution>
                <id>stage</id>
                <phase>install</phase>
                <goals>
                  <goal>stage</goal>
                  <goal>publish</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles>
</project>
