<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>
  <parent>
    <groupId>org.tachyonproject</groupId>
    <artifactId>tachyon-parent</artifactId>
    <version>0.8.2</version>
  </parent>
  <groupId>org.tachyonproject</groupId>
  <artifactId>tachyon-assemblies</artifactId>
  <name>Tachyon Assemblies</name>
  <description>Assemblies of Tachyon system</description>

  <properties>
    <license.header.path>${project.parent.basedir}/build/license/</license.header.path>
    <checkstyle.path>${project.parent.basedir}/build/checkstyle/</checkstyle.path>
    <findbugs.path>${project.parent.basedir}/build/findbugs/</findbugs.path>
    <failIfNoTests>false</failIfNoTests>
  </properties>

  <dependencies>
    <dependency>
      <groupId>org.tachyonproject</groupId>
      <artifactId>tachyon-common</artifactId>
      <version>${project.version}</version>
    </dependency>
    <dependency>
      <groupId>org.tachyonproject</groupId>
      <artifactId>tachyon-servers</artifactId>
      <version>${project.version}</version>
    </dependency>
    <dependency>
      <groupId>org.tachyonproject</groupId>
      <artifactId>tachyon-underfs-hdfs</artifactId>
      <version>${project.version}</version>
    </dependency>
    <dependency>
      <groupId>org.tachyonproject</groupId>
      <artifactId>tachyon-underfs-glusterfs</artifactId>
      <version>${project.version}</version>
    </dependency>
    <dependency>
      <groupId>org.tachyonproject</groupId>
      <artifactId>tachyon-underfs-s3</artifactId>
      <version>${project.version}</version>
    </dependency>
   <dependency>
      <groupId>org.tachyonproject</groupId>
      <artifactId>tachyon-underfs-swift</artifactId>
      <version>${project.version}</version>
    </dependency>
     <dependency>
      <groupId>org.tachyonproject</groupId>
      <artifactId>tachyon-underfs-local</artifactId>
      <version>${project.version}</version>
    </dependency>
    <dependency>
      <groupId>org.tachyonproject</groupId>
      <artifactId>tachyon-examples</artifactId>
      <version>${project.version}</version>
    </dependency>
    <dependency>
      <groupId>org.tachyonproject</groupId>
      <artifactId>tachyon-shell</artifactId>
      <version>${project.version}</version>
    </dependency>
  </dependencies>

  <profiles>
    <profile>
      <id>mesos</id>
      <dependencies>
        <dependency>
          <groupId>org.tachyonproject</groupId>
          <artifactId>tachyon-integration-mesos</artifactId>
          <version>${project.version}</version>
        </dependency>
      </dependencies>
    </profile>

    <profile>
      <id>yarn</id>
      <dependencies>
        <dependency>
          <groupId>org.tachyonproject</groupId>
          <artifactId>tachyon-integration-yarn</artifactId>
          <version>${project.version}</version>
        </dependency>
      </dependencies>
    </profile>

    <profile>
      <id>developer</id>
      <dependencies>
        <dependency>
          <groupId>org.tachyonproject</groupId>
          <artifactId>tachyon-integration-mesos</artifactId>
          <version>${project.version}</version>
        </dependency>
        <dependency>
          <groupId>org.tachyonproject</groupId>
          <artifactId>tachyon-integration-yarn</artifactId>
          <version>${project.version}</version>
        </dependency>
      </dependencies>
    </profile>
  </profiles>

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-shade-plugin</artifactId>
        <version>2.2</version>
        <executions>
          <execution>
            <id>uber-jar</id>
            <phase>package</phase>
            <goals>
              <goal>shade</goal>
            </goals>
            <configuration>
              <finalName>${project.artifactId}-${project.version}-jar-with-dependencies</finalName>
              <transformers>
                <transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer" />
                <transformer implementation="org.apache.maven.plugins.shade.resource.ApacheLicenseResourceTransformer" />
                <transformer implementation="org.apache.maven.plugins.shade.resource.ApacheNoticeResourceTransformer" />
              </transformers>
              <filters>
                <filter>
                  <artifact>*:* </artifact>
                  <excludes>
                    <exclude>LICENSE</exclude>
                    <exclude>META-INF/*.SF</exclude>
                    <exclude>META-INF/*.DSA</exclude>
                    <exclude>META-INF/*.RSA</exclude>
                  </excludes>
                </filter>
              </filters>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-assembly-plugin</artifactId>
        <version>2.3</version>
        <inherited>false</inherited>
        <configuration>
          <skipAssembly>false</skipAssembly>
          <appendAssemblyId>false</appendAssemblyId>
          <attach>false</attach>
          <finalName>tachyon-${project.version}</finalName>
          <descriptors>
            <descriptor>src/main/assembly/tachyon-dist.xml</descriptor>
          </descriptors>
        </configuration>
      </plugin>
    </plugins>
  </build>

</project>
