<?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>
	<name>Grill Client Distribution</name>
   
  <parent>
    <artifactId>grill-parent</artifactId>
    <groupId>com.inmobi.grill</groupId>
    <version>1.1.0</version>
  </parent>
    
  <artifactId>grill-client-dist</artifactId>
  <description> Packaging and distribution for grill client </description>

  <dependencies>
    <dependency>
      <groupId>com.inmobi.grill</groupId>
      <artifactId>grill-cli</artifactId>
      <version>${project.version}</version>
    </dependency>
    <dependency>
      <groupId>com.inmobi.grill</groupId>
      <artifactId>grill-client</artifactId>
      <version>${project.version}</version>
    </dependency>
    <dependency>
      <groupId>com.inmobi.grill</groupId>
      <artifactId>grill-examples</artifactId>
      <version>${project.version}</version>
    </dependency>
    <dependency>
      <groupId>org.apache.hadoop</groupId>
      <artifactId>hadoop-common</artifactId>
      <scope>runtime</scope>
    </dependency>
  </dependencies>

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-assembly-plugin</artifactId>
        <configuration>
          <ignoreDirFormatExtensions>true</ignoreDirFormatExtensions>
          <descriptors>
            <descriptor>src/main/assembly/client-dist.xml</descriptor>
          </descriptors>
        </configuration>
        <executions>
          <execution>
            <id>assemble</id>
            <phase>package</phase>
            <goals>
              <goal>single</goal>
            </goals>
          </execution>
        </executions>
      </plugin>
      <!--Plugin to build deb-->
      <plugin>
        <artifactId>jdeb</artifactId>
        <groupId>org.vafer</groupId>
        <executions>
          <execution>
            <id>client</id>
            <phase>package</phase>
            <goals>
              <goal>jdeb</goal>
            </goals>
            <configuration>
              <controlDir>${project.basedir}/src/deb/client</controlDir>
              <installDir>/usr/local/grill-client</installDir>
              <deb>${project.build.directory}/grill-client_${project.version}.deb</deb>
              <dataSet>
                <data>
                  <src>target/grill-client-dist-${project.version}-client</src>
                  <type>directory</type>
                  <mapper>
                    <type>perm</type>
                    <prefix>/usr/local/grill-client</prefix>
                  </mapper>
                </data>
                <data>
                  <src>target/grill-client-dist-${project.version}-client/bin</src>
                  <type>directory</type>
                  <mapper>
                    <type>perm</type>
                    <prefix>/usr/local/grill-client/bin</prefix>
                    <filemode>755</filemode>
                  </mapper>
                </data>
                <data>
                  <src>target/grill-client-dist-${project.version}-client/bin/grill-cli</src>
                  <type>file</type>
                  <mapper>
                    <type>perm</type>
                    <prefix>/usr/bin/</prefix>
                    <filemode>755</filemode>
                  </mapper>
                </data>
              </dataSet>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-deploy-plugin</artifactId>
        <version>2.7</version>
        <configuration>
          <skip>true</skip>
        </configuration>
      </plugin>
    </plugins>
  </build>
</project>    
