<?xml version="1.0" encoding="UTF-8"?>
<!--
  Copyright (c) 2018 THALES GLOBAL SERVICES.
  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

  Contributors:
       Thales - 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/maven-v4_0_0.xsd">
	
	<modelVersion>4.0.0</modelVersion>
	<parent>
		<groupId>org.eclipse.egf</groupId>
		<artifactId>egf_root</artifactId>
		<version>1.6.0-SNAPSHOT</version>
		<relativePath>../..</relativePath>
	</parent>
	
	<artifactId>egf_product</artifactId>
	
	<packaging>eclipse-repository</packaging>
	
	<build>
		<plugins>
			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-p2-director-plugin</artifactId>
				<version>${tycho-version}</version>
				<executions>
					<execution>
						<!-- install the product using the p2 director -->
						<id>materialize-products</id>
						<goals>
							<goal>materialize-products</goal>
						</goals>
					</execution>
					<execution>
						<!-- create zip file with the installed product -->
						<id>archive-products</id>
						<goals>
							<goal>archive-products</goal>
						</goals>
						<configuration>
							<products>
								<product>
									<id>org.eclipse.egf.product</id>
									<archiveFileName>EGF_product</archiveFileName>
								</product>
							</products>
							</configuration>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>
</project>