<?xml version="1.0" encoding="UTF-8"?>
<!--
  Copyright (c) 2014-2017 Eike Stepper (Loehne, Germany) 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

  Contributors:
    Eike Stepper - 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 http://maven.apache.org/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>

  <groupId>org.eclipse.oomph</groupId>
  <artifactId>org.eclipse.oomph.setup.installer.product</artifactId>
  <version>1.20.0-SNAPSHOT</version>
  <packaging>eclipse-repository</packaging>

  <parent>
    <groupId>org.eclipse.oomph</groupId>
    <artifactId>org.eclipse.oomph.parent</artifactId>
    <version>1.0.0-SNAPSHOT</version>
	<relativePath>../../releng/org.eclipse.oomph.parent</relativePath>
  </parent>

  <profiles>
    <profile>
      <id>env-win64</id>
      <activation>
        <property>
          <name>env</name>
          <value>win64</value>
        </property>
      </activation>
      <build>
        <plugins>
          <plugin>
            <groupId>org.eclipse.tycho</groupId>
            <artifactId>target-platform-configuration</artifactId>
            <version>${tycho-version}</version>
            <configuration>
              <environments>
                <environment>
                  <os>win32</os>
                  <ws>win32</ws>
                  <arch>x86_64</arch>
                </environment>
              </environments>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>env-mac64</id>
      <activation>
        <property>
          <name>env</name>
          <value>mac64</value>
        </property>
      </activation>
      <build>
        <plugins>
          <plugin>
            <groupId>org.eclipse.tycho</groupId>
            <artifactId>target-platform-configuration</artifactId>
            <version>${tycho-version}</version>
            <configuration>
              <environments>
                <environment>
                  <os>macosx</os>
                  <ws>cocoa</ws>
                  <arch>x86_64</arch>
                </environment>
              </environments>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>env-linux64</id>
      <activation>
        <property>
          <name>env</name>
          <value>linux64</value>
        </property>
      </activation>
      <build>
        <plugins>
          <plugin>
            <groupId>org.eclipse.tycho</groupId>
            <artifactId>target-platform-configuration</artifactId>
            <version>${tycho-version}</version>
            <configuration>
              <environments>
                <environment>
                  <os>linux</os>
                  <ws>gtk</ws>
                  <arch>x86_64</arch>
                </environment>
              </environments>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
    <profile>
      <id>env-linuxaarch64</id>
      <activation>
        <property>
          <name>env</name>
          <value>linuxaarch64</value>
        </property>
      </activation>
      <build>
        <plugins>
          <plugin>
            <groupId>org.eclipse.tycho</groupId>
            <artifactId>target-platform-configuration</artifactId>
            <version>${tycho-version}</version>
            <configuration>
              <environments>
                <environment>
                  <os>linux</os>
                  <ws>gtk</ws>
                  <arch>aarch64</arch>
                </environment>
              </environments>
            </configuration>
          </plugin>
        </plugins>
      </build>
    </profile>
 
    <profile>
      <id>eclipse-sign</id>
      <activation>
        <property>
          <name>PACK_AND_SIGN</name>
          <value>true</value>
        </property>
      </activation>
      <build>
        <plugins>
          <plugin>
            <groupId>org.eclipse.cbi.maven.plugins</groupId>
            <artifactId>eclipse-winsigner-plugin</artifactId>
            <version>${jarsigner-version}</version>
            <executions>
              <execution>
                <id>installer-executables</id>
                <goals>
                  <goal>sign</goal>
                </goals>
                <phase>package</phase>
                <configuration>
                  <fileNames>
                    <fileName>eclipse-instc.exe</fileName>
                    <fileName>eclipse-inst.exe</fileName>
                  </fileNames>
                </configuration>
              </execution>
              <execution>
                <id>installer-product-executables</id>
                <goals>
                  <goal>sign</goal>
                </goals>
                <phase>post-integration-test</phase>
                <configuration>
                  <baseSearchDir>${project.build.directory}/repackaged-products/</baseSearchDir>
                  <fileNames>
                    <fileName>eclipse-inst-win64.exe</fileName>
                    <fileName>eclipse-inst-restricted-win64.exe</fileName>
                    <fileName>eclipse-inst-jre-win64.exe</fileName>
                    <fileName>eclipse-inst-jre-restricted-win64.exe</fileName>
                  </fileNames>
                </configuration>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <groupId>org.eclipse.cbi.maven.plugins</groupId>
            <artifactId>eclipse-macsigner-plugin</artifactId>
            <version>${jarsigner-version}</version>
            <executions>
              <execution>
                <goals>
                  <goal>sign</goal>
                </goals>
                <phase>package</phase>
                <configuration>
                  <fileNames>
                    <fileName>Eclipse Installer.app</fileName>
                  </fileNames>
                  <timeoutMillis>300000</timeoutMillis> <!-- 5 min -->
                  <entitlements>${project.basedir}/../../releng/org.eclipse.oomph.releng/hudson/installer.entitlements</entitlements>
                  <signerUrl>http://172.30.206.146:8282/macosx-signing-service/1.3.0-SNAPSHOT</signerUrl>
                </configuration>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <groupId>org.eclipse.cbi.maven.plugins</groupId>
            <artifactId>eclipse-dmg-packager</artifactId>
            <version>${jarsigner-version}</version>
            <executions>
              <execution>
                <id>product</id>
                <goals>
                  <goal>package-dmg</goal>
                </goals>
                <phase>integration-test</phase>
                <configuration>
                  <source>${project.build.directory}/repackaged-products/eclipse-inst-mac64.tar.gz</source>
                  <timeoutMillis>600000</timeoutMillis> <!-- 10 min -->
                  <sign>true</sign>
                </configuration>
              </execution>
              <execution>
                <id>product-with-jre</id>
                <goals>
                  <goal>package-dmg</goal>
                </goals>
                <phase>integration-test</phase>
                <configuration>
                  <source>${project.build.directory}/repackaged-products/eclipse-inst-jre-mac64.tar.gz</source>
                  <timeoutMillis>600000</timeoutMillis> <!-- 10 min -->
                  <sign>true</sign>
                </configuration>
              </execution>
              <execution>
                <id>product-restricted</id>
                <goals>
                  <goal>package-dmg</goal>
                </goals>
                <phase>integration-test</phase>
                <configuration>
                  <source>${project.build.directory}/repackaged-products/eclipse-inst-restricted-mac64.tar.gz</source>
                  <timeoutMillis>600000</timeoutMillis> <!-- 10 min -->
                  <sign>true</sign>
                </configuration>
              </execution>
              <execution>
                <id>product-with-jre-restricted</id>
                <goals>
                  <goal>package-dmg</goal>
                </goals>
                <phase>integration-test</phase>
                <configuration>
                  <source>${project.build.directory}/repackaged-products/eclipse-inst-jre-restricted-mac64.tar.gz</source>
                  <timeoutMillis>600000</timeoutMillis> <!-- 10 min -->
                  <sign>true</sign>
                </configuration>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>

  </profiles>

  <build>
    <plugins>
      <plugin>
         <groupId>org.eclipse.tycho</groupId>
         <artifactId>tycho-p2-repository-plugin</artifactId>
         <version>${tycho-version}</version>
         <configuration>
            <includeAllDependencies>true</includeAllDependencies>
            <repositoryName>Eclipse Installer Build ${build.id}</repositoryName>
            <skipArchive>true</skipArchive>
         </configuration>
      </plugin>

      <plugin>
        <groupId>org.eclipse.tycho</groupId>
        <artifactId>tycho-p2-director-plugin</artifactId>
        <version>${tycho-version}</version>
        <executions>
          <execution>
            <id>materialize-products</id>
            <goals>
              <goal>materialize-products</goal>
            </goals>
            <configuration>
              <profile>DefaultProfile</profile>
              <products>
                <product>
                  <id>org.eclipse.oomph.setup.installer.product</id>
                  <rootFolders>
                    <macosx>Eclipse Installer.app</macosx>
                    <linux>eclipse-installer</linux>
                  </rootFolders>
                </product>
                <product>
                  <id>org.eclipse.oomph.setup.installer.product.with-jre</id>
                  <attachId>with-jre</attachId>
                  <rootFolders>
                    <macosx>Eclipse Installer.app</macosx>
                    <linux>eclipse-installer</linux>
                  </rootFolders>
                </product>
                <product>
                  <id>org.eclipse.oomph.setup.installer.product.restricted</id>
                  <attachId>restricted</attachId>
                  <rootFolders>
                    <macosx>Eclipse Installer.app</macosx>
                    <linux>eclipse-installer</linux>
                  </rootFolders>
                </product>
                <product>
                  <id>org.eclipse.oomph.setup.installer.product.with-jre.restricted</id>
                  <attachId>with-jre-restricted</attachId>
                  <rootFolders>
                    <macosx>Eclipse Installer.app</macosx>
                    <linux>eclipse-installer</linux>
                  </rootFolders>
                </product>
              </products>
            </configuration>
          </execution>

          <execution>
            <id>archive-products</id>
            <phase>pre-integration-test</phase>
            <goals>
              <goal>archive-products</goal>
            </goals>
            <configuration>
              <products>
                <product>
                  <id>org.eclipse.oomph.setup.installer.product</id>
                </product>
                <product>
                  <id>org.eclipse.oomph.setup.installer.product.with-jre</id>
                  <attachId>with-jre</attachId>
                </product>
                <product>
                  <id>org.eclipse.oomph.setup.installer.product.restricted</id>
                  <attachId>restricted</attachId>
                </product>
                <product>
                  <id>org.eclipse.oomph.setup.installer.product.with-jre.restricted</id>
                  <attachId>with-jre-restricted</attachId>
                </product>
              </products>
              <formats>
                <win32>zip</win32>
                <linux>tar.gz</linux>
                <macosx>tar.gz</macosx>
              </formats>
            </configuration>
          </execution>
        </executions>
      </plugin>

      <plugin>
        <groupId>org.codehaus.mojo</groupId>
         <artifactId>exec-maven-plugin</artifactId>
         <version>3.0.0</version>
         <executions>
           <execution>
             <id>generate-products</id>
             <phase>generate-sources</phase>
             <goals>
               <goal>exec</goal>
             </goals>
             <configuration>
               <useMavenLogger>true</useMavenLogger>
               <executable>bash</executable>
               <commandlineArgs>generate-products.sh</commandlineArgs>
               <environmentVariables>
                 <BUILD_TYPE>${BUILD_TYPE}</BUILD_TYPE>
                 <RESTRICTED_VERSION>${RESTRICTED_VERSION}</RESTRICTED_VERSION>
               </environmentVariables>
             </configuration>
           </execution>

           <execution>
             <id>modify-products</id>
             <phase>package</phase>
             <goals>
               <goal>exec</goal>
             </goals>
             <configuration>
               <useMavenLogger>true</useMavenLogger>
               <executable>bash</executable>
               <commandlineArgs>modify-products.sh</commandlineArgs>
               <environmentVariables>
                 <BUILD_TYPE>${BUILD_TYPE}</BUILD_TYPE>
                 <RESTRICTED_VERSION>${RESTRICTED_VERSION}</RESTRICTED_VERSION>
               </environmentVariables>
             </configuration>
           </execution>

           <execution>
             <id>repackage-products</id>
             <phase>integration-test</phase>
             <goals>
               <goal>exec</goal>
             </goals>
             <configuration>
               <useMavenLogger>true</useMavenLogger>
               <executable>bash</executable>
               <commandlineArgs>repackage-products.sh</commandlineArgs>
               <environmentVariables>
                 <BUILD_TYPE>${BUILD_TYPE}</BUILD_TYPE>
                 <RESTRICTED_VERSION>${RESTRICTED_VERSION}</RESTRICTED_VERSION>
               </environmentVariables>
             </configuration>
           </execution>
         </executions>
      </plugin>

    </plugins>
  </build>
</project>
