<?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.ebr</groupId>
  <artifactId>ebr-maven-plugins-parent</artifactId>
  <version>1.1.0</version>
  <packaging>pom</packaging>

  <name>Eclipse Bundle Recipe Maven Plugins</name>
  <description>Eclipse Bundle Recipe Maven plugins for simplfying and automating working with Eclipse Bundle Recipies.
  </description>
  <url>http://www.eclipse.org/ebr</url>

  <licenses>
    <license>
      <name>Eclipse Public License</name>
      <url>https://www.eclipse.org/legal/epl-2.0/</url>
      <distribution>repo</distribution>
    </license>
  </licenses>

  <organization>
    <name>Eclipse Foundation</name>
    <url>http://www.eclipse.org/</url>
  </organization>

  <issueManagement>
    <system>Bugzilla</system>
    <url>https://bugs.eclipse.org/bugs/buglist.cgi?product=EBR</url>
  </issueManagement>

  <scm>
    <connection>scm:git:github.com:eclipse/ebr.git</connection>
    <developerConnection>scm:git:github.com:eclipse/ebr.git</developerConnection>
    <url>https://github.com/eclipse/ebr/</url>
  </scm>

  <developers>
    <developer>
      <name>Gunnar Wagenknecht</name>
    </developer>
    <developer>
      <name>Roland Grunberg</name>
    </developer>
  </developers>

  <distributionManagement>
    <repository>
      <id>repo.eclipse.org</id>
      <name>EBR Eclipse Maven Repository - Releases</name>
      <url>https://repo.eclipse.org/content/repositories/ebr-releases/</url>
    </repository>
    <snapshotRepository>
      <id>repo.eclipse.org</id>
      <name>EBR Eclipse Maven Repository - Snapshots</name>
      <url>https://repo.eclipse.org/content/repositories/ebr-snapshots/</url>
    </snapshotRepository>
  </distributionManagement>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <minimum-maven-version>3.6.0</minimum-maven-version>
    <maven-plugin-plugin-version>3.6.0</maven-plugin-plugin-version>
    <takari-maven-plugin-testing-version>2.9.2</takari-maven-plugin-testing-version>
    <tycho-version>1.3.0</tycho-version>
    <apache-httpclient-version>4.5.7</apache-httpclient-version>
  </properties>

  <prerequisites>
    <maven>${minimum-maven-version}</maven>
  </prerequisites>

  <modules>
    <module>ebr-maven-shared</module>
    <module>ebr-tycho-extras-plugin</module>
    <module>ebr-maven-plugin</module>
    <module>ebr-maven-plugin-its</module>
  </modules>

  <repositories>
    <repository>
      <id>tycho-snapshots</id>
      <url>https://repo.eclipse.org/content/repositories/tycho-snapshots/</url>
    </repository>
  </repositories>

  <build>
    <plugins>
      <plugin>
        <artifactId>maven-compiler-plugin</artifactId>
        <configuration>
          <source>1.8</source>
          <target>1.8</target>
        </configuration>
      </plugin>
      <plugin>
        <groupId>io.takari.maven.plugins</groupId>
        <artifactId>takari-lifecycle-plugin</artifactId>
        <extensions>true</extensions>
        <configuration>
          <proc>none</proc>
          <source>1.8</source>
          <target>1.8</target>
          <compilerId>jdt</compilerId>
          <encoding>UTF-8</encoding>
        </configuration>
      </plugin>
      <plugin>
        <!-- This maven-enforcer-plugin configuration to actually break the build if run with older maven. prerequisites
          section is kept for now as even if it doesn't break the build, it is used by other plugins like versions-maven-plugin which
          check and warn for using plugins with older than they require Maven version. -->
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-enforcer-plugin</artifactId>
        <executions>
          <execution>
            <id>enforce-maven</id>
            <goals>
              <goal>enforce</goal>
            </goals>
            <configuration>
              <rules>
                <requireMavenVersion>
                  <version>[${minimum-maven-version},)</version>
                </requireMavenVersion>
              </rules>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>com.github.spotbugs</groupId>
        <artifactId>spotbugs-maven-plugin</artifactId>
        <configuration>
          <threshold>High</threshold>
        </configuration>
        <executions>
          <execution>
            <goals>
              <goal>check</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-plugin-plugin</artifactId>
        <configuration>
          <requirements>
            <maven>${minimum-maven-version}</maven>
          </requirements>
        </configuration>
      </plugin>
    </plugins>

    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-plugin-plugin</artifactId>
          <version>${maven-plugin-plugin-version}</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-enforcer-plugin</artifactId>
          <version>1.4.1</version>
        </plugin>
        <plugin>
          <groupId>io.takari.maven.plugins</groupId>
          <artifactId>takari-lifecycle-plugin</artifactId>
          <version>1.13.9</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>3.8.0</version>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>2.22.0</version>
        </plugin>
        <plugin>
          <groupId>com.github.spotbugs</groupId>
          <artifactId>spotbugs-maven-plugin</artifactId>
          <version>3.1.11</version>
        </plugin>
      </plugins>
    </pluginManagement>


  </build>

  <dependencyManagement>
    <dependencies>
      <!-- managed provided dependencies -->
      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-core</artifactId>
        <version>${minimum-maven-version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-plugin-api</artifactId>
        <version>${minimum-maven-version}</version>
        <scope>provided</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.maven.plugin-tools</groupId>
        <artifactId>maven-plugin-annotations</artifactId>
        <version>${maven-plugin-plugin-version}</version>
        <scope>provided</scope>
      </dependency>

      <!-- managed regular dependencies -->
      <dependency>
        <groupId>org.eclipse.tycho</groupId>
        <artifactId>tycho-core</artifactId>
        <version>${tycho-version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpclient</artifactId>
        <version>${apache-httpclient-version}</version>
      </dependency>
      <dependency>
        <groupId>org.apache.httpcomponents</groupId>
        <artifactId>httpmime</artifactId>
        <version>${apache-httpclient-version}</version>
      </dependency>
      <dependency>
        <groupId>com.google.guava</groupId>
        <artifactId>guava</artifactId>
        <version>27.0.1-jre</version>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-lang3</artifactId>
        <version>3.8.1</version>
      </dependency>
      <dependency>
        <groupId>org.apache.commons</groupId>
        <artifactId>commons-text</artifactId>
        <version>1.6</version>
      </dependency>
      <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>2.6</version>
      </dependency>
      <dependency>
        <artifactId>ebr-maven-shared</artifactId>
        <groupId>org.eclipse.ebr</groupId>
        <version>${project.version}</version>
      </dependency>

      <!-- managed test dependencies -->
      <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>4.12</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>org.apache.maven</groupId>
        <artifactId>maven-compat</artifactId>
        <version>${minimum-maven-version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>io.takari.maven.plugins</groupId>
        <artifactId>takari-plugin-testing</artifactId>
        <version>${takari-maven-plugin-testing-version}</version>
        <scope>test</scope>
      </dependency>
      <dependency>
        <groupId>io.takari.maven.plugins</groupId>
        <artifactId>takari-plugin-integration-testing</artifactId>
        <version>${takari-maven-plugin-testing-version}</version>
        <type>pom</type>
        <scope>test</scope>
      </dependency>
    </dependencies>
  </dependencyManagement>
</project>