<?xml version="1.0" encoding="UTF-8"?>
<!--
   Licensed to the Apache Software Foundation (ASF) under one or more
   contributor license agreements.  See the NOTICE file distributed with
   this work for additional information regarding copyright ownership.
   The ASF licenses this file to You under the Apache License, Version 2.0
   (the "License"); you may not use this file except in compliance with
   the License.  You may obtain a copy of the License at

       http://www.apache.org/licenses/LICENSE-2.0

   Unless required by applicable law or agreed to in writing, software
   distributed under the License is distributed on an "AS IS" BASIS,
   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   See the License for the specific language governing permissions and
   limitations under the License.
-->
<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">
    <properties>
        <buildtype>test</buildtype>
        <BUILD_NUMBER>${env.BUILD_NUMBER}</BUILD_NUMBER>
        <VERSION>0.8.0</VERSION>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <package.prefix>/usr</package.prefix>
        <package.conf.dir>/etc/chukwa</package.conf.dir>
        <package.log.dir>/var/log/chukwa</package.log.dir>
        <package.pid.dir>/var/run/chukwa</package.pid.dir>
        <package.release>1</package.release>
        <package.version>0.8.0</package.version>
        <final.name>${project.artifactId}-${package.version}</final.name>
        <TODO_ALERT_EMAIL>user@example.com</TODO_ALERT_EMAIL>
        <TODO_CLUSTER_NAME>chukwa</TODO_CLUSTER_NAME>
        <TODO_COLLECTORS_LOCAL_OUTPUT_DIR>/tmp/chukwa/dataSink/</TODO_COLLECTORS_LOCAL_OUTPUT_DIR>
        <TODO_COLLECTORS_NAMENODE>hdfs:///</TODO_COLLECTORS_NAMENODE>
        <TODO_COLLECTORS_ROTATEINTERVAL>300000</TODO_COLLECTORS_ROTATEINTERVAL>
        <TODO_COLLECTORS_PORT>8080</TODO_COLLECTORS_PORT>
        <TODO_COLLECTORS_ISFIXEDTIMEROTATORSCHEME>false</TODO_COLLECTORS_ISFIXEDTIMEROTATORSCHEME>
        <TODO_COLLECTORS_FIXEDTIMEINTERVALOFFSET>30000</TODO_COLLECTORS_FIXEDTIMEINTERVALOFFSET>
        <TODO_CHUKWA_PID_DIR>/tmp/chukwa/pidDir</TODO_CHUKWA_PID_DIR>
        <TODO_CHUKWA_LOG_DIR>/tmp/chukwa/log</TODO_CHUKWA_LOG_DIR>
        <TODO_AGENTS_INSTANCE_NAME>chukwa</TODO_AGENTS_INSTANCE_NAME>
        <TODO_NAGIOS_SERVER>localhost</TODO_NAGIOS_SERVER>
        <TODO_DEMUX_IO_SORT_MB>64</TODO_DEMUX_IO_SORT_MB>
        <TODO_DEMUX_FS_INMEMORY_SIZE_MB>64</TODO_DEMUX_FS_INMEMORY_SIZE_MB>
        <TODO_DEMUX_IO_SORT_FACTOR>10</TODO_DEMUX_IO_SORT_FACTOR>
        <CHUKWA_DIR>/chukwa</CHUKWA_DIR>
        <json-simpleVersion>1.1</json-simpleVersion>
        <zookeeperVersion>3.4.5</zookeeperVersion>
        <hbaseVersion>1.2.0</hbaseVersion>
        <hadoopVersion>2.7.2</hadoopVersion>
        <solrVersion>5.5.0</solrVersion>
        <javaVersion>1.8</javaVersion>
        <!-- <JAVA_HOME>${java.home}</JAVA_HOME> -->
        <gora.version>0.6</gora.version>
    </properties>

    <name>Apache Chukwa Core</name>
    <description>Chukwa is an open source data collection system for monitoring large distributed systems. 
    Chukwa is built on top of the Hadoop Distributed File System (HDFS) and Map/Reduce framework and 
    inherits Hadoop’s scalability and robustness. Chukwa also includes a ﬂexible and powerful toolkit 
    for displaying, monitoring and analyzing results to make the best use of the collected data.</description>

    <url>http://chukwa.apache.org/</url>
    <modelVersion>4.0.0</modelVersion>

    <parent>
        <groupId>org.apache.chukwa</groupId>
        <artifactId>chukwa</artifactId>
        <version>0.8.0</version>
    </parent>

    <groupId>org.apache.chukwa</groupId>
    <artifactId>chukwa-core</artifactId>
    <packaging>jar</packaging>

    <issueManagement>
        <system>Chukwa JIRA</system>
        <url>http://issues.apache.org/jira/browse/CHUKWA</url>
    </issueManagement>

    <scm>
      <connection>scm:git:git://git.apache.org/chukwa.git</connection>
      <developerConnection>scm:git:https://git-wip-us.apache.org/repos/asf/chukwa.git</developerConnection>
      <url>https://git-wip-us.apache.org/repos/asf?p=chukwa.git</url>
    </scm>

    <mailingLists>
        <mailingList>
            <name>User list</name>
            <subscribe>mailto:user-subscribe@chukwa.apache.org</subscribe>
            <unsubscribe>mailto:user-unsubscribe@chukwa.apache.org</unsubscribe>
            <post>mailto:user@chukwa.apache.org</post>
            <archive></archive>
        </mailingList>
        <mailingList>
            <name>Development list</name>
            <subscribe>mailto:dev-subscribe@chukwa.apache.org</subscribe>
            <unsubscribe>mailto:dev-unsubscribe@chukwa.apache.org</unsubscribe>
            <post>mailto:dev@chukwa.apache.org</post>
            <archive></archive>
        </mailingList>
        <mailingList>
            <name>Commit list</name>
            <subscribe>mailto:commits-subscribe@chukwa.apache.org</subscribe>
            <unsubscribe>mailto:commits-unsubscribe@chukwa.apache.org</unsubscribe>
            <post>mailto:commits@chukwa.apache.org</post>
            <archive></archive>
        </mailingList>
    </mailingLists>

    <dependencies>
          <dependency>
            <groupId>org.owasp.esapi</groupId>
            <artifactId>esapi</artifactId>
	    <version>2.1.0</version>
          </dependency>
          <dependency>
            <groupId>org.jsoup</groupId>
            <artifactId>jsoup</artifactId>
	    <version>1.8.3</version>
          </dependency>
          <dependency>
            <groupId>org.apache.velocity</groupId>
            <artifactId>velocity</artifactId>
            <version>1.7</version>
          </dependency>
          <dependency>
            <groupId>org.apache.velocity</groupId>
            <artifactId>velocity-tools</artifactId>
            <version>2.0</version>
            <exclusions>
              <exclusion>
                <groupId>org.apache.struts</groupId>
                <artifactId>struts-tiles</artifactId>
              </exclusion>
              <exclusion>
                <groupId>org.apache.struts</groupId>
                <artifactId>struts-taglib</artifactId>
              </exclusion>
              <exclusion>
                <groupId>org.apache.struts</groupId>
                <artifactId>struts-core</artifactId>
              </exclusion>
            </exclusions>
          </dependency>
          <dependency>
            <groupId>com.rubiconproject.oss</groupId>
            <artifactId>jchronic</artifactId>
            <version>0.2.6</version>
          </dependency>
          <dependency>
            <groupId>com.github.jsendnsca</groupId>
            <artifactId>jsendnsca</artifactId>
            <version>2.1.1</version>
          </dependency>
          <dependency>
            <groupId>org.fusesource</groupId>
            <artifactId>sigar</artifactId>
            <version>1.6.4</version>
          </dependency>
          <dependency>
            <groupId>com.googlecode.json-simple</groupId>
            <artifactId>json-simple</artifactId>
            <version>${json-simpleVersion}</version>
          </dependency>
          <dependency>
            <groupId>org.apache.activemq</groupId>
            <artifactId>activemq-core</artifactId>
            <version>5.5.1</version>
          </dependency>
          <dependency>
            <groupId>org.prefuse</groupId>
            <artifactId>prefuse</artifactId>
            <version>beta-20071021</version>
          </dependency>
          <dependency>
            <groupId>commons-configuration</groupId>
            <artifactId>commons-configuration</artifactId>
            <version>1.7</version>
          </dependency>
          <dependency>
            <groupId>commons-fileupload</groupId>
            <artifactId>commons-fileupload</artifactId>
            <version>1.2</version>
          </dependency>
          <dependency>
            <groupId>commons-httpclient</groupId>
            <artifactId>commons-httpclient</artifactId>
            <version>3.1</version>
          </dependency>
          <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.4</version>
          </dependency>
          <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>1.1</version>
          </dependency>
          <dependency>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
            <version>1.3</version>
          </dependency>
          <dependency>
            <groupId>commons-collections</groupId>
            <artifactId>commons-collections</artifactId>
            <version>3.1</version>
          </dependency>
          <dependency>
            <groupId>commons-net</groupId>
            <artifactId>commons-net</artifactId>
            <version>1.4.1</version>
          </dependency>
          <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging-api</artifactId>
            <version>1.1</version>
          </dependency>
          <dependency>
            <groupId>commons-beanutils</groupId>
            <artifactId>commons-beanutils</artifactId>
            <version>1.8.0</version>
          </dependency>
          <dependency>
            <groupId>org.mortbay.jetty</groupId>
            <artifactId>jetty</artifactId>
            <version>6.1.26</version>
          </dependency>
          <dependency>
            <groupId>org.mortbay.jetty</groupId>
            <artifactId>jetty-util</artifactId>
            <version>6.1.26</version>
          </dependency>
          <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.10</version>
          </dependency>
          <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.6.1</version>
          </dependency>
          <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.16</version>
          </dependency>
          <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-mock</artifactId>
            <version>2.0.8</version>
          </dependency>
          <dependency>
            <groupId>asm</groupId>
            <artifactId>asm-commons</artifactId>
            <version>3.3.1</version>
          </dependency>
          <dependency>
            <groupId>jdiff</groupId>
            <artifactId>jdiff</artifactId>
            <version>1.0.9</version>
          </dependency>
          <dependency>
            <groupId>xmlenc</groupId>
            <artifactId>xmlenc</artifactId>
            <version>0.52</version>
          </dependency>
          <dependency>
            <groupId>xerces</groupId>
            <artifactId>xercesImpl</artifactId>
            <version>2.10.0</version>
          </dependency>
          <dependency>
            <groupId>org.apache.zookeeper</groupId>
            <artifactId>zookeeper</artifactId>
            <version>${zookeeperVersion}</version>
          </dependency>
          <dependency>
            <groupId>com.sun.jersey</groupId>
            <artifactId>jersey-bundle</artifactId>
            <version>1.9</version>
          </dependency>
          <dependency>
            <groupId>com.google.guava</groupId>
            <artifactId>guava</artifactId>
            <version>12.0.1</version>
            <exclusions>
              <exclusion>
                <groupId>com.google.code.findbugs</groupId>
                <artifactId>jsr305</artifactId>
              </exclusion>
            </exclusions>
          </dependency>
          <dependency>
            <groupId>org.apache.solr</groupId>
            <artifactId>solr-solrj</artifactId>
            <version>${solrVersion}</version>
            <type>jar</type>
          </dependency>
          <dependency>
            <groupId>org.apache.solr</groupId>
            <artifactId>solr-test-framework</artifactId>
            <version>${solrVersion}</version>
            <type>jar</type>
            <scope>test</scope>
            <exclusions>
              <exclusion>
                <groupId>org.apache.hadoop</groupId>
                <artifactId>hadoop-auth</artifactId>
              </exclusion>
              <exclusion>
                <groupId>org.apache.hadoop</groupId>
                <artifactId>hadoop-common</artifactId>
              </exclusion>
              <exclusion>
                <groupId>org.apache.hadoop</groupId>
                <artifactId>hadoop-hdfs</artifactId>
              </exclusion>
            </exclusions>
          </dependency>
          <dependency>
            <groupId>org.apache.shiro</groupId>
            <artifactId>shiro-core</artifactId>
            <version>1.2.3</version>
          </dependency>
          <dependency>
            <groupId>org.apache.shiro</groupId>
            <artifactId>shiro-web</artifactId>
            <version>1.2.3</version>
          </dependency>
          <dependency>
            <groupId>org.apache.parquet</groupId>
            <artifactId>parquet-avro</artifactId>
            <version>1.7.0</version>
          </dependency>
          <!-- BEGINNING OF GORA DEPENDENCIES -->
          <dependency>
            <groupId>org.apache.gora</groupId>
            <artifactId>gora-core</artifactId>
            <version>${gora.version}</version>
          </dependency>
          <dependency>
            <groupId>org.apache.gora</groupId>
            <artifactId>gora-hbase</artifactId>
            <version>${gora.version}</version>
          </dependency>
          <!--dependency>
            <groupId>org.apache.gora</groupId>
            <artifactId>gora-cassandra</artifactId>
            <version>${gora.version}</version>
          </dependency-->
          <!--dependency>
            <groupId>org.apache.gora</groupId>
            <artifactId>gora-mongodb</artifactId>
            <version>${gora.version}</version>
          </dependency-->
          <!--dependency>
            <groupId>org.apache.gora</groupId>
            <artifactId>gora-solr</artifactId>
            <version>${gora.version}</version>
          </dependency-->
          <!--dependency>
            <groupId>org.apache.gora</groupId>
            <artifactId>gora-accumulo</artifactId>
            <version>${gora.version}</version>
          </dependency-->
          
          <!-- END OF GORA DEPENDENCIES -->
    </dependencies>

    <developers>
        <developer>
            <id>eyang</id>
            <name>Eric Yang</name>
            <email>eyang@apache.org</email>
            <timezone>-8</timezone>
            <roles>
                <role></role>
            </roles>
        </developer>
        <developer>
            <id>asrabkin</id>
            <name>Ariel Rabkin</name>
            <email>asrabkin@apache.org</email>
            <timezone>-5</timezone>
            <roles>
                <role></role>
            </roles>
        </developer>
        <developer>
            <id>billgraham</id>
            <name>Bill Graham</name>
            <email>billgraham@apache.org</email>
            <timezone>-8</timezone>
            <roles>
                <role></role>
            </roles>
        </developer>
        <developer>
            <id>jboulon</id>
            <name>Jerome Boulon</name>
            <email>jboulon@apache.org</email>
            <timezone>-8</timezone>
            <roles>
                <role></role>
            </roles>
        </developer>
    </developers>

    <organization>
        <name>Apache Software Foundation</name>
        <url>http://www.apache.org/</url>
    </organization>

    <build>
        <resources>
            <resource>
                <directory>src/main/resources</directory>
                <filtering>true</filtering>
            </resource>
        </resources>
        <testResources>
            <testResource>
                <directory>src/main/web/hicc</directory>
                <includes>
                    <include>/WEB-INF/jetty.xml</include>
                </includes>
            </testResource>
            <testResource>
                <directory>src/test/resources</directory>
            </testResource>
        </testResources>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-resources-plugin</artifactId>
                <version>2.6</version>
                <configuration>
                    <encoding>UTF-8</encoding>
                </configuration>
                <executions>
                    <execution>
                        <id>copy-configuration</id>
                        <phase>generate-resources</phase>
                        <goals>
                            <goal>copy-resources</goal>
                        </goals>
                        <configuration>
                            <outputDirectory>target/conf</outputDirectory>
                            <resources>
                                <resource>
                                    <directory>conf</directory>
                                    <filtering>true</filtering>
                                </resource>
                            </resources>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-jar-plugin</artifactId>
                <version>2.3.1</version>
                <executions>
                    <execution>
                        <id>core</id>
                        <phase>prepare-package</phase>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>test</id>
                        <goals>
                            <goal>test-jar</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>client</id>
                        <configuration>
                            <classifier>client</classifier>
                            <includes>
                                <include>**/inputtools/log4j/**/*</include>
                                <include>**/datacollection/client/**/*</include>
                                <include>**/chukwa/util/**/*</include>
                                <include>**/chukwa/datacollection/controller/**/*</include>
                            </includes>
                        </configuration>
                        <goals>
                            <goal>jar</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.1</version>
                <executions>
                  <execution>
                    <id>default-compile</id>
                    <phase>compile</phase>
                    <configuration>
                      <goals>
                        <goal>compile</goal>
                      </goals>
                      <compilerVersion>1.7</compilerVersion>
                      <source>1.7</source>
                      <target>1.7</target>
                      <excludes>
                        <exclude>**/ChukwaJobTrackerInstrumentation.java</exclude>
                      </excludes>
                    </configuration>
                  </execution>
                  <execution>
                    <id>default-testCompile</id>
                    <phase>test-compile</phase>
                    <configuration>
                      <goals>
                        <goal>testCompile</goal>
                      </goals>
                      <compilerVersion>${javaVersion}</compilerVersion>
                      <source>${javaVersion}</source>
                      <target>${javaVersion}</target>
                      <testExcludes>
                        <exclude>**/ChukwaJobTrackerInstrumentation.java</exclude>
                        <exclude>**/TestDemuxManager.java</exclude>
                        <exclude>**/TestFSMBuilder.java</exclude>
                      </testExcludes>
                    </configuration>
                  </execution>
                </executions>
            </plugin>

            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-source-plugin</artifactId>
                <version>2.1.1</version>
                <executions>
                    <execution>
                        <phase>prepare-package</phase>
                        <goals>
                            <goal>jar-no-fork</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-surefire-plugin</artifactId>
                <version>2.18.1</version>
                <configuration>
                    <skip>false</skip>
                </configuration>
                <executions>
                    <execution>
                        <id>default-test</id>
                        <phase>test</phase>
                        <goals>
                            <goal>test</goal>
                        </goals>
                        <configuration>
                            <argLine>-Xmx1024m -Djava.net.preferIPv4Stack=true -Dcom.sun.management.jmxremote.ssl=false -Dcom.sun.management.jmxremote.authenticate=true -Dcom.sun.management.jmxremote.password.file=${basedir}/target/conf/jmxremote.password -Dcom.sun.management.jmxremote.access.file=${basedir}/target/conf/jmxremote.access -Dcom.sun.management.jmxremote.port=10100</argLine>
                            <reportsDirectory>${project.build.directory}/test-reports</reportsDirectory>
                            <forkMode>pertest</forkMode>
                            <redirectTestOutputToFile>true</redirectTestOutputToFile>
                            <includes>
                                <include>**/Test*.java</include>
                            </includes>
                            <excludes>
							    <exclude>**/TestMemoryUsageDetection.java</exclude>
                                <exclude>**/TestFSMBuilder.java</exclude>
                                <exclude>**/TestDatabase*.java</exclude>
                                <exclude>**/TestArchive.java</exclude>
                                <exclude>**/TestJobLogEntry.java</exclude>
                                <exclude>**/*$*</exclude>
			   	<exclude>**/TestClientTrace.java</exclude>
                            </excludes>
                            <systemPropertyVariables>
                                <test.build.dir>${project.build.directory}/test</test.build.dir>
                                <test.build.data>${project.build.directory}/test/var</test.build.data>
                                <test.cache.data>${project.build.directory}/test/var/cache</test.cache.data>
                                <test.debug.data>${project.build.directory}/test/var/debug</test.debug.data>
                                <test.log.dir>${project.build.directory}/test/var/log</test.log.dir>
                                <test.build.classes>${project.build.directory}/test-classes</test.build.classes>
                                <CHUKWA_LOG_DIR>${project.build.directory}/test/var/log</CHUKWA_LOG_DIR>
                                <CHUKWA_CONF_DIR>${project.build.directory}/test/conf</CHUKWA_CONF_DIR>
                                <CHUKWA_DATA_DIR>${project.build.directory}/test/var</CHUKWA_DATA_DIR>
                                <CHUKWA_PID_DIR>${project.build.directory}/test/var/pid</CHUKWA_PID_DIR>
                                <CHUKWA_HDFS>/chukwa</CHUKWA_HDFS>
                                <CHUKWA_HOME>${project.build.directory}/test</CHUKWA_HOME>
                            </systemPropertyVariables>
                            <environmentVariables>
                                <CHUKWA_LOG_DIR>${project.build.directory}/test/var/log</CHUKWA_LOG_DIR>
                                <CHUKWA_CONF_DIR>${project.build.directory}/test/conf</CHUKWA_CONF_DIR>
                                <CHUKWA_DATA_DIR>${project.build.directory}/test/var</CHUKWA_DATA_DIR>
                                <CHUKWA_PID_DIR>${project.build.directory}/test/var/pid</CHUKWA_PID_DIR>
                                <CHUKWA_HDFS>/chukwa</CHUKWA_HDFS>
                                <CHUKWA_HOME>${project.build.directory}/test</CHUKWA_HOME>
                            </environmentVariables>
                            <workingDirectory>${project.build.directory}/test-classes</workingDirectory>
                        </configuration>
                    </execution>
                    <execution>
                        <phase>integration-test</phase>
                        <goals>
                            <goal>test</goal>
                        </goals>
                        <configuration>
                            <skip>false</skip>
                            <argLine>-Xmx1024m</argLine>
                            <reportsDirectory>${project.build.directory}/test-reports</reportsDirectory>
                            <forkMode>pertest</forkMode>
                            <redirectTestOutputToFile>true</redirectTestOutputToFile>
                            <includes>
                                <include>**/TestFSMBuilder.java</include>
                            </includes>
                            <excludes>
                                <exclude>**/TestDatabase*.java</exclude>
                                <exclude>**/TestArchive.java</exclude>
                                <exclude>**/*$*</exclude>
                            </excludes>
                            <systemPropertyVariables>
                                <test.build.data>${project.build.directory}/test/var</test.build.data>
                                <CHUKWA_LOG_DIR>${project.build.directory}/test/var/log</CHUKWA_LOG_DIR>
                                <CHUKWA_CONF_DIR>${project.build.directory}/test/conf</CHUKWA_CONF_DIR>
                                <CHUKWA_DATA_DIR>${project.build.directory}/test/var</CHUKWA_DATA_DIR>
                                <CHUKWA_PID_DIR>${project.build.directory}/test/var/pid</CHUKWA_PID_DIR>
                                <CHUKWA_HDFS>/chukwa</CHUKWA_HDFS>
                                <CHUKWA_HOME>${basedir}/target</CHUKWA_HOME>
                            </systemPropertyVariables>
                            <environmentVariables>
                                <CHUKWA_LOG_DIR>${project.build.directory}/test/var/log</CHUKWA_LOG_DIR>
                                <CHUKWA_CONF_DIR>${project.build.directory}/test/conf</CHUKWA_CONF_DIR>
                                <CHUKWA_DATA_DIR>${project.build.directory}/test/var</CHUKWA_DATA_DIR>
                                <CHUKWA_PID_DIR>${project.build.directory}/test/var/pid</CHUKWA_PID_DIR>
                                <CHUKWA_HDFS>/chukwa</CHUKWA_HDFS>
                                <CHUKWA_HOME>${basedir}/target</CHUKWA_HOME>
                            </environmentVariables>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-war-plugin</artifactId>
                <version>2.1.1</version>
                <configuration>
                    <phase>package</phase>
                    <warName>hicc</warName>
                    <warSourceDirectory>src/main/web/hicc</warSourceDirectory>
                    <webappDirectory>${project.build.directory}/hicc</webappDirectory>
                </configuration>
                <executions>
                    <execution>
                        <id>build-hicc</id>
                        <phase>package</phase>
                        <goals>
                            <goal>war</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <artifactId>maven-assembly-plugin</artifactId>
                <executions>
                    <execution>
                        <id>build-tarball</id>
                        <phase>package</phase>
                        <goals>
                            <goal>single</goal>
                        </goals>
                        <configuration>
                            <finalName>${final.name}</finalName>
                            <tarLongFileMode>gnu</tarLongFileMode>
                            <descriptors>
                                <descriptor>src/packages/tarball/all.xml</descriptor>
                            </descriptors>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-antrun-plugin</artifactId>
                <version>1.6</version>
                <executions>
                    <execution>
                        <id>setup</id>
                        <phase>validate</phase>
                        <configuration>
                            <target>
                                <mkdir dir="${basedir}/target"/>
                                <echo message="${VERSION}" file="${basedir}/target/VERSION"/>
                                <mkdir dir="${basedir}/target/clover"/>
                                <chmod dir="${basedir}/target/clover" perm="a+w" />
                            </target>
                        </configuration>
                        <goals>
                            <goal>run</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>chmod-jmx-file</id>
                        <phase>process-resources</phase>
                        <configuration>
                            <target>
                                <chmod file="${project.build.directory}/conf/jmxremote.password" perm="600" />
                                <chmod file="${project.build.directory}/conf/jmxremote.access" perm="600" />
                            </target>
                        </configuration>
                        <goals>
                            <goal>run</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>test-setup</id>
                        <phase>generate-test-resources</phase>
                        <configuration>
                            <target>
                                <delete dir="${project.build.directory}/test" />
                                <mkdir dir="${project.build.directory}/test/conf" />
                                <mkdir dir="${project.build.directory}/test/var" />
                                <mkdir dir="${project.build.directory}/test/var/log" />
                                <mkdir dir="${project.build.directory}/test/var/run" />
                                <copy todir="${project.build.directory}/test/var/log">
                                    <fileset dir="${basedir}/test/samples/">
                                        <include name="*.log" />
                                    </fileset>
                                </copy>
                                <echo message="localhost" file="${project.build.directory}/test/conf/collectors"/>
                                <copy file="${basedir}/conf/chukwa-common.xml" tofile="${project.build.directory}/test/conf/chukwa-common.xml">
                                    <filterchain>
                                        <expandproperties/>
                                    </filterchain>
                                </copy>
                                <copy file="${basedir}/conf/chukwa-agent-conf.xml" tofile="${project.build.directory}/test/conf/chukwa-agent-conf.xml">
                                    <filterchain>
                                        <expandproperties/>
                                    </filterchain>
                                </copy>
                                <copy file="${basedir}/conf/chukwa-demux-conf.xml" tofile="${project.build.directory}/test/conf/chukwa-demux-conf.xml">
                                    <filterchain>
                                        <expandproperties/>
                                    </filterchain>
                                </copy>
                                <copy file="${basedir}/conf/jmxremote.password" tofile="${project.build.directory}/test/conf/jmxremote.password">
                                    <filterchain>
                                        <expandproperties/>
                                    </filterchain>
                                </copy>
                                <copy file="${basedir}/conf/jmxremote.password" tofile="${project.build.directory}/test/conf/jmxremote.access">
                                    <filterchain>
                                        <expandproperties/>
                                    </filterchain>
                                </copy>
                                <copy file="${basedir}/conf/log4j.properties" tofile="${project.build.directory}/test/conf/log4j.properties"></copy>
                                <copy file="${basedir}/conf/auth.conf" tofile="${project.build.directory}/test/conf/auth.conf"></copy>
                                <chmod file="${project.build.directory}/test/conf/jmxremote.password" perm="600" />
                                <chmod file="${project.build.directory}/test/conf/jmxremote.access" perm="600" />
                                <copy file="${basedir}/src/test/resources/solr.xml" tofile="${project.build.directory}/test/var/solr.xml"></copy>
                            </target>
                        </configuration>
                        <goals>
                            <goal>run</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>pre-site</id>
                        <phase>pre-site</phase>
                        <goals>
                            <goal>run</goal>
                        </goals>
                        <configuration>
                            <tasks>
                                <mkdir dir="${project.build.directory}/site" />
                                <mkdir dir="${basedir}/target/site/apidocs"/>
                                <exec executable="perl" input="CHANGES.txt" output="${project.build.directory}/site/changes.html" failonerror="true">
                                    <arg value="src/site/resources/scripts/changes2html.pl" />
                                </exec>
                                <copy todir="${project.build.directory}/site">
                                    <fileset dir="src/site/resources/css" includes="*.css" />
                                </copy>
                                <copy todir="${project.build.directory}/site/css">
                                    <fileset dir="src/main/web/hicc/css" includes="*" />
                                </copy>
                                <copy todir="${project.build.directory}/site/js">
                                    <fileset dir="src/main/web/hicc/js" includes="*" />
                                </copy>
                                <copy todir="${project.build.directory}/site/fonts">
                                    <fileset dir="src/main/web/hicc/fonts" includes="*" />
                                </copy>
                                <copy file="src/main/web/hicc/welcome.html" tofile="${project.build.directory}/site/hicc.html" />
                            </tasks>
                        </configuration>
                    </execution>
                </executions>
            </plugin>
            <plugin>
                <groupId>org.apache.rat</groupId>
                <artifactId>apache-rat-plugin</artifactId>
                <version>0.11</version>
                <executions>
                    <execution>
                        <phase>verify</phase>
                        <goals>
                            <goal>check</goal>
                        </goals>
                    </execution>
                </executions>
                <configuration>
                  <numUnapprovedLicenses>0</numUnapprovedLicenses>
                  <excludes>
  			            <!-- notice files -->
  			            <exclude>CHANGES.txt</exclude>
  			            <exclude>README.md</exclude>

  			            <!-- generated files -->
  			            <exclude>bin/VERSION</exclude>
  			            <exclude>**/target/**</exclude>
  			            <exclude>**/.classpath</exclude>
  			            <exclude>**/.project</exclude>
  			            <exclude>**/.settings/**</exclude>

  			            <!-- Data files -->
  			            <exclude>conf/agents</exclude>
  			            <exclude>conf/alert</exclude>
  			            <exclude>conf/auth.conf</exclude>
  			            <exclude>conf/collectors</exclude>
  			            <exclude>conf/hbase.schema</exclude>
  			            <exclude>conf/initial_adaptors</exclude>
  			            <exclude>conf/jmxremote.access</exclude>
  			            <exclude>conf/jmxremote.password</exclude>
  			            <exclude>contrib/solr/logs/conf/_schema_analysis_stopwords_english.json</exclude>
  			            <exclude>contrib/solr/logs/conf/_schema_analysis_synonyms_english.json</exclude>
  			            <exclude>src/main/web/hicc/descriptors/**</exclude>
  			            <exclude>src/main/web/hicc/views/**</exclude>

  			            <!-- Test samples -->
  			            <exclude>src/test/resources/Hadoop18JobHistoryLog.txt</exclude>
  			            <exclude>src/test/resources/TestJobLog.txt</exclude>
  			            <exclude>test/samples/ClientTrace.log</exclude>
  			            <exclude>test/samples/Iostat.log</exclude>
  			            <exclude>test/samples/JobHistory.log</exclude>

  			            <!-- bsd licensed files -->
  			            <exclude>contrib/solr/logs/conf/lang/stopwords_da.txt</exclude>
  			            <exclude>contrib/solr/logs/conf/lang/stopwords_de.txt</exclude>
  			            <exclude>contrib/solr/logs/conf/lang/stopwords_es.txt</exclude>
  			            <exclude>contrib/solr/logs/conf/lang/stopwords_fa.txt</exclude>
  			            <exclude>contrib/solr/logs/conf/lang/stopwords_fi.txt</exclude>
  			            <exclude>contrib/solr/logs/conf/lang/stopwords_fr.txt</exclude>
  			            <exclude>contrib/solr/logs/conf/lang/stopwords_hi.txt</exclude>
  			            <exclude>contrib/solr/logs/conf/lang/stopwords_hu.txt</exclude>
  			            <exclude>contrib/solr/logs/conf/lang/stopwords_it.txt</exclude>
  			            <exclude>contrib/solr/logs/conf/lang/stopwords_nl.txt</exclude>
  			            <exclude>contrib/solr/logs/conf/lang/stopwords_no.txt</exclude>
  			            <exclude>contrib/solr/logs/conf/lang/stopwords_pt.txt</exclude>
  			            <exclude>contrib/solr/logs/conf/lang/stopwords_ru.txt</exclude>
  			            <exclude>contrib/solr/logs/conf/lang/stopwords_sv.txt</exclude>
  			            <exclude>src/main/web/hicc/js/jquery*</exclude>
  			            <exclude>src/main/web/hicc/home/js/jquery.js</exclude>
                    <exclude>src/main/web/hicc/css/jquery.circliful.css</exclude>
  			            <exclude>src/main/web/hicc/css/iui.css</exclude>
  			            <exclude>src/main/web/hicc/js/behaviour.js</exclude>
  			            <exclude>src/main/web/hicc/js/heatmap.js</exclude>
  			            <exclude>src/main/web/hicc/js/iui.js</exclude>
  			            <exclude>src/main/web/hicc/js/yahoo-dom-event.js</exclude>
  			            <exclude>src/main/web/hicc/js/treeview-min.js</exclude>
                    <exclude>src/main/resources/ESAPI.properties</exclude>

  			            <!-- MIT licensed files -->
  			            <exclude>contrib/solr/logs/conf/velocity/jquery.autocomplete.js</exclude>
  			            <exclude>src/main/web/hicc/css/flexigrid/flexigrid.css</exclude>
  			            <exclude>src/main/web/hicc/css/timeline.css</exclude>
  			            <exclude>src/main/web/hicc/lib/timeline/**</exclude>
  			            <exclude>lib/agent.dict</exclude>
  			            <exclude>lib/collector.dict</exclude>
  			            <exclude>lib/confspellcheck-README</exclude>
  			            <exclude>lib/json-README.txt</exclude>
  			            <exclude>src/main/web/hicc/js/ajaxtree.js</exclude>
  			            <exclude>src/main/web/hicc/js/flexigrid.js</exclude>
  			            <exclude>src/main/web/hicc/js/flexigrid.pack.js</exclude>
  			            <exclude>src/main/web/hicc/js/workspace/builder.js</exclude>
  			            <exclude>src/main/web/hicc/js/workspace/controls.js</exclude>
  			            <exclude>src/main/web/hicc/js/workspace/dragdrop.js</exclude>
  			            <exclude>src/main/web/hicc/js/workspace/effects.js</exclude>
  			            <exclude>src/main/web/hicc/js/workspace/scriptaculous.js</exclude>
  			            <exclude>src/main/web/hicc/js/workspace/slider.js</exclude>
  			            <exclude>src/main/web/hicc/js/workspace/sound.js</exclude>
  			            <exclude>src/main/web/hicc/js/org/tool-man/*</exclude>
  			            <exclude>src/main/web/hicc/js/timeframe.js</exclude>
  			            <exclude>src/main/web/hicc/js/workspace/prototype.js</exclude>
  			            <exclude>src/main/web/hicc/js/jquery.flot.pack.js</exclude>
  			            <exclude>src/main/web/hicc/js/gsv.js</exclude>
  			            <exclude>src/main/web/hicc/js/bootstrap.min.js</exclude>
  			            <exclude>src/main/web/hicc/js/js-cookie.js</exclude>
  			            <exclude>src/main/web/hicc/css/bootstrap-theme.css.map</exclude>
  			            <exclude>src/main/web/hicc/css/bootstrap-theme.min.css</exclude>
  			            <exclude>src/main/web/hicc/css/bootstrap.min.css</exclude>
  			            <exclude>src/main/web/hicc/fonts/glyphicons-halflings-regular.svg</exclude>
  			            <exclude>src/main/web/hicc/home/js/jquery.gridster.min.js</exclude>
  			            <exclude>src/main/web/hicc/home/js/jquery.gridster.with-extras.min.js</exclude>
  			            <exclude>src/main/web/hicc/home/css/jquery.gridster.css</exclude>
  			            <exclude>src/main/web/hicc/home/css/jquery.gridster.min.css</exclude>
  			            <exclude>src/main/web/hicc/home/js/typeahead.bundle.js</exclude>
  			            <exclude>src/main/web/hicc/home/js/classie.js</exclude>
  			            <exclude>src/main/web/hicc/home/js/gnmenu.js</exclude>
  			            <exclude>src/main/web/hicc/home/js/modernizr.custom.js</exclude>
                    <exclude>src/main/web/hicc/ajax-solr/chukwa/css/jquery-ui.min.css</exclude>
                    <exclude>src/main/web/hicc/ajax-solr/chukwa/css/jquery-ui.structure.min.css</exclude>
                    <exclude>src/main/web/hicc/ajax-solr/chukwa/css/jquery-ui.theme.min.css</exclude>
                    <exclude>src/main/web/hicc/ajax-solr/chukwa/js/jquery-ui.min.js</exclude>
                    <exclude>src/main/web/hicc/ajax-solr/chukwa/js/require.min.js</exclude>
                    <exclude>src/main/web/hicc/home/css/select2.min.css</exclude>
                    <exclude>src/main/web/hicc/home/js/select2.min.js</exclude>
                    <exclude>src/main/web/hicc/css/font-awesome.min.css</exclude>
                    <exclude>src/main/web/hicc/fonts/glyphicons-halflings-regular.*</exclude>
                    <exclude>src/main/web/hicc/home/css/gridstack.min.css</exclude>
                    <exclude>src/main/web/hicc/home/js/gridstack.min.*</exclude>
                    <exclude>src/main/web/hicc/home/js/jquery-ui.js</exclude>

  			            <!-- Creative Commons licensed files -->
  			            <exclude>src/main/web/hicc/js/autoHeight.js</exclude>

  			            <!-- Public Domain -->
  			            <exclude>src/main/web/hicc/js/base64.js</exclude>
  			            <exclude>src/main/web/hicc/js/canvas2image.js</exclude>
  			            <exclude>src/main/web/hicc/js/json.js</exclude>
  			            <exclude>src/main/web/hicc/home/fonts/codropsicons/*</exclude>
  			            <exclude>src/main/web/hicc/home/fonts/ecoicons/*</exclude>
                                    <exclude>src/main/web/hicc/home/js/lodash.min.js</exclude>

                    <!-- DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE Version 2, December 2004 -->
                    <exclude>src/main/web/hicc/css/chartist.css</exclude>
                    <exclude>src/main/web/hicc/css/chartist.css.map</exclude>
                    <exclude>src/main/web/hicc/js/chartist.min.js</exclude>
                    <exclude>src/main/web/hicc/js/chartist.min.js.map</exclude>                    
                    <exclude>src/main/resources/chukwachunk.json</exclude>                    
                  </excludes>
                </configuration>
            </plugin>
        </plugins>
        <extensions>
          <extension>
            <groupId>org.apache.maven.wagon</groupId>
            <artifactId>wagon-ssh-external</artifactId>
            <version>1.0</version>
          </extension>
        </extensions>
        <pluginManagement>
          <plugins>
            <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on the Maven build itself.-->
            <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-javadoc-plugin</artifactId>
                        <versionRange>[2.10.1,)</versionRange>
                        <goals>
                          <goal>javadoc</goal>
                        </goals>
                      </pluginExecutionFilter>
                      <action>
                        <ignore></ignore>
                      </action>
                    </pluginExecution>
                    <pluginExecution>
                      <pluginExecutionFilter>
                        <groupId>com.sun.jersey.contribs</groupId>
                        <artifactId>maven-wadl-plugin</artifactId>
                        <versionRange>[1.8,)</versionRange>
                        <goals>
                          <goal>generate</goal>
                        </goals>
                      </pluginExecutionFilter>
                      <action>
                        <ignore></ignore>
                      </action>
                    </pluginExecution>
                    <pluginExecution>
                      <pluginExecutionFilter>
                        <groupId>org.apache.maven.plugins</groupId>
                        <artifactId>maven-antrun-plugin</artifactId>
                        <versionRange>[1.6,)</versionRange>
                        <goals>
                          <goal>run</goal>
                        </goals>
                      </pluginExecutionFilter>
                      <action>
                        <ignore></ignore>
                      </action>
                    </pluginExecution>
                  </pluginExecutions>
                </lifecycleMappingMetadata>
              </configuration>
            </plugin>
          </plugins>
        </pluginManagement>
    </build>

    <profiles>
        <profile>
            <id>hudson</id>
            <activation>
                <property>
                    <name>!env.BUILD_NUMBER</name>
                </property>
            </activation>
            <properties>
                <BUILD_NUMBER>0</BUILD_NUMBER>
            </properties>
        </profile>
        <profile>
            <id>src</id>
            <activation>
                <property>
                    <name>release</name>
                </property>
            </activation>
            <build>
                <plugins>
                    <plugin>
                        <artifactId>maven-assembly-plugin</artifactId>
                        <executions>
                            <execution>
                                <id>build-release-tarball</id>
                                <phase>package</phase>
                                <goals>
                                    <goal>single</goal>
                                </goals>
                                <configuration>
                                    <finalName>chukwa-src-${VERSION}</finalName>
                                    <tarLongFileMode>gnu</tarLongFileMode>
                                    <descriptors>
                                        <descriptor>src/packages/tarball/src.xml</descriptor>
                                    </descriptors>
                                </configuration>
                            </execution>
                        </executions>
                    </plugin>
                    <plugin> 
                        <groupId>org.apache.maven.plugins</groupId> 
                        <artifactId>maven-install-plugin</artifactId> 
                        <configuration> 
                            <createChecksum>true</createChecksum> 
                        </configuration> 
                    </plugin> 
                </plugins>
            </build>
        </profile>
        
        <profile>
            <id>hbase-1</id>
            <activation>
                <property>
                    <name>!hbase.profile</name>
                </property>
            </activation>
            <dependencies>
                <dependency>
                    <groupId>org.apache.hbase</groupId>
                    <artifactId>hbase-common</artifactId>
                    <version>${hbaseVersion}</version>
                    <exclusions>
                        <exclusion>
                            <groupId>com.sun.jersey</groupId>
                            <artifactId>jersey-server</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>com.sun.jersey</groupId>
                            <artifactId>jersey-core</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>com.sun.jersey</groupId>
                            <artifactId>jersey-json</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>tomcat</groupId>
                            <artifactId>jasper-compiler</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>tomcat</groupId>
                            <artifactId>jasper-runtime</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>org.apache.hadoop</groupId>
                            <artifactId>hadoop-hdfs</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>org.apache.hadoop</groupId>
                            <artifactId>hadoop-auth</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>org.apache.hadoop</groupId>
                            <artifactId>hadoop-client</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>org.apache.hadoop</groupId>
                            <artifactId>hadoop-mapreduce-client-core</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>org.apache.hadoop</groupId>
                            <artifactId>hadoop-yarn-common</artifactId>
                        </exclusion>
                    </exclusions>
                </dependency>
                <dependency>
                    <groupId>org.apache.hbase</groupId>
                    <artifactId>hbase-client</artifactId>
                    <version>${hbaseVersion}</version>
                    <exclusions>
                        <exclusion>
                            <groupId>com.sun.jersey</groupId>
                            <artifactId>jersey-server</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>com.sun.jersey</groupId>
                            <artifactId>jersey-core</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>com.sun.jersey</groupId>
                            <artifactId>jersey-json</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>tomcat</groupId>
                            <artifactId>jasper-compiler</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>tomcat</groupId>
                            <artifactId>jasper-runtime</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>org.apache.hadoop</groupId>
                            <artifactId>hadoop-hdfs</artifactId>
                        </exclusion>
                    </exclusions>
                </dependency>
                <dependency>
                    <groupId>org.apache.hbase</groupId>
                    <artifactId>hbase-server</artifactId>
                    <version>${hbaseVersion}</version>
                    <exclusions>
                        <exclusion>
                            <groupId>com.sun.jersey</groupId>
                            <artifactId>jersey-server</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>com.sun.jersey</groupId>
                            <artifactId>jersey-core</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>com.sun.jersey</groupId>
                            <artifactId>jersey-json</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>tomcat</groupId>
                            <artifactId>jasper-compiler</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>tomcat</groupId>
                            <artifactId>jasper-runtime</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>org.apache.hadoop</groupId>
                            <artifactId>hadoop-hdfs</artifactId>
                        </exclusion>
                    </exclusions>
                </dependency>
                <dependency>
                    <groupId>org.apache.hbase</groupId>
                    <artifactId>hbase-common</artifactId>
                    <classifier>tests</classifier>
                    <version>${hbaseVersion}</version>
                    <scope>test</scope>
                </dependency>
                <dependency>
                    <groupId>org.apache.hbase</groupId>
                    <artifactId>hbase-server</artifactId>
                    <classifier>tests</classifier>
                    <version>${hbaseVersion}</version>
                    <scope>test</scope>
                    <exclusions>
                        <exclusion>
                            <groupId>com.sun.jersey</groupId>
                            <artifactId>jersey-server</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>com.sun.jersey</groupId>
                            <artifactId>jersey-core</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>com.sun.jersey</groupId>
                            <artifactId>jersey-json</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>tomcat</groupId>
                            <artifactId>jasper-compiler</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>tomcat</groupId>
                            <artifactId>jasper-runtime</artifactId>
                        </exclusion>
                   </exclusions>
                </dependency>
                <dependency>
                    <groupId>org.apache.hbase</groupId>
                    <artifactId>hbase-hadoop-compat</artifactId>
                    <classifier>tests</classifier>
                    <version>${hbaseVersion}</version>
                    <scope>test</scope>
                </dependency>
                <dependency>
                    <groupId>org.apache.hbase</groupId>
                    <artifactId>hbase-hadoop2-compat</artifactId>
                    <classifier>tests</classifier>
                    <version>${hbaseVersion}</version>
                    <scope>test</scope>
                </dependency>
                <dependency>
                    <groupId>org.apache.hadoop</groupId>
                    <artifactId>hadoop-common</artifactId>
                    <version>${hadoopVersion}</version>
                    <exclusions>
                        <exclusion>
                            <groupId>javax.servlet.jsp</groupId>
                            <artifactId>jsp-api</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>tomcat</groupId>
                            <artifactId>jasper-compiler</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>tomcat</groupId>
                            <artifactId>jasper-runtime</artifactId>
                        </exclusion>
                        <exclusion>
                            <groupId>org.codehaus.jackson</groupId>
                            <artifactId>jackson-mapper-asl</artifactId>
                        </exclusion>
                    </exclusions>
                </dependency>
                <dependency>
                    <groupId>org.apache.hadoop</groupId>
                    <artifactId>hadoop-auth</artifactId>
                    <version>${hadoopVersion}</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.hadoop</groupId>
                    <artifactId>hadoop-client</artifactId>
                    <version>${hadoopVersion}</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.hadoop</groupId>
                    <artifactId>hadoop-mapreduce-client-core</artifactId>
                    <version>${hadoopVersion}</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.hadoop</groupId>
                    <artifactId>hadoop-yarn-common</artifactId>
                    <version>${hadoopVersion}</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.hadoop</groupId>
                    <artifactId>hadoop-hdfs</artifactId>
                    <version>${hadoopVersion}</version>
                </dependency>
                <dependency>
                    <groupId>org.apache.hadoop</groupId>
                    <artifactId>hadoop-yarn-server-tests</artifactId>
                    <version>${hadoopVersion}</version>
                    <scope>test</scope>
                </dependency>
                <dependency>
                    <groupId>org.apache.hadoop</groupId>
	            <artifactId>hadoop-minicluster</artifactId>
                    <version>${hadoopVersion}</version>
                </dependency>
            </dependencies>
        </profile>
        <profile>
          <id>docs</id>
          <activation>
            <file>
              <exists>/usr/bin/xsltproc</exists>
            </file>
          </activation>
          <build>
            <plugins>
              <!--  Generate HTML version of REST API document  -->
              <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-site-plugin</artifactId>
                <version>3.3</version>
                <dependencies>
                  <dependency><!-- add support for ssh/scp -->
                    <groupId>org.apache.maven.wagon</groupId>
                    <artifactId>wagon-ssh</artifactId>
                    <version>1.0</version>
                  </dependency>
                </dependencies>
              </plugin>
            </plugins>
          </build>
          <dependencies>
            <dependency>
              <groupId>com.sun.jersey.contribs</groupId>
              <artifactId>maven-wadl-plugin</artifactId>
              <version>1.8</version>
              <exclusions>
                <exclusion>
                  <groupId>org.apache.maven</groupId>
                  <artifactId>apache-maven</artifactId>
                </exclusion>
                <exclusion>
                  <groupId>org.apache.maven</groupId>
                  <artifactId>maven-artifact</artifactId>
                </exclusion>
              </exclusions>
            </dependency>
            <dependency>
              <groupId>com.sun.jersey.contribs</groupId>
              <artifactId>wadl-resourcedoc-doclet</artifactId>
              <version>1.8</version>
            </dependency>
          </dependencies>
        </profile>
    </profiles>

    <repositories>
        <repository>
            <id>maven-central</id>
            <url>https://repo.maven.apache.org/maven2/</url>
        </repository>
        <repository>
            <id>clojars</id>
            <url>http://clojars.org/repo/</url>
        </repository>
        <repository>
            <id>Apache</id>
            <url>http://repo.maven.apache.org/maven2/</url>
        </repository>
        <repository>
            <id>pentaho</id>
            <url>http://repository.pentaho.org/artifactory/repo/</url>
        </repository>
    </repositories>

    <dependencyManagement>
        <dependencies>
        </dependencies>
    </dependencyManagement>

    <reporting>
      <plugins>
        <plugin>
            <artifactId>maven-jxr-plugin</artifactId>
            <version>2.3</version>
        </plugin>
        <plugin>
            <artifactId>maven-pmd-plugin</artifactId>
            <version>3.4</version>
            <reportSets>
                <reportSet>
                    <reports>
                        <report>pmd</report>
                        <report>cpd</report>
                    </reports>
                </reportSet>
            </reportSets>
            <configuration>
                <targetJdk>1.7</targetJdk>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>findbugs-maven-plugin</artifactId>
            <version>3.0.1</version>
            <configuration>
                <threshold>Normal</threshold>
                <effort>Max</effort>
            </configuration>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-project-info-reports-plugin</artifactId>
          <version>2.9</version>
          <configuration>
            <dependencyLocationsEnabled>false</dependencyLocationsEnabled>
          </configuration>
          <reportSets>
            <reportSet>
              <reports>
                <report>dependencies</report>
              </reports>
            </reportSet>
          </reportSets>
        </plugin>
        <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-javadoc-plugin</artifactId>
          <version>2.8</version>
          <reportSets>
            <reportSet>
              <id>javadoc</id>
              <configuration>
                <aggregate>true</aggregate>
                <doctitle>${project.name} API ${project.version}</doctitle>
                <show>public</show>
                <tags>
                  <tag>
                    <name>response.representation.200.doc</name>
                    <placement>a</placement>
                    <head>response.representation.200.doc</head>
                  </tag>
                  <tag>
                    <name>response.representation.200.mediaType</name>
                    <placement>a</placement>
                    <head>response.representation.200.mediaType</head>
                  </tag>
                  <tag>
                    <name>response.representation.200.example</name>
                    <placement>a</placement>
                    <head>response.representation.200.example</head>
                  </tag>
                  <tag>
                    <name>response.representation.400.doc</name>
                    <placement>a</placement>
                    <head>response.representation.400.doc</head>
                  </tag>
                  <tag>
                    <name>response.representation.400.mediaType</name>
                    <placement>a</placement>
                    <head>response.representation.400.mediaType</head>
                  </tag>
                  <tag>
                    <name>response.representation.400.example</name>
                    <placement>a</placement>
                    <head>response.representation.400.example</head>
                  </tag>
                  <tag>
                    <name>response.representation.403.doc</name>
                    <placement>a</placement>
                    <head>response.representation.403.doc</head>
                  </tag>
                  <tag>
                    <name>response.representation.403.mediaType</name>
                    <placement>a</placement>
                    <head>response.representation.403.mediaType</head>
                  </tag>
                  <tag>
                    <name>response.representation.403.example</name>
                    <placement>a</placement>
                    <head>response.representation.403.example</head>
                  </tag>
                  <tag>
                    <name>request.representation.example</name>
                    <placement>a</placement>
                    <head>request.representation.example</head>
                  </tag>
                </tags>
              </configuration>
              <reports>
                <report>javadoc</report>
              </reports>
            </reportSet>
          </reportSets>
        </plugin>
      </plugins>
    </reporting>

    <distributionManagement>
      <site>
        <id>apache-website</id>
        <name>Apache Website</name>
        <url>scp://people.apache.org/www/chukwa.apache.org/content/docs/r${project.version}</url>
      </site>
      <repository>
        <id>apache-repository</id>
        <url>scpexe://people.apache.org//www/www.apache.org/dist/chukwa</url>
      </repository>
    </distributionManagement>

</project>

