Skip to content
Snippets Groups Projects
pom.xml 10 KiB
Newer Older
  • Learn to ignore specific revisions
  • <?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>
      <parent>
        <groupId>org.spark-project</groupId>
        <artifactId>parent</artifactId>
        <version>0.6.1-SNAPSHOT</version>
      </parent>
    
      <groupId>org.spark-project</groupId>
      <artifactId>spark-repl</artifactId>
      <packaging>jar</packaging>
      <name>Spark Project REPL</name>
      <url>http://spark-project.org/</url>
    
      <properties>
        <deb.install.path>/usr/share/spark</deb.install.path>
        <deb.user>root</deb.user>
      </properties>
    
      <dependencies>
        <dependency>
          <groupId>org.eclipse.jetty</groupId>
          <artifactId>jetty-server</artifactId>
        </dependency>
        <dependency>
          <groupId>org.scala-lang</groupId>
          <artifactId>scala-compiler</artifactId>
        </dependency>
        <dependency>
          <groupId>org.scala-lang</groupId>
          <artifactId>jline</artifactId>
        </dependency>
        <dependency>
          <groupId>org.slf4j</groupId>
          <artifactId>jul-to-slf4j</artifactId>
        </dependency>
        <dependency>
          <groupId>org.slf4j</groupId>
          <artifactId>slf4j-log4j12</artifactId>
        </dependency>
    
        <dependency>
          <groupId>org.scalatest</groupId>
          <artifactId>scalatest_${scala.version}</artifactId>
          <scope>test</scope>
        </dependency>
        <dependency>
          <groupId>org.scalacheck</groupId>
          <artifactId>scalacheck_${scala.version}</artifactId>
          <scope>test</scope>
        </dependency>
      </dependencies>
      <build>
        <plugins>
          <plugin>
            <groupId>org.scalatest</groupId>
            <artifactId>scalatest-maven-plugin</artifactId>
            <configuration>
              <environmentVariables>
                <SPARK_HOME>${basedir}/..</SPARK_HOME>
                <SPARK_TESTING>1</SPARK_TESTING>
              </environmentVariables>
            </configuration>
          </plugin>
        </plugins>
      </build>
    
      <profiles>
        <profile>
          <id>hadoop1</id>
          <properties>
            <classifier>hadoop1</classifier>
          </properties>
          <dependencies>
            <dependency>
              <groupId>org.spark-project</groupId>
              <artifactId>spark-core</artifactId>
              <version>${project.version}</version>
              <classifier>hadoop1</classifier>
            </dependency>
            <dependency>
              <groupId>org.spark-project</groupId>
              <artifactId>spark-bagel</artifactId>
              <version>${project.version}</version>
              <classifier>hadoop1</classifier>
              <scope>runtime</scope>
            </dependency>
            <dependency>
              <groupId>org.spark-project</groupId>
              <artifactId>spark-examples</artifactId>
              <version>${project.version}</version>
              <classifier>hadoop1</classifier>
              <scope>runtime</scope>
            </dependency>
            <dependency>
              <groupId>org.apache.hadoop</groupId>
              <artifactId>hadoop-core</artifactId>
            </dependency>
          </dependencies>
          <build>
            <plugins>
              <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-shade-plugin</artifactId>
                <configuration>
                  <shadedArtifactAttached>true</shadedArtifactAttached>
                  <shadedClassifierName>shaded-hadoop1</shadedClassifierName>
                  <filters>
                    <filter>
                      <artifact>*:*</artifact>
                      <excludes>
                        <exclude>META-INF/*.SF</exclude>
                        <exclude>META-INF/*.DSA</exclude>
                        <exclude>META-INF/*.RSA</exclude>
                      </excludes>
                    </filter>
                  </filters>
                </configuration>
                <executions>
                  <execution>
                    <phase>package</phase>
                    <goals>
                      <goal>shade</goal>
                    </goals>
                    <configuration>
                      <transformers>
                        <transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
                        <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                          <mainClass>spark.repl.Main</mainClass>
                        </transformer>
                      </transformers>
                    </configuration>
                  </execution>
                </executions>
              </plugin>
            </plugins>
          </build>
        </profile>
        <profile>
          <id>hadoop2</id>
          <properties>
            <classifier>hadoop2</classifier>
          </properties>
          <dependencies>
            <dependency>
              <groupId>org.spark-project</groupId>
              <artifactId>spark-core</artifactId>
              <version>${project.version}</version>
              <classifier>hadoop2</classifier>
            </dependency>
            <dependency>
              <groupId>org.spark-project</groupId>
              <artifactId>spark-bagel</artifactId>
              <version>${project.version}</version>
              <classifier>hadoop2</classifier>
              <scope>runtime</scope>
            </dependency>
            <dependency>
              <groupId>org.spark-project</groupId>
              <artifactId>spark-examples</artifactId>
              <version>${project.version}</version>
              <classifier>hadoop2</classifier>
              <scope>runtime</scope>
            </dependency>
            <dependency>
              <groupId>org.apache.hadoop</groupId>
              <artifactId>hadoop-core</artifactId>
            </dependency>
            <dependency>
              <groupId>org.apache.hadoop</groupId>
              <artifactId>hadoop-client</artifactId>
            </dependency>
          </dependencies>
          <build>
            <plugins>
              <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-shade-plugin</artifactId>
                <configuration>
                  <shadedArtifactAttached>true</shadedArtifactAttached>
                  <shadedClassifierName>shaded-hadoop2</shadedClassifierName>
                  <filters>
                    <filter>
                      <artifact>*:*</artifact>
                      <excludes>
                        <exclude>META-INF/*.SF</exclude>
                        <exclude>META-INF/*.DSA</exclude>
                        <exclude>META-INF/*.RSA</exclude>
                      </excludes>
                    </filter>
                  </filters>
                </configuration>
                <executions>
                  <execution>
                    <phase>package</phase>
                    <goals>
                      <goal>shade</goal>
                    </goals>
                    <configuration>
                      <transformers>
                        <transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
                        <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
                          <resource>reference.conf</resource>
                        </transformer>
                        <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                          <mainClass>spark.repl.Main</mainClass>
                        </transformer>
                      </transformers>
                    </configuration>
                  </execution>
                </executions>
              </plugin>
            </plugins>
          </build>
        </profile>
        <profile>
          <id>deb</id>
          <build>
            <plugins>
              <plugin>
                <groupId>org.codehaus.mojo</groupId>
                <artifactId>buildnumber-maven-plugin</artifactId>
                <version>1.1</version>
                <executions>
                  <execution>
                    <phase>validate</phase>
                    <goals>
                      <goal>create</goal>
                    </goals>
                    <configuration>
                      <shortRevisionLength>8</shortRevisionLength>
                    </configuration>
                  </execution>
                </executions>
              </plugin>
              <plugin>
                <groupId>org.vafer</groupId>
                <artifactId>jdeb</artifactId>
                <version>0.11</version>
                <executions>
                  <execution>
                    <phase>package</phase>
                    <goals>
                      <goal>jdeb</goal>
                    </goals>
                    <configuration>
                      <deb>${project.build.directory}/${project.artifactId}-${classifier}_${project.version}-${buildNumber}.deb</deb>
                      <dataSet>
                        <data>
                          <src>${project.build.directory}/${project.artifactId}-${project.version}-shaded-${classifier}.jar</src>
                          <type>file</type>
                          <mapper>
                            <type>perm</type>
                            <user>${deb.user}</user>
                            <group>${deb.user}</group>
                            <prefix>${deb.install.path}</prefix>
                          </mapper>
                        </data>
                        <data>
                          <src>${basedir}/src/deb/bin</src>
                          <type>directory</type>
                          <mapper>
                            <type>perm</type>
                            <user>${deb.user}</user>
                            <group>${deb.user}</group>
                            <prefix>${deb.install.path}</prefix>
                            <filemode>744</filemode>
                          </mapper>
                        </data>
    
                        <data>
                          <src>${basedir}/../conf</src>
                          <type>directory</type>
                          <mapper>
                            <type>perm</type>
                            <user>${deb.user}</user>
                            <group>${deb.user}</group>
                            <prefix>${deb.install.path}/conf</prefix>
                            <filemode>744</filemode>
                          </mapper>
                        </data>
    
                      </dataSet>
                    </configuration>
                  </execution>
                </executions>
              </plugin>
            </plugins>
          </build>
        </profile>
      </profiles>
    </project>