<?xml version="1.0" encoding="UTF-8"?>
<!--
  Copyright (c) 2007, 2019 THALES GLOBAL SERVICES
  This program and the accompanying materials
  are made available under the terms of the Eclipse Public License 2.0
  which accompanies this distribution, and is available at
  https://www.eclipse.org/legal/epl-2.0/

  SPDX-License-Identifier: EPL-2.0

  Contributors:
       Obeo - 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>

  <groupId>org.eclipse.sirius</groupId>
  <artifactId>sirius-parent</artifactId>
  <version>6.3.1-SNAPSHOT</version>
  <packaging>pom</packaging>

  <name>Sirius Parent</name>

  <licenses>
    <license>
      <name>Eclipse Public License 2.0</name>
      <comments>
      All rights reserved.

      This program and the accompanying materials are made available under the
      terms of the Eclipse Public License 2.0 which accompanies this
      distribution, and is available at
      http://www.eclipse.org/legal/epl-v10.htm
    </comments>
    </license>
  </licenses>

  <properties>
    <tycho-version>1.6.0</tycho-version>
    <tycho-extras-version>1.6.0</tycho-extras-version>
    <platform-version-name>photon</platform-version-name>
    <!-- This property is used to customize the maven build folder. Used for parallel builds -->
    <build-folder-name>target</build-folder-name>
    <target-platform-path>.</target-platform-path>
    <tycho.scmUrl>scm:git:http://git.eclipse.org/gitroot/sirius/org.eclipse.sirius.git</tycho.scmUrl>
    <tests.skipLongTests>false</tests.skipLongTests>
    <tests.skipUnreliableTests>false</tests.skipUnreliableTests>
    <tests.timeout>0</tests.timeout>
    <tests.vmargs.mac />
    <tests.junit.skip>true</tests.junit.skip>
    <tests.swtbot.skip>true</tests.swtbot.skip>
    <tests.junit.include />
    <tests.swtbot.include />
    <tests.swtbot-sequence.include />
    <tests.ignoreFailures>true</tests.ignoreFailures>
    <!-- Sonar properties -->
    <jacoco-version>0.8.5</jacoco-version>
    <sonar-version>3.3.0.603</sonar-version>
    <sonar.language>java</sonar.language>
    <sonar.skipPackageDesign>true</sonar.skipPackageDesign>
    <sonar.skipDesign>true</sonar.skipDesign>
    <sonar.jacoco.reportPath>${project.basedir}/../../packaging/org.eclipse.sirius.parent/target/jacoco.exec</sonar.jacoco.reportPath>
    <sonar.jacoco.itReportPath>${project.basedir}/../../packaging/org.eclipse.sirius.parent/target/jacoco-it.exec</sonar.jacoco.itReportPath>
    <sonar.java.source>8</sonar.java.source>
    <sonar.exclusions>src-gen/**/*</sonar.exclusions>
    <sonar.coverage.exclusions>${project.basedir}/../../plugins/org.eclipse.sirius.sample*/**/*.java,${project.basedir}/../../plugins/org.eclipse.sirius.tests*/**/*.java,</sonar.coverage.exclusions>
  </properties>

<!--Add specific repositories, pluginRepositories and dependencies for Acceleo3 compilation. See http://wiki.eclipse.org/Acceleo/Maven for more details. -->
  <repositories>
    <repository>
      <id>Eclipse - Acceleo Release</id>
      <url>https://repo.eclipse.org/content/repositories/acceleo-releases</url>
    </repository>
  </repositories>

  <pluginRepositories>
    <pluginRepository>
      <id>Eclipse - Acceleo Release</id>
      <url>https://repo.eclipse.org/content/repositories/acceleo-releases</url>
    </pluginRepository>
  </pluginRepositories>

  <dependencies>
    <dependency>
      <groupId>org.eclipse.acceleo</groupId>
      <artifactId>org.eclipse.acceleo.maven</artifactId>
      <version>3.5.2</version>
    </dependency>
  </dependencies>

  <modules>
    <!-- All modules are contributed by specific profiles, see below. -->
  </modules>

  <build>
    <sourceDirectory>src</sourceDirectory>

    <plugins>
      <plugin>
        <groupId>org.eclipse.tycho</groupId>
        <artifactId>tycho-maven-plugin</artifactId>
        <version>${tycho-version}</version>
        <extensions>true</extensions>
      </plugin>
      <plugin>
        <groupId>org.eclipse.tycho</groupId>
        <artifactId>target-platform-configuration</artifactId>
        <version>${tycho-version}</version>
        <configuration>
          <includePackedArtifacts>true</includePackedArtifacts>
          <resolver>p2</resolver>
          <dependency-resolution>
            <optionalDependencies>ignore</optionalDependencies>
          </dependency-resolution>
          <target>
            <artifact>
              <groupId>org.eclipse.sirius</groupId>
              <artifactId>sirius-parent</artifactId>
              <version>6.3.1-SNAPSHOT</version>
              <classifier>../../releng/org.eclipse.sirius.targets/${target-platform-path}/sirius_${platform-version-name}</classifier>
            </artifact>
          </target>
        </configuration>
      </plugin>
      <plugin>
        <groupId>org.eclipse.tycho</groupId>
        <artifactId>tycho-source-plugin</artifactId>
        <version>${tycho-version}</version>
        <configuration>
          <archive>
            <addMavenDescriptor>false</addMavenDescriptor>
          </archive>
        </configuration>
        <executions>
          <execution>
            <id>plugin-source</id>
            <goals>
              <goal>plugin-source</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.eclipse.tycho</groupId>
        <artifactId>tycho-packaging-plugin</artifactId>
        <version>${tycho-version}</version>
        <configuration>
          <sourceReferences>
            <generate>true</generate>
          </sourceReferences>
        </configuration>
        <dependencies>
          <dependency>
            <groupId>org.eclipse.tycho.extras</groupId>
            <artifactId>tycho-sourceref-jgit</artifactId>
            <version>${tycho-extras-version}</version>
          </dependency>
        </dependencies>
      </plugin>
      <plugin>
        <groupId>org.eclipse.tycho.extras</groupId>
        <artifactId>tycho-source-feature-plugin</artifactId>
        <version>${tycho-extras-version}</version>
        <configuration>
          <archive>
            <addMavenDescriptor>false</addMavenDescriptor>
          </archive>
        </configuration>
        <executions>
          <execution>
            <id>source-feature</id>
            <phase>package</phase>
            <goals>
              <goal>source-feature</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.jacoco</groupId>
        <artifactId>jacoco-maven-plugin</artifactId>
        <version>${jacoco-version}</version>
        <executions>
          <!-- Prepares a variable, jacoco.agent.ut.arg, that contains the info 
               to be passed to the JVM hosting the code being tested. -->
          <execution>
            <id>agent-for-ut</id>
            <goals>
              <goal>prepare-agent</goal>
            </goals>
            <configuration>
              <append>true</append>
              <destFile>${sonar.jacoco.reportPath}</destFile>
              <propertyName>jacoco.agent.ut.arg</propertyName>
            </configuration>
          </execution>
          <!-- Prepares a variable, jacoco.agent.it.arg, that contains the info 
               to be passed to the JVM hosting the code being tested. -->
          <execution>
            <id>agent-for-it</id>
            <goals>
              <goal>prepare-agent-integration</goal>
            </goals>
            <configuration>
              <append>true</append>
              <destFile>${sonar.jacoco.itReportPath}</destFile>
              <propertyName>jacoco.agent.it.arg</propertyName>
            </configuration>
          </execution>
          <execution>
            <id>jacoco-site</id>
            <phase>verify</phase>
            <goals>
              <goal>report</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
    </plugins>
    <pluginManagement>
      <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>
              <environment>
                <os>win32</os>
                <ws>win32</ws>
                <arch>x86_64</arch>
              </environment>
              <environment>
                <os>macosx</os>
                <ws>cocoa</ws>
                <arch>x86_64</arch>
              </environment>
            </environments>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.eclipse.tycho</groupId>
          <artifactId>tycho-compiler-plugin</artifactId>
          <version>${tycho-version}</version>
          <configuration>
            <encoding>UTF-8</encoding>
            <useProjectSettings>false</useProjectSettings>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-resources-plugin</artifactId>
          <version>2.4.1</version>
          <configuration>
            <encoding>ISO-8859-1</encoding>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-antrun-plugin</artifactId>
          <version>1.3</version>
        </plugin>
        <!-- Exclude pom.xml and pom.properties from generated archive (see http://maven.apache.org/shared/maven-archiver/) -->
        <plugin>
          <groupId>org.eclipse.tycho</groupId>
          <artifactId>tycho-packaging-plugin</artifactId>
          <version>${tycho-version}</version>
          <configuration>
            <archive>
              <addMavenDescriptor>false</addMavenDescriptor>
            </archive>
          </configuration>
        </plugin>
        <plugin>
          <groupId>org.eclipse.tycho</groupId>
          <artifactId>tycho-p2-plugin</artifactId>
          <version>${tycho-extras-version}</version>
          <executions>
            <execution>
              <id>p2-metadata</id>
              <goals>
                <goal>p2-metadata</goal>
              </goals>
              <phase>package</phase>
            </execution>
          </executions>
          <configuration>
            <defaultP2Metadata>false</defaultP2Metadata>
          </configuration>
        </plugin>        
            <plugin>
                <groupId>org.eclipse.acceleo</groupId>
                <artifactId>org.eclipse.acceleo.maven</artifactId>
                <version>3.5.2</version>
                <executions>
                    <execution>
                        <id>acceleo-compile</id>
                        <phase>compile</phase>
                        <goals>
                            <goal>acceleo-compile</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </pluginManagement>
  </build>

  <profiles>
    <profile>
      <id>headless</id>
      <activation>
        <activeByDefault>true</activeByDefault>
      </activation>
      <build>
          <directory>${build-folder-name}</directory>
      </build>
      <properties>
        <target-platform-path>headless</target-platform-path>
      </properties>
      <modules>
        <!-- plugins -->
        <module>../../plugins/org.eclipse.sirius.ext.base</module>
        <module>../../plugins/org.eclipse.sirius.ext.e3</module>
        <module>../../plugins/org.eclipse.sirius.ext.emf</module>
        <module>../../plugins/org.eclipse.sirius.ext.emf.edit</module>
        <module>../../plugins/org.eclipse.sirius.ext.emf.tx</module>
        <module>../../plugins/org.eclipse.sirius.ext.gmf.notation</module>
        <module>../../plugins/org.eclipse.sirius.ext.ide</module>
        <module>../../plugins/org.eclipse.sirius</module>
        <module>../../plugins/org.eclipse.sirius.common</module>
        <module>../../plugins/org.eclipse.sirius.common.acceleo.aql</module>
        <module>../../plugins/org.eclipse.sirius.common.acceleo.mtl</module>
        <module>../../plugins/org.eclipse.sirius.common.interpreter</module>
        <module>../../plugins/org.eclipse.sirius.common.ocl</module>
        <module>../../plugins/org.eclipse.sirius.diagram</module>
        <module>../../plugins/org.eclipse.sirius.diagram.formatdata</module>
        <module>../../plugins/org.eclipse.sirius.ecore.extender</module>
        <module>../../plugins/org.eclipse.sirius.synchronizer</module>
        <module>../../plugins/org.eclipse.sirius.table</module>
        <module>../../plugins/org.eclipse.sirius.tree</module>
        <module>../../plugins/org.eclipse.sirius.workflow.model</module>

        <!-- features -->
        <module>../../packaging/org.eclipse.sirius.runtime</module>
        <module>../../packaging/org.eclipse.sirius.runtime.acceleo</module>
        <module>../../packaging/org.eclipse.sirius.runtime.aql</module>
        <module>../../packaging/org.eclipse.sirius.runtime.ocl</module>

        <!-- update sites -->
        <module>../../packaging/org.eclipse.sirius.headless.update</module>
      </modules>
    </profile>
    <profile>
      <id>headless-server</id>
      <activation>
        <activeByDefault>true</activeByDefault>
      </activation>
      <build>
          <directory>${build-folder-name}</directory>
      </build>
      <properties>
        <target-platform-path>headless</target-platform-path>
      </properties>
      <modules>
        <!-- plugins -->
        <module>../../plugins/org.eclipse.sirius.services.common</module>
        <module>../../plugins/org.eclipse.sirius.services.diagram</module>
        <module>../../plugins/org.eclipse.sirius.services.graphql.common</module>
        <module>../../plugins/org.eclipse.sirius.services.graphql.core</module>
        <module>../../plugins/org.eclipse.sirius.services.graphql.emf</module>
        <module>../../plugins/org.eclipse.sirius.services.graphql.workspace</module>
        <module>../../plugins/org.eclipse.sirius.services.graphql</module>
        <module>../../plugins/org.eclipse.sirius.server</module>
        <module>../../plugins/org.eclipse.sirius.server.application</module>
        <module>../../plugins/org.eclipse.sirius.server.backend</module>
        <module>../../plugins/org.eclipse.sirius.server.diagram</module>
        <!-- Disabled by default, see the README inside the plug-in for more details -->
        <!--
        <module>../../plugins/org.eclipse.sirius.server.diagram.sprotty</module>
        -->
        <module>../../plugins/org.eclipse.sirius.server.frontend</module>
        <module>../../plugins/org.eclipse.sirius.server.frontend.workflow</module>
        <module>../../plugins/org.eclipse.sirius.server.graphql</module>
        <module>../../plugins/org.eclipse.sirius.server.images</module>
        
        <!-- tests -->
        <module>../../plugins/org.eclipse.sirius.tests.server</module>
        <module>../../plugins/org.eclipse.sirius.tests.services.graphql</module>

        <!-- features -->
        <module>../../packaging/org.eclipse.sirius.server.feature</module>
        <module>../../packaging/org.eclipse.sirius.server.product.feature</module>

        <!-- update sites -->
        <module>../../packaging/org.eclipse.sirius.server.product</module>
      </modules>
    </profile>
    <profile>
      <id>full</id>
      <activation>
        <activeByDefault>true</activeByDefault>
      </activation>
      <build>
          <directory>${build-folder-name}</directory>
      </build>
      <properties>
        <target-platform-path>.</target-platform-path>
      </properties>
      <modules>
        <!-- plugins -->
        <module>../../plugins/org.eclipse.sirius.ext.draw2d</module>
        <module>../../plugins/org.eclipse.sirius.ext.e3.ui</module>
        <module>../../plugins/org.eclipse.sirius.ext.emf.ui</module>
        <module>../../plugins/org.eclipse.sirius.ext.gef</module>
        <module>../../plugins/org.eclipse.sirius.ext.gmf.runtime</module>
        <module>../../plugins/org.eclipse.sirius.ext.ide</module>
        <module>../../plugins/org.eclipse.sirius.ext.jface</module>
        <module>../../plugins/org.eclipse.sirius.ext.swt</module>
        <module>../../plugins/org.eclipse.sirius.common.acceleo.aql.ide</module>
        <module>../../plugins/org.eclipse.sirius.common.acceleo.mtl.ide</module>
        <module>../../plugins/org.eclipse.sirius.common.ui</module>
        <module>../../plugins/org.eclipse.sirius.common.ui.ext</module>
        <module>../../plugins/org.eclipse.sirius.common.xtext</module>
        <module>../../plugins/org.eclipse.sirius.diagram.elk</module>
        <module>../../plugins/org.eclipse.sirius.diagram.elk.debug</module>
        <module>../../plugins/org.eclipse.sirius.diagram.sequence.edit</module>
        <module>../../plugins/org.eclipse.sirius.diagram.sequence.ui</module>
        <module>../../plugins/org.eclipse.sirius.diagram.sequence</module>
        <module>../../plugins/org.eclipse.sirius.diagram.ui</module>
        <module>../../plugins/org.eclipse.sirius.diagram.ui.ext</module>
        <module>../../plugins/org.eclipse.sirius.doc</module>
        <module>../../plugins/org.eclipse.sirius.editor.diagram</module>
        <module>../../plugins/org.eclipse.sirius.editor.sequence</module>
        <module>../../plugins/org.eclipse.sirius.editor.table</module>
        <module>../../plugins/org.eclipse.sirius.editor.tree</module>
        <module>../../plugins/org.eclipse.sirius.editor.workflow</module>
        <module>../../plugins/org.eclipse.sirius.editor</module>
        <module>../../plugins/org.eclipse.sirius.eef.adapters</module>
        <module>../../plugins/org.eclipse.sirius.interpreter</module>
        <module>../../plugins/org.eclipse.sirius.table.ui</module>
        <module>../../plugins/org.eclipse.sirius.table.ui.ext</module>
        <module>../../plugins/org.eclipse.sirius.tree.ui</module>
        <module>../../plugins/org.eclipse.sirius.tree.ui.ext</module>
        <module>../../plugins/org.eclipse.sirius.ui</module>
        <module>../../plugins/org.eclipse.sirius.ui.ext</module>
        <module>../../plugins/org.eclipse.sirius.ui.editor</module>
        <module>../../plugins/org.eclipse.sirius.tests.junit.support</module>
        <module>../../plugins/org.eclipse.sirius.tests.swtbot.support</module>
        <module>../../plugins/org.eclipse.sirius.workflow.edit</module>

        <module>../../plugins/org.eclipse.sirius.samples.family/samples/org.eclipse.sirius.sample.basicfamily</module>
        <module>../../plugins/org.eclipse.sirius.samples.family/samples/org.eclipse.sirius.sample.basicfamily.edit</module>
        <module>../../plugins/org.eclipse.sirius.samples.family/samples/org.eclipse.sirius.sample.basicfamily.editor</module>
        <module>../../plugins/org.eclipse.sirius.samples.family/samples/org.eclipse.sirius.sample.basicfamily.design</module>
        <module>../../plugins/org.eclipse.sirius.samples.family</module>

        <module>../../plugins/org.eclipse.sirius.common.interpreter</module>
        <module>../../plugins/org.eclipse.sirius.common.interpreter.aql</module>
        <module>../../plugins/org.eclipse.sirius.properties</module>
        <module>../../plugins/org.eclipse.sirius.properties.edit</module>
        <module>../../plugins/org.eclipse.sirius.properties.ext.widgets.reference</module>
        <module>../../plugins/org.eclipse.sirius.properties.ext.widgets.reference.edit</module>
        <module>../../plugins/org.eclipse.sirius.properties.defaultrules</module>
        <module>../../plugins/org.eclipse.sirius.editor.properties</module>
        <module>../../plugins/org.eclipse.sirius.editor.properties.ext.widgets.reference</module>
        <module>../../plugins/org.eclipse.sirius.properties.core</module>
        <module>../../plugins/org.eclipse.sirius.ui.properties</module>
        <module>../../plugins/org.eclipse.sirius.ui.properties.ext.widgets.reference</module>
        <module>../../plugins/org.eclipse.sirius.sample.properties</module>
        <module>../../plugins/org.eclipse.sirius.sample.properties.checkbox</module>
        <module>../../plugins/org.eclipse.sirius.sample.properties.radio</module>
        <module>../../plugins/org.eclipse.sirius.sample.properties.textarea</module>
        <module>../../plugins/org.eclipse.sirius.tests.ui.properties</module>
        <module>../../plugins/org.eclipse.sirius.workflow.ui.page</module>
        <module>../../plugins/org.eclipse.sirius.server.ui.autostart</module>

        <!-- features -->
        <module>../../packaging/org.eclipse.sirius.aql</module>
        <module>../../packaging/org.eclipse.sirius.doc.feature</module>
        <module>../../packaging/org.eclipse.sirius.runtime.ide.eef</module>
        <module>../../packaging/org.eclipse.sirius.runtime.ide.ui.acceleo</module>
        <module>../../packaging/org.eclipse.sirius.runtime.ide.ui</module>
        <module>../../packaging/org.eclipse.sirius.runtime.ide.xtext</module>
        <module>../../packaging/org.eclipse.sirius.samples</module>
        <module>../../packaging/org.eclipse.sirius.specifier</module>
        <module>../../packaging/org.eclipse.sirius.specifier.ide.ui.acceleo</module>
        <module>../../packaging/org.eclipse.sirius.specifier.ide.ui.aql</module>
        <module>../../packaging/org.eclipse.sirius.specifier.ide.ui</module>
        <module>../../packaging/org.eclipse.sirius.tests.support</module>

        <module>../../packaging/org.eclipse.sirius.interpreter.feature</module>
        <module>../../packaging/org.eclipse.sirius.properties.feature</module>
        <module>../../packaging/org.eclipse.sirius.specifier.properties.feature</module>
        <module>../../packaging/org.eclipse.sirius.samples.properties.feature</module>
        <module>../../packaging/org.eclipse.sirius.workflow-feature</module>

        <module>../../packaging/org.eclipse.sirius.diagram.elk.feature</module>
        <module>../../packaging/org.eclipse.sirius.server.ui.autostart.feature</module>
        <module>../../packaging/org.eclipse.sirius.sample.basicfamily.feature</module>

        <!-- update sites -->
        <module>../../packaging/org.eclipse.sirius.update</module>
        <module>../../packaging/org.eclipse.sirius.sample.basicfamily.update</module>

        <!-- Test metamodels and modelers -->
        <module>../../plugins/org.eclipse.sirius.sample.ecore.design</module>
        <module>../../plugins/org.eclipse.sirius.sample.interactions</module>
        <module>../../plugins/org.eclipse.sirius.sample.interactions.design</module>
        <module>../../plugins/org.eclipse.sirius.sample.interactions.edit</module>
        <module>../../plugins/org.eclipse.sirius.sample.interactions.editor</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.benchmark</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.docbook</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.docbook.design</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.docbook.edit</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.docbook.editor</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.migration</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.migration.design</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.component</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.component.design</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.scxml</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.scxml.design</module>

        <module>../../plugins/org.eclipse.sirius.tests.sample.xtext.statemachine</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.xtext.statemachine.ui</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.xtext.statemachine.ide</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.xtext.statemachine.design</module>

        <module>../../plugins/org.eclipse.sirius.tests.junit</module>
        <module>../../plugins/org.eclipse.sirius.tests.junit.xtext</module>
        <module>../../plugins/org.eclipse.sirius.tests.tree</module>
        <module>../../plugins/org.eclipse.sirius.tests.swtbot</module>
        <module>../../plugins/org.eclipse.sirius.tests.rcptt.properties</module>
        <module>../../plugins/org.eclipse.sirius.tests.rcptt.properties.edit</module>
        <module>../../plugins/org.eclipse.sirius.tests.rcptt.properties.editor</module>
        <module>../../plugins/org.eclipse.sirius.tests.rcptt.properties.samples</module>

        <!-- features -->
        <module>../../packaging/org.eclipse.sirius.tests</module>
        <module>../../packaging/org.eclipse.sirius.tests.rcptt.feature</module>

        <!-- update sites -->
        <module>../../packaging/org.eclipse.sirius.tests.update</module>
    </modules>
  </profile>

    <profile>
      <id>capella</id>
      <!-- This profile is used in replacement of "full" profile when we want to launch test in the same environment as Capella. For example, in Capella, the "properties" plug-ins are not present.-->
      <activation>
        <activeByDefault>false</activeByDefault>
      </activation>
      <build>
          <directory>${build-folder-name}</directory>
      </build>
      <properties>
        <target-platform-path>capella</target-platform-path>
      </properties>
      <modules>
        <!-- plugins -->
        <module>../../plugins/org.eclipse.sirius.ext.draw2d</module>
        <module>../../plugins/org.eclipse.sirius.ext.e3.ui</module>
        <module>../../plugins/org.eclipse.sirius.ext.emf.ui</module>
        <module>../../plugins/org.eclipse.sirius.ext.gef</module>
        <module>../../plugins/org.eclipse.sirius.ext.gmf.runtime</module>
        <module>../../plugins/org.eclipse.sirius.ext.ide</module>
        <module>../../plugins/org.eclipse.sirius.ext.jface</module>
        <module>../../plugins/org.eclipse.sirius.ext.swt</module>
        <module>../../plugins/org.eclipse.sirius.common.acceleo.aql.ide</module>
        <module>../../plugins/org.eclipse.sirius.common.acceleo.mtl.ide</module>
        <module>../../plugins/org.eclipse.sirius.common.ui</module>
        <module>../../plugins/org.eclipse.sirius.common.ui.ext</module>
        <module>../../plugins/org.eclipse.sirius.common.xtext</module>
        <module>../../plugins/org.eclipse.sirius.diagram.elk</module>
        <module>../../plugins/org.eclipse.sirius.diagram.elk.debug</module>
        <module>../../plugins/org.eclipse.sirius.diagram.sequence.edit</module>
        <module>../../plugins/org.eclipse.sirius.diagram.sequence.ui</module>
        <module>../../plugins/org.eclipse.sirius.diagram.sequence</module>
        <module>../../plugins/org.eclipse.sirius.diagram.ui</module>
        <module>../../plugins/org.eclipse.sirius.diagram.ui.ext</module>
        <module>../../plugins/org.eclipse.sirius.doc</module>
        <module>../../plugins/org.eclipse.sirius.editor.diagram</module>
        <module>../../plugins/org.eclipse.sirius.editor.sequence</module>
        <module>../../plugins/org.eclipse.sirius.editor.table</module>
        <module>../../plugins/org.eclipse.sirius.editor.tree</module>
        <module>../../plugins/org.eclipse.sirius.editor</module>
        <module>../../plugins/org.eclipse.sirius.eef.adapters</module>
        <module>../../plugins/org.eclipse.sirius.interpreter</module>
        <module>../../plugins/org.eclipse.sirius.table.ui</module>
        <module>../../plugins/org.eclipse.sirius.table.ui.ext</module>
        <module>../../plugins/org.eclipse.sirius.tree.ui</module>
        <module>../../plugins/org.eclipse.sirius.tree.ui.ext</module>
        <module>../../plugins/org.eclipse.sirius.ui</module>
        <module>../../plugins/org.eclipse.sirius.ui.ext</module>
        <module>../../plugins/org.eclipse.sirius.ui.editor</module>
        <module>../../plugins/org.eclipse.sirius.tests.junit.support</module>
        <module>../../plugins/org.eclipse.sirius.tests.swtbot.support</module>

        <module>../../plugins/org.eclipse.sirius.samples.family/samples/org.eclipse.sirius.sample.basicfamily</module>
        <module>../../plugins/org.eclipse.sirius.samples.family/samples/org.eclipse.sirius.sample.basicfamily.edit</module>
        <module>../../plugins/org.eclipse.sirius.samples.family/samples/org.eclipse.sirius.sample.basicfamily.editor</module>
        <module>../../plugins/org.eclipse.sirius.samples.family/samples/org.eclipse.sirius.sample.basicfamily.design</module>
        <module>../../plugins/org.eclipse.sirius.samples.family</module>

        <module>../../plugins/org.eclipse.sirius.common.interpreter</module>
        <module>../../plugins/org.eclipse.sirius.common.interpreter.aql</module>

        <!-- features -->
        <module>../../packaging/org.eclipse.sirius.aql</module>
        <module>../../packaging/org.eclipse.sirius.doc.feature</module>
        <module>../../packaging/org.eclipse.sirius.runtime.ide.eef</module>
        <module>../../packaging/org.eclipse.sirius.runtime.ide.ui.acceleo</module>
        <module>../../packaging/org.eclipse.sirius.runtime.ide.ui</module>
        <module>../../packaging/org.eclipse.sirius.runtime.ide.xtext</module>
        <module>../../packaging/org.eclipse.sirius.samples</module>
        <module>../../packaging/org.eclipse.sirius.specifier.ide.ui.acceleo</module>
        <module>../../packaging/org.eclipse.sirius.specifier.ide.ui.aql</module>
        <module>../../packaging/org.eclipse.sirius.specifier.ide.ui</module>
        <module>../../packaging/org.eclipse.sirius.tests.support</module>
        <module>../../packaging/org.eclipse.sirius.interpreter.feature</module>
        <module>../../packaging/org.eclipse.sirius.diagram.elk.feature</module>
        <module>../../packaging/org.eclipse.sirius.sample.basicfamily.feature</module>

        <!-- Test metamodels and modelers -->
        <module>../../plugins/org.eclipse.sirius.sample.ecore.design</module>
        <module>../../plugins/org.eclipse.sirius.sample.interactions</module>
        <module>../../plugins/org.eclipse.sirius.sample.interactions.design</module>
        <module>../../plugins/org.eclipse.sirius.sample.interactions.edit</module>
        <module>../../plugins/org.eclipse.sirius.sample.interactions.editor</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.benchmark</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.docbook</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.docbook.design</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.docbook.edit</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.docbook.editor</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.migration</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.migration.design</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.component</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.component.design</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.scxml</module>
        <module>../../plugins/org.eclipse.sirius.tests.sample.scxml.design</module>
        <module>../../plugins/org.eclipse.sirius.tests.junit</module>
        <module>../../plugins/org.eclipse.sirius.tests.tree</module>
        <module>../../plugins/org.eclipse.sirius.tests.swtbot</module>
        <!-- features -->
        <module>../../packaging/org.eclipse.sirius.tests</module>

        <!-- update sites -->
        <module>../../packaging/org.eclipse.sirius.tests.update</module>
        <module>../../packaging/org.eclipse.sirius.sample.basicfamily.update</module>
     </modules>
    </profile>

    <profile>
      <id>rcptt</id>
      <activation>
        <activeByDefault>false</activeByDefault>
      </activation>
      <build>
          <directory>${build-folder-name}</directory>
      </build>
      <modules>
        <module>../../packaging/org.eclipse.sirius.tests.product</module>
      </modules>
    </profile>
    
    <profile>
      <id>sign</id>
      <activation>
        <property>
          <name>BUILD_SIGN</name>
          <value>true</value>
        </property>
      </activation>
      <build>
        <directory>${build-folder-name}</directory>
        <plugins>
          <plugin>
            <groupId>org.eclipse.tycho.extras</groupId>
            <artifactId>tycho-pack200a-plugin</artifactId>
            <version>${tycho-extras-version}</version>
            <executions>
              <execution>
                <id>pack200-normalize</id>
                <phase>package</phase>
                <goals>
                  <goal>normalize</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <groupId>org.eclipse.cbi.maven.plugins</groupId>
            <artifactId>eclipse-jarsigner-plugin</artifactId>
            <version>1.1.5</version>
            <executions>
              <execution>
                <id>sign</id>
                <phase>package</phase>
                <goals>
                  <goal>sign</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
          <plugin>
            <groupId>org.eclipse.tycho.extras</groupId>
            <artifactId>tycho-pack200b-plugin</artifactId>
            <version>${tycho-extras-version}</version>
            <executions>
              <execution>
                <id>pack200-pack</id>
                <phase>package</phase>
                <goals>
                  <goal>pack</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>

      <pluginRepositories>
        <pluginRepository>
          <id>cbi</id>
          <url>https://repo.eclipse.org/content/repositories/cbi-releases/</url>
          <releases>
            <enabled>true</enabled>
          </releases>
          <snapshots>
            <enabled>false</enabled>
          </snapshots>
        </pluginRepository>
      </pluginRepositories>
    </profile>
     <profile>
         <id>junit</id>
         <activation>
             <activeByDefault>false</activeByDefault>
         </activation>
         <properties>
             <tests.junit.skip>false</tests.junit.skip>
             <tests.timeout>${tests.timeout.junit}</tests.timeout>
             <tests.junit.include>org/eclipse/sirius/tests/suite/AllSiriusTestSuite.java, org/eclipse/sirius/tests/suite/tree/AllSiriusTestSuite.java, org/eclipse/sirius/tests/ui/properties/internal/AllTests.java, org/eclipse/sirius/tests/xtext/suite/AllSiriusXtextTestSuite.java</tests.junit.include>
             <tests.vmargs>${jacoco.agent.ut.arg} ${tests.vmargs.mac} -Xmx1024m -XX:+HeapDumpOnOutOfMemoryError</tests.vmargs>
         </properties>
     </profile>
     <profile>
         <id>gerrit-junit</id>
         <activation>
             <activeByDefault>false</activeByDefault>
         </activation>
         <build>
             <directory>${build-folder-name}</directory>
         </build>
         <properties>
             <tests.junit.skip>false</tests.junit.skip>
             <tests.timeout>${tests.timeout.junit}</tests.timeout>
             <tests.junit.include>org/eclipse/sirius/tests/suite/GerritJUnitSuite.java, org/eclipse/sirius/tests/suite/tree/AllSiriusTestSuite.java, org/eclipse/sirius/tests/ui/properties/internal/AllTests.java, org/eclipse/sirius/tests/xtext/suite/AllSiriusXtextTestSuite.java</tests.junit.include>
             <tests.vmargs>${jacoco.agent.ut.arg} ${tests.vmargs.mac} -Xmx1024m -XX:+HeapDumpOnOutOfMemoryError</tests.vmargs>
             <tests.ignoreFailures>false</tests.ignoreFailures>
         </properties>
     </profile>
     <profile>
         <id>swtbot</id>
         <activation>
             <activeByDefault>false</activeByDefault>
         </activation>
         <build>
             <directory>${build-folder-name}</directory>
         </build>
         <properties>
             <tests.swtbot.skip>false</tests.swtbot.skip>
             <tests.timeout>${tests.timeout.swtbot}</tests.timeout>
             <tests.swtbot.include>org/eclipse/sirius/tests/swtbot/suite/AllTestSuite.java</tests.swtbot.include>
             <tests.vmargs>${jacoco.agent.ut.arg} ${tests.vmargs.mac} -Xmx2048m -XX:+HeapDumpOnOutOfMemoryError</tests.vmargs>
         </properties>
     </profile>
     <profile>
         <id>swtbot-part1</id>
         <activation>
             <activeByDefault>false</activeByDefault>
         </activation>
         <build>
             <directory>${build-folder-name}</directory>
         </build>
         <properties>
             <tests.swtbot.skip>false</tests.swtbot.skip>
             <tests.timeout>${tests.timeout.swtbot}</tests.timeout>
             <tests.swtbot.include>org/eclipse/sirius/tests/swtbot/suite/SWTBotPart1Suite.java</tests.swtbot.include>
             <tests.vmargs>${jacoco.agent.ut.arg} ${tests.vmargs.mac} -Xmx2048m -XX:+HeapDumpOnOutOfMemoryError</tests.vmargs>
         </properties>
     </profile>
     <profile>
         <id>swtbot-part2</id>
         <activation>
             <activeByDefault>false</activeByDefault>
         </activation>
         <build>
             <directory>${build-folder-name}</directory>
         </build>
         <properties>
             <tests.swtbot.skip>false</tests.swtbot.skip>
             <tests.timeout>${tests.timeout.swtbot}</tests.timeout>
             <tests.swtbot.include>org/eclipse/sirius/tests/swtbot/suite/SWTBotPart2Suite.java</tests.swtbot.include>
             <tests.vmargs>${jacoco.agent.ut.arg} ${tests.vmargs.mac} -Xmx2048m -XX:+HeapDumpOnOutOfMemoryError</tests.vmargs>
         </properties>
     </profile>
     <profile>
         <id>gerrit-swtbot</id>
         <activation>
             <activeByDefault>false</activeByDefault>
         </activation>
         <build>
             <directory>${build-folder-name}</directory>
         </build>
         <properties>
             <tests.swtbot.skip>false</tests.swtbot.skip>
             <tests.timeout>${tests.timeout.swtbot}</tests.timeout>
             <tests.swtbot.include>org/eclipse/sirius/tests/swtbot/suite/GerritSWTBotSuite.java</tests.swtbot.include>
             <tests.vmargs>${jacoco.agent.ut.arg} ${tests.vmargs.mac} -Xmx2048m -XX:+HeapDumpOnOutOfMemoryError</tests.vmargs>
             <tests.ignoreFailures>false</tests.ignoreFailures>
         </properties>
     </profile>
     <profile>
         <id>swtbot-sequence</id>
         <activation>
             <activeByDefault>false</activeByDefault>
         </activation>
         <build>
             <directory>${build-folder-name}</directory>
         </build>
         <properties>
             <tests.swtbot.skip>false</tests.swtbot.skip>
             <tests.timeout>${tests.timeout.swtbot-sequence}</tests.timeout>
             <tests.swtbot-sequence.include>org/eclipse/sirius/tests/swtbot/suite/SequenceSwtBotTestSuite.java</tests.swtbot-sequence.include>
             <tests.vmargs>${jacoco.agent.ut.arg} ${tests.vmargs.mac} -Xmx2048m -XX:+HeapDumpOnOutOfMemoryError</tests.vmargs>
         </properties>
     </profile>
     <profile>
         <id>gerrit-swtbot-sequence</id>
         <activation>
             <activeByDefault>false</activeByDefault>
         </activation>
         <build>
             <directory>${build-folder-name}</directory>
         </build>
         <properties>
             <tests.swtbot.skip>false</tests.swtbot.skip>
             <tests.timeout>${tests.timeout.swtbot-sequence}</tests.timeout>
             <tests.swtbot-sequence.include>org/eclipse/sirius/tests/swtbot/suite/GerritSequenceSWTBotSuite.java</tests.swtbot-sequence.include>
             <tests.vmargs>${jacoco.agent.ut.arg} ${tests.vmargs.mac} -Xmx2048m -XX:+HeapDumpOnOutOfMemoryError</tests.vmargs>
             <tests.ignoreFailures>false</tests.ignoreFailures>
         </properties>
     </profile>
 </profiles>
</project>
