<?xml version="1.0" encoding="UTF-8"?>
<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.app4mc.migration</groupId>
	<artifactId>parent</artifactId>
	<version>2.0.0</version>

	<packaging>pom</packaging>

	<name>APP4MC Migration Component</name>
	<description>APP4MC AMALTHEA Model migration</description>
	<url>https://projects.eclipse.org/projects/automotive.app4mc</url>
    
    <licenses>
        <license>
            <name>Eclipse Public License - v 2.0</name>
            <url>https://www.eclipse.org/legal/epl-2.0/</url>
        </license>
    </licenses>

	<developers>
    	<developer>
			<name>Harald Mackamul</name>
			<email>harald.mackamul@de.bosch.com</email>
		</developer>
    	<developer>
			<name>Dirk Fauth</name>
			<email>dirk.fauth@de.bosch.com</email>
		</developer>
    	<developer>
			<name>Zakir Hussain Meer</name>
			<email>ZakirHussain.Meer@de.bosch.com</email>
		</developer>
	</developers>
  
    <scm>
        <connection>scm:git:git://git.eclipse.org/gitroot/app4mc/org.eclipse.app4mc.addon.migration.git</connection>
        <developerConnection>scm:git:https://git.eclipse.org/r/app4mc/org.eclipse.app4mc.addon.migration.git</developerConnection>
        <url>https://git.eclipse.org/c/app4mc/org.eclipse.app4mc.addon.migration.git/</url>
    </scm>

	<properties>
		<app4mc.version>${project.version}</app4mc.version>
		<app4mc.baseline>1.2.0</app4mc.baseline>

		<tycho.version>2.3.0</tycho.version>

		<build-helper.version>1.9.1</build-helper.version>
		<org.jboss.tools.tycho-plugins.version>2.2.0</org.jboss.tools.tycho-plugins.version>

		<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
		<project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>
		<maven.build.timestamp.format>yyyyMMdd-HHmmss</maven.build.timestamp.format>

		<jacoco.version>0.8.5</jacoco.version>
		<sonar.coverage.jacoco.xmlReportPaths>${project.basedir}/../../releng/org.eclipse.app4mc.converters.p2repo/target/site/jacoco-aggregate/jacoco.xml</sonar.coverage.jacoco.xmlReportPaths>
		<sonar.surefire.reportsPath>../../tests/${project.artifactId}.tests/target/surefire-reports/</sonar.surefire.reportsPath>
		<sonar.java.source>8</sonar.java.source>
		<!-- coverage exclusions -->
		<sonar.coverage.exclusions>**/*.tests/**/*.java</sonar.coverage.exclusions>
		<!-- duplication exclusion -->
		<sonar.cpd.exclusions>**/*.tests/**/*.java</sonar.cpd.exclusions>
	</properties>

	<pluginRepositories>

		<pluginRepository>
			<id>jboss-public-repository-group</id>
			<name>JBoss Public Repository Group</name>
			<url>https://repository.jboss.org/nexus/content/groups/public/</url>
		</pluginRepository>

		<pluginRepository>
			<id>jboss-snapshots-repository</id>
			<name>JBoss Snapshots Repository</name>
			<url>https://repository.jboss.org/nexus/content/repositories/snapshots/</url>
		</pluginRepository>

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



	<!-- Common plugins and features contained in the open source distribution -->
	<modules>

		<module>plugins</module>
		<module>tests</module>
		<module>features</module>
		<module>releng</module>

	</modules>


	<build>
		<pluginManagement>
			<plugins>
				<plugin>
					<groupId>org.eclipse.tycho.extras</groupId>
					<artifactId>tycho-pack200a-plugin</artifactId>
					<version>${tycho.version}</version>
					<executions>
						<execution>
							<id>pack200-normalize</id>
							<goals>
								<goal>normalize</goal>
							</goals>
							<phase>package</phase>
						</execution>
					</executions>
				</plugin>
				<plugin>
					<groupId>org.eclipse.cbi.maven.plugins</groupId>
					<artifactId>eclipse-jarsigner-plugin</artifactId>
					<version>1.3.1</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.version}</version>
					<executions>
						<execution>
							<id>pack200-pack</id>
							<goals>
								<goal>pack</goal>
							</goals>
							<phase>package</phase>
						</execution>
					</executions>
				</plugin>

				<plugin>
					<groupId>org.eclipse.tycho</groupId>
					<artifactId>tycho-packaging-plugin</artifactId>
					<version>${tycho.version}</version>

					<dependencies>
						<dependency>
							<groupId>org.eclipse.tycho.extras</groupId>
							<artifactId>tycho-buildtimestamp-jgit</artifactId>
							<version>${tycho.version}</version>
						</dependency>
					</dependencies>
				</plugin>

				<plugin>
					<groupId>org.eclipse.tycho</groupId>
					<artifactId>tycho-p2-plugin</artifactId>
					<version>${tycho.version}</version>

					<configuration>
						<baselineReplace>none</baselineReplace>
						<baselineRepositories>
							<repository>
								<url>https://download.eclipse.org/app4mc/updatesites/releases/${app4mc.baseline}/</url>
							</repository>
						</baselineRepositories>
					</configuration>
				</plugin>

				<plugin>
					<groupId>org.eclipse.tycho</groupId>
					<artifactId>tycho-p2-director-plugin</artifactId>
					<version>${tycho.version}</version>
				</plugin>

				<plugin>
					<groupId>org.jacoco</groupId>
					<artifactId>jacoco-maven-plugin</artifactId>
					<version>${jacoco.version}</version>
				</plugin>
				
				<plugin> 
				  <groupId>org.apache.maven.plugins</groupId>
				  <artifactId>maven-deploy-plugin</artifactId>
				  <version>2.8.2</version>
				</plugin>
			</plugins>
		</pluginManagement>

		<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>
						<environment>
							<os>linux</os>
							<ws>gtk</ws>
							<arch>x86_64</arch>
						</environment>
						<environment>
							<os>macosx</os>
							<ws>cocoa</ws>
							<arch>x86_64</arch>
						</environment>
					</environments>

					<target>
						<artifact>
							<groupId>org.eclipse.app4mc.migration</groupId>
							<artifactId>org.eclipse.app4mc.converters.target</artifactId>
							<version>${app4mc.version}</version>
						</artifact>
					</target>
					<targetDefinitionIncludeSource>honor</targetDefinitionIncludeSource>
					
					<dependency-resolution>
						<extraRequirements>
							<requirement>
								<type>eclipse-plugin</type>
								<id>javax.annotation</id>
								<versionRange>0.0.0</versionRange>
							</requirement>
						</extraRequirements>
					</dependency-resolution>
				</configuration>
			</plugin>

			<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>tycho-source-plugin</artifactId>
				<version>${tycho.version}</version>

				<executions>
					<execution>
						<id>plugin-source</id>
						<goals>
							<goal>plugin-source</goal>
						</goals>
					</execution>
				</executions>
			</plugin>

			<plugin>
				<groupId>org.eclipse.tycho</groupId>
				<artifactId>tycho-surefire-plugin</artifactId>
				<version>${tycho.version}</version>

				<configuration>
					<includes>
						<forkMode>never</forkMode>
						<include>**/*Test.java</include>
						<include>**/*Tests.java</include>
					</includes>
				</configuration>
			</plugin>
		</plugins>
	</build>

	<profiles>
		<profile>
			<id>sonar</id>
			<build>
				<plugins>
					<plugin>
						<groupId>org.jacoco</groupId>
						<artifactId>jacoco-maven-plugin</artifactId>

						<configuration>
							<sessionId>${project.artifactId}</sessionId>
						</configuration>

						<executions>
							<execution>
								<goals>
									<goal>prepare-agent</goal>
								</goals>
							</execution>
						</executions>
					</plugin>
				</plugins>
			</build>
		</profile>
		
		<profile>
			<id>sign</id>
			<build>
				<plugins>
					<plugin>
						<groupId>org.eclipse.tycho.extras</groupId>
						<artifactId>tycho-pack200a-plugin</artifactId>
						<version>${tycho.version}</version>
						<executions>
							<execution>
								<id>pack200-normalize</id>
								<goals>
									<goal>normalize</goal>
								</goals>
								<phase>package</phase>
							</execution>
						</executions>
					</plugin>

					<plugin>
						<groupId>org.eclipse.cbi.maven.plugins</groupId>
						<artifactId>eclipse-jarsigner-plugin</artifactId>
						<version>1.3.1</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.version}</version>
						<executions>
							<execution>
								<id>pack200-pack</id>
								<goals>
									<goal>pack</goal>
								</goals>
								<phase>package</phase>
							</execution>
						</executions>
					</plugin>

					<!-- Then, alter p2-metadata to make the .pack.gz artifact visible from other modules -->
					<plugin>
						<groupId>org.eclipse.tycho</groupId>
						<artifactId>tycho-p2-plugin</artifactId>
						<version>${tycho.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>
				</plugins>
			</build>
		</profile>
		
        <profile>
          <id>skip-deploy-eclipse-feature</id>
          <activation>
            <file>
              <exists>feature.xml</exists>
            </file>
          </activation>
          <properties>
            <maven.deploy.skip>true</maven.deploy.skip>
          </properties>
        </profile>
        <profile>
          <id>skip-deploy-eclipse-test</id>
          <activation>
            <file>
              <exists>no_deploy.txt</exists>
            </file>
          </activation>
          <properties>
            <maven.deploy.skip>true</maven.deploy.skip>
          </properties>
        </profile>
        <profile>
          <id>skip-deploy-eclipse-target</id>
          <activation>
            <file>
              <exists>org.eclipse.app4mc.converters.target.target</exists>
            </file>
          </activation>
          <properties>
            <maven.deploy.skip>true</maven.deploy.skip>
          </properties>
        </profile>
        <profile>
          <id>skip-deploy-eclipse-product</id>
          <activation>
            <file>
              <exists>headless.product</exists>
            </file>
          </activation>
          <properties>
            <maven.deploy.skip>true</maven.deploy.skip>
          </properties>
        </profile>
        <profile>
          <id>skip-deploy-eclipse-updatesite</id>
          <activation>
            <file>
              <exists>category.xml</exists>
            </file>
          </activation>
          <properties>
            <maven.deploy.skip>true</maven.deploy.skip>
          </properties>
        </profile>
        <profile>
          <id>skip-deploy-connector-pom</id>
          <activation>
            <file>
              <exists>.polyglot.pom.tycho</exists>
            </file>
          </activation>
          <properties>
            <maven.deploy.skip>true</maven.deploy.skip>
          </properties>
        </profile>

		
		<profile>
		  <id>maven-publish</id>
		 
		  <distributionManagement>
		    <snapshotRepository>
		      <id>ossrh</id>
		      <url>https://oss.sonatype.org/content/repositories/snapshots</url>
		    </snapshotRepository>
		    <repository>
		      <id>ossrh</id>
		      <url>https://oss.sonatype.org/service/local/staging/deploy/maven2/</url>
		    </repository>
		  </distributionManagement>
		 
		  <build>
		    <plugins>
		      <plugin>
		        <groupId>org.apache.maven.plugins</groupId>
		        <artifactId>maven-gpg-plugin</artifactId>
		        <version>1.6</version>
		        <executions>
		          <execution>
		            <id>sign-artifacts</id>
		            <phase>verify</phase>
		            <goals>
		              <goal>sign</goal>
		            </goals>
		            <configuration>
		              <gpgArguments>
		                <arg>--pinentry-mode</arg>
		                <arg>loopback</arg>
		              </gpgArguments>
		            </configuration>
		          </execution>
		        </executions>
		      </plugin>
		    </plugins>
		  </build>
		</profile>
	</profiles>
</project>