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

  <!-- We use SonaType for publishing artefacts. Parent POM makes things easier here. -->
  <parent>
    <groupId>org.sonatype.oss</groupId>
    <artifactId>oss-parent</artifactId>
    <version>9</version>
  </parent>

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

  <!-- Project info. -->
  <groupId>com.carrotsearch.randomizedtesting</groupId>
  <artifactId>randomizedtesting-parent</artifactId>
  <version>2.1.6</version>
  <packaging>pom</packaging>

  <name>RandomizedTesting Parent POM</name>
  <url>http://labs.carrotsearch.com</url>
  <description>Foundation classes and rules for applying the principles of Randomized Testing.</description>
  <inceptionYear>2011</inceptionYear>

  <organization>
    <name>Carrot Search s.c.</name>
    <url>http://carrotsearch.com</url>
  </organization>
  
  <licenses>
    <license>
      <name>The Apache Software License, Version 2.0</name>
      <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
      <distribution>repo</distribution>
    </license>
  </licenses>  

  <properties>
    <minimum.maven.version>3.0.2</minimum.maven.version>

    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>

    <maven.compiler.source>1.6</maven.compiler.source>
    <maven.compiler.target>1.6</maven.compiler.target>

    <skip.deployment>false</skip.deployment>

    <junit.version>4.10</junit.version>
    <antplugin.version>1.7</antplugin.version>
    <ant.version>1.8.2</ant.version>

    <gpg.passphrase></gpg.passphrase>
  </properties>

  <modules>
    <module>randomized-runner</module>
    <module>junit4-ant</module>
    <module>junit4-maven-plugin</module>
    <module>junit4-maven-plugin-tests</module>
    <module>examples/maven</module>
    <module>examples/ant</module>
    <module>packaging</module>
  </modules>

  <dependencyManagement>
    <dependencies>
      <dependency>
        <groupId>org.apache.ant</groupId>
        <artifactId>ant</artifactId>
        <version>${ant.version}</version>
      </dependency>

      <dependency>
        <groupId>org.apache.ant</groupId>
        <artifactId>ant-junit</artifactId>
        <version>${ant.version}</version>
      </dependency>
      
      <dependency>
        <groupId>dom4j</groupId>
        <artifactId>dom4j</artifactId>
        <version>1.6.1</version>
      </dependency>

      <dependency>
        <groupId>com.google.guava</groupId>
        <artifactId>guava</artifactId>
        <version>16.0.1</version>
        <exclusions>
          <exclusion>
            <artifactId>jsr305</artifactId>
            <groupId>com.google.code.findbugs</groupId>
          </exclusion>
        </exclusions>
      </dependency>  

      <dependency>
        <groupId>org.ow2.asm</groupId>
        <artifactId>asm</artifactId>
        <version>5.0_BETA</version>
      </dependency>

      <dependency>
        <groupId>com.google.code.gson</groupId>
        <artifactId>gson</artifactId>
        <version>2.0</version>
      </dependency>

      <dependency>
        <groupId>org.simpleframework</groupId>
        <artifactId>simple-xml</artifactId>
        <version>2.6.2</version>
      </dependency>

      <dependency>
        <groupId>junit</groupId>
        <artifactId>junit</artifactId>
        <version>${junit.version}</version>
        <exclusions>
          <exclusion>
            <artifactId>hamcrest-core</artifactId>
            <groupId>org.hamcrest</groupId>
          </exclusion>
        </exclusions>
      </dependency>
      
      <dependency>
         <groupId>org.easytesting</groupId>
         <artifactId>fest-assert-core</artifactId>
         <version>2.0M6</version>
         <scope>test</scope>
      </dependency>

      <dependency>
        <groupId>commons-io</groupId>
        <artifactId>commons-io</artifactId>
        <version>2.3</version>
      </dependency>
    </dependencies>  
  </dependencyManagement>

  <build>
    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-javadoc-plugin</artifactId>
          <version>2.8.1</version>
          <configuration>
            <offlineLinks>
              <offlineLink>
                <url>http://kentbeck.github.com/junit/javadoc/latest/</url>
                <location>${project.parent.basedir}/etc/javadoc/junit</location>
              </offlineLink>
              <offlineLink>
                <url>http://guava-libraries.googlecode.com/svn/trunk/javadoc/</url>
                <location>${project.parent.basedir}/etc/javadoc/google-guava</location>
              </offlineLink>              
            </offlineLinks>
          </configuration>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-assembly-plugin</artifactId>
          <version>2.2.2</version>
        </plugin>
        
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-source-plugin</artifactId>
          <version>2.1.2</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-dependency-plugin</artifactId>
          <version>2.3</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-surefire-plugin</artifactId>
          <version>2.10</version>
          <configuration>
            <redirectTestOutputToFile>true</redirectTestOutputToFile>
          </configuration>
        </plugin>

        <plugin>
          <artifactId>maven-deploy-plugin</artifactId>
          <configuration>
            <skip>${skip.deployment}</skip>
          </configuration>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-compiler-plugin</artifactId>
          <version>3.1</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-jar-plugin</artifactId>
          <version>2.3.2</version>
        </plugin>

        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-antrun-plugin</artifactId>
          <version>${antplugin.version}</version>

          <dependencies>
            <dependency>
              <groupId>org.apache.ant</groupId>
              <artifactId>ant</artifactId>
              <version>${ant.version}</version>
            </dependency>
            <dependency>
              <groupId>org.apache.ant</groupId>
              <artifactId>ant-junit</artifactId>
              <version>${ant.version}</version>
            </dependency>
          </dependencies>
        </plugin>
        
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-plugin-plugin</artifactId>
          <version>3.2</version>
          <configuration>
           <extractors>
             <extractor>java</extractor>
           </extractors>
          </configuration>
        </plugin>
        
        <plugin>
          <groupId>org.eclipse.m2e</groupId>
          <artifactId>lifecycle-mapping</artifactId>
          <version>1.0.0</version>
          <configuration>
            <lifecycleMappingMetadata>
              <pluginExecutions>
                <pluginExecution>
                  <pluginExecutionFilter>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-enforcer-plugin</artifactId>
                    <versionRange>[1.0.0,)</versionRange>
                    <goals>
                      <goal>enforce</goal>
                    </goals>
                  </pluginExecutionFilter>
                  <action>
                    <ignore />
                  </action>
                </pluginExecution>
              </pluginExecutions>
            </lifecycleMappingMetadata>
          </configuration>
        </plugin>        
      </plugins>
    </pluginManagement>
  </build>

  <profiles>
    <profile>
      <id>quick</id>
      <properties>
        <skipTests>true</skipTests>
        <invoker.skip>true</invoker.skip>
      </properties>
    </profile>

    <!-- Release profile. -->
    <profile>
      <id>release</id>
      <build>
        <defaultGoal>package</defaultGoal>
        <plugins>
          <!-- javadocs -->
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-javadoc-plugin</artifactId>
            <executions>
              <execution>
                <id>attach-javadocs</id>
                <configuration>
                  <encoding>${project.build.sourceEncoding}</encoding>
                  <docfilessubdirs>true</docfilessubdirs>
                  <header><![CDATA[<div id='header'><a class='logo' target='_top' href='http://labs.carrotsearch.com'></a>${project.name} v${project.version} <br>API Documentation</div>]]></header>
                  <windowtitle>${project.name} v${project.version} API Documentation (JavaDoc)</windowtitle>
                  <doctitle>${project.name} v${project.version} API Documentation</doctitle>
                  <header><![CDATA[<div id='header'><a class='logo' target='_top' href='http://labs.carrotsearch.com'></a>${project.name} v${project.version} <br>API Documentation</div>]]></header>
                  <failonerror>true</failonerror>
                  <use>false</use>
                </configuration>
                <goals>
                  <goal>jar</goal>
                </goals>
              </execution>
            </executions>
          </plugin>

          <!-- Attach sources -->
          <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-source-plugin</artifactId>
            <executions>
              <execution>
                <id>attach-sources</id>
                <goals>
                  <goal>jar</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>
    </profile>
  </profiles> 
</project>
