HBASE-6145 Fix site target post modularization

git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1345788 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
Michael Stack 2012-06-03 21:59:50 +00:00
parent 968479a34d
commit 5aab2d3e93
62 changed files with 336 additions and 2142 deletions

View File

@ -1,343 +0,0 @@
<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">
<!--
/**
* 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.
*/
-->
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>hbase</artifactId>
<groupId>org.apache.hbase</groupId>
<version>0.95-SNAPSHOT</version>
<relativePath>..</relativePath>
</parent>
<artifactId>hbase-assembly</artifactId>
<name>HBase - Assembly</name>
<description>Assembly all HBase modules into deployable packages</description>
<packaging>pom</packaging>
<properties>
<!-- Have to hardcode the final here because the submodule can't seem to resolve parent in ant tasks -->
<final.dir.name>hbase-${project.version}</final.dir.name>
</properties>
<build>
<pluginManagement>
<plugins>
<!--This plugin's configuration is used to store Eclipse m2e settings only.
It has no influence on the Maven build itself.
Ensures that we don't error on the plugins as unrecognized-->
<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-antrun-plugin</artifactId>
<versionRange>[1.6,)</versionRange>
<goals>
<goal>run</goal>
</goals>
</pluginExecutionFilter>
<action>
<ignore></ignore>
</action>
</pluginExecution>
</pluginExecutions>
</lifecycleMappingMetadata>
</configuration>
</plugin>
</plugins>
</pluginManagement>
<plugins>
<!-- Run the ant packaging to build the directory to tar -->
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<skipAssembly>false</skipAssembly>
<attach>false</attach>
<tarLongFileMode>gnu</tarLongFileMode>
<appendAssemblyId>false</appendAssemblyId>
<descriptors>
<descriptor>src/assembly/all.xml</descriptor>
</descriptors>
</configuration>
<executions>
<execution>
<id>prepare-package</id>
<phase>prepare-package</phase>
<goals>
<goal>single</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<!-- Include the arc integration in an early phase -->
<execution>
<id>arc-setup</id>
<phase>initialize</phase>
<configuration>
<tasks if="arc">
<get dest="${project.build.directory}/arc-jira.tar.gz"
src="https://github.com/facebook/arc-jira/tarball/master" />
<untar src="${project.build.directory}/arc-jira.tar.gz"
compression="gzip" dest="${project.build.directory}">
<patternset>
<include name="facebook-arc-jira-*/arc_jira_lib/**" />
</patternset>
</untar>
<move todir="${basedir}">
<fileset dir="${project.build.directory}">
<include name="facebook-arc-jira-*/arc_jira_lib/**" />
</fileset>
<mapper type="regexp" from="^facebook-arc-jira-([^/])*/(.*)"
to="\.\2" />
</move>
<delete includeemptydirs="true">
<fileset dir="${project.build.directory}">
<include name="facebook-arc-jira-*" />
<include name="arc-jira.tar.gz" />
</fileset>
</delete>
</tasks>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
<!-- Do the final packaging steps -->
<execution>
<id>package</id>
<phase>package</phase>
<configuration>
<target>
<!-- Complements the assembly -->
<mkdir
dir="${project.build.directory}/${project.build.finalName}/lib/native/${build.platform}" />
<!-- Using Unix cp to preserve symlinks, using script to handle wildcards
to manage movement of the nativelibs -->
<echo file="${project.build.directory}/copynativelibs.sh">
if [ `ls ${project.build.directory}/nativelib |
wc -l` -ne 0 ]; then
cp -PR
${project.build.directory}/nativelib/lib*
${project.build.directory}/${project.build.finalName}/${project.build.finalName}/lib/native/${build.platform}
fi
</echo>
<!-- Do the native lib copying -->
<exec executable="sh" dir="${project.build.directory}"
failonerror="true">
<arg line="./copynativelibs.sh" />
</exec>
<!-- move the output directory to the 'final' one -->
<move todir="${project.build.directory}/${final.dir.name}">
<fileset dir="${project.build.directory}/${project.build.finalName}" />
</move>
<!-- Using Unix tar to preserve symlinks when building final tarball -->
<!-- This puts the tarball in the parent directory, so we don't need to move it later -->
<exec executable="tar" failonerror="yes"
dir="${project.build.directory}">
<arg value="czf" />
<arg value="${basedir}/../target/${final.dir.name}.tar.gz" />
<arg value="${final.dir.name}" />
</exec>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase-common</artifactId>
</dependency>
<dependency>
<artifactId>hbase-server</artifactId>
<groupId>org.apache.hbase</groupId>
<scope>compile</scope>
</dependency>
<!-- This should be added back in when maven fixes intra-project dependencies -->
<!-- See http://jira.codehaus.org/browse/MNG-2045 and http://jira.codehaus.org/browse/MNG-3559 -->
<!-- <dependency>
<artifactId>hbase-core</artifactId>
<groupId>org.apache.hbase</groupId>
<type>test-jar</type>
<scope>runtime</scope>
</dependency> -->
</dependencies>
<profiles>
<!-- Building packages -->
<profile>
<id>rpm</id>
<build>
<plugins>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
<id>build-rpm</id>
<phase>package</phase>
<configuration>
<target>
<ant antfile="${basedir}/src/packages/build.xml">
<target name="package-rpm" />
<target name="package-conf-pseudo-rpm" />
</ant>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
<profile>
<id>deb</id>
<build>
<plugins>
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<version>1.6</version>
<executions>
<execution>
<id>build-deb</id>
<phase>package</phase>
<configuration>
<target>
<property name="artifactId" value="${project.artifactId}" />
<ant antfile="${basedir}/src/packages/build.xml">
<target name="package-deb"/>
<target name="package-conf-pseudo-deb"/>
</ant>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>org.vafer</groupId>
<artifactId>jdeb</artifactId>
<version>0.8</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
</profile>
<!-- Special builds -->
<!-- Including the snappy library -->
<profile>
<id>hadoop-snappy</id>
<activation>
<activeByDefault>false</activeByDefault>
<property>
<name>snappy</name>
</property>
</activation>
<dependencies>
<dependency>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-snappy</artifactId>
<version>${hadoop-snappy.version}</version>
</dependency>
</dependencies>
<build>
<plugins>
<!-- Add the snappy resources if the snappy goal is enabled -->
<plugin>
<artifactId>maven-antrun-plugin</artifactId>
<executions>
<execution>
<phase>process-resources</phase>
<configuration>
<target description="Include the snappy libs as a tarball">
<exec executable="tar" dir="${project.build.directory}/nativelib"
failonerror="false">
<arg value="xf" />
<arg value="hadoop-snappy-nativelibs.tar" />
</exec>
</target>
</configuration>
<goals>
<goal>run</goal>
</goals>
</execution>
</executions>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-dependency-plugin</artifactId>
<executions>
<execution>
<id>get-hadoop-snappy-native</id>
<phase>generate-resources</phase>
<goals>
<goal>copy</goal>
</goals>
<configuration>
<artifactItems>
<artifactItem>
<groupId>org.apache.hadoop</groupId>
<artifactId>hadoop-snappy</artifactId>
<version>${hadoop-snappy.version}</version>
<classifier>${build.platform}</classifier>
<type>tar</type>
<overWrite>false</overWrite>
<outputDirectory>${project.build.directory}/nativelib</outputDirectory>
<destFileName>hadoop-snappy-nativelibs.tar</destFileName>
</artifactItem>
</artifactItems>
</configuration>
</execution>
</executions>
</plugin>
</plugins>
</build>
</profile>
</profiles>
</project>

View File

@ -1,149 +0,0 @@
<?xml version="1.0"?>
<!--
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 name="hbase packaging">
<target name="package-deb">
<taskdef name="deb"
classname="org.vafer.jdeb.ant.DebAntTask">
</taskdef>
<mkdir dir="${project.build.directory}/deb/hbase.control" />
<copy todir="${project.build.directory}/deb/hbase.control">
<fileset dir="${basedir}/src/packages/deb/hbase.control">
<exclude name="control" />
</fileset>
</copy>
<copy file="src/packages/deb/hbase.control/control" todir="${basedir}/target/deb/hbase.control">
<filterchain>
<replacetokens>
<token key="version" value="${package.version}" />
</replacetokens>
</filterchain>
</copy>
<deb destfile="${project.build.directory}/${artifactId}_${package.version}-${package.release}_${os.arch}.deb" control="${basedir}/target/deb/hbase.control">
<data src="${project.build.directory}/${final.name}.tar.gz">
<mapper type="prefix" strip="1" prefix="${package.prefix}/share/hbase" />
<exclude name="${final.name}/conf" />
<exclude name="${final.name}/conf/*" />
<exclude name="${final.name}/lib/zookeeper*" />
<exclude name="${final.name}/lib/hadoop-core*" />
<include name="**" />
</data>
<tarfileset dir="${basedir}/src/packages" filemode="755" prefix="${package.prefix}/share/hbase/sbin">
<exclude name=".svn" />
<include name="*.sh" />
</tarfileset>
<tarfileset dir="${basedir}/src/packages/deb/init.d" filemode="755" prefix="${package.prefix}/share/hbase/sbin">
<exclude name=".svn" />
<include name="**" />
</tarfileset>
<tarfileset dir="${basedir}/conf" filemode="644" prefix="${package.conf.dir}">
<exclude name="hbase-site.xml" />
<exclude name=".svn" />
<include name="**" />
</tarfileset>
</deb>
</target>
<target name="package-conf-pseudo-deb">
<taskdef name="deb"
classname="org.vafer.jdeb.ant.DebAntTask">
</taskdef>
<mkdir dir="${project.build.directory}/deb/conf-pseudo.control" />
<copy todir="${project.build.directory}/deb/conf-pseudo.control">
<fileset dir="${basedir}/src/packages/deb/conf-pseudo.control">
<exclude name="control" />
</fileset>
</copy>
<copy file="src/packages/deb/conf-pseudo.control/control" todir="${basedir}/target/deb/conf-pseudo.control">
<filterchain>
<replacetokens>
<token key="version" value="${package.version}" />
</replacetokens>
</filterchain>
</copy>
<deb destfile="${project.build.directory}/${artifactId}-conf-pseudo_${package.version}-${package.release}_${os.arch}.deb" control="${basedir}/target/deb/conf-pseudo.control">
<tarfileset dir="${basedir}/src/packages/conf-pseudo" filemode="644" prefix="${package.conf.dir}">
<exclude name=".svn" />
<include name="**" />
</tarfileset>
</deb>
</target>
<target name="package-rpm">
<delete dir="${project.build.directory}/rpm/hbase/buildroot" />
<mkdir dir="${project.build.directory}/rpm/hbase/SOURCES" />
<mkdir dir="${project.build.directory}/rpm/hbase/BUILD" />
<mkdir dir="${project.build.directory}/rpm/hbase/RPMS" />
<mkdir dir="${project.build.directory}/rpm/hbase/buildroot" />
<copy file="${project.build.directory}/${final.name}.tar.gz" todir="${project.build.directory}/rpm/hbase/SOURCES" />
<copy file="src/packages/rpm/spec/hbase.spec" todir="target/rpm/hbase/SPECS">
<filterchain>
<replacetokens>
<token key="final.name" value="${final.name}" />
<token key="version" value="${package.version}" />
<token key="package.name" value="${final.name}.tar.gz" />
<token key="package.release" value="${package.release}" />
<token key="package.build.dir" value="${project.build.directory}/rpm/hbase/BUILD" />
<token key="package.prefix" value="${package.prefix}" />
<token key="package.conf.dir" value="${package.conf.dir}" />
<token key="package.log.dir" value="${package.log.dir}" />
<token key="package.pid.dir" value="${package.pid.dir}" />
</replacetokens>
</filterchain>
</copy>
<rpm specFile="hbase.spec" command="-bb" topDir="${project.build.directory}/rpm/hbase" cleanBuildDir="true" failOnError="true"/>
<copy todir="${project.build.directory}" flatten="true">
<fileset dir="${project.build.directory}/rpm/hbase/RPMS">
<include name="**/*.rpm" />
</fileset>
</copy>
<delete dir="${project.build.directory}/rpm" />
</target>
<target name="package-conf-pseudo-rpm">
<delete dir="${project.build.directory}/rpm/hbase/buildroot" />
<mkdir dir="${project.build.directory}/rpm/hbase/SOURCES" />
<mkdir dir="${project.build.directory}/rpm/hbase/BUILD" />
<mkdir dir="${project.build.directory}/rpm/hbase/RPMS" />
<mkdir dir="${project.build.directory}/rpm/hbase/buildroot" />
<copy file="${project.build.directory}/${final.name}.tar.gz" todir="${project.build.directory}/rpm/hbase/SOURCES" />
<copy file="src/packages/rpm/spec/conf-pseudo.spec" todir="target/rpm/hbase/SPECS">
<filterchain>
<replacetokens>
<token key="final.name" value="${final.name}" />
<token key="version" value="${package.version}" />
<token key="package.name" value="${final.name}.tar.gz" />
<token key="package.release" value="${package.release}" />
<token key="package.build.dir" value="${project.build.directory}/rpm/hbase/BUILD" />
<token key="package.prefix" value="${package.prefix}" />
<token key="package.conf.dir" value="${package.conf.dir}" />
<token key="package.log.dir" value="${package.log.dir}" />
<token key="package.pid.dir" value="${package.pid.dir}" />
</replacetokens>
</filterchain>
</copy>
<rpm specFile="conf-pseudo.spec" command="-bb" topDir="${project.build.directory}/rpm/hbase" cleanBuildDir="true" failOnError="true"/>
<copy todir="${project.build.directory}" flatten="true">
<fileset dir="${project.build.directory}/rpm/hbase/RPMS">
<include name="**/*.rpm" />
</fileset>
</copy>
<delete dir="${project.build.directory}/rpm" />
</target>
</project>

View File

@ -1,68 +0,0 @@
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<!--
/**
* Copyright 2010 The Apache Software Foundation
*
* 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.
*/
-->
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://localhost:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
<description>The mode the cluster will be in. Possible values are
false: standalone and pseudo-distributed setups with managed Zookeeper
true: fully-distributed with unmanaged Zookeeper Quorum (see hbase-env.sh)
</description>
</property>
<property>
<name>hbase.zookeeper.property.clientPort</name>
<value>2181</value>
<description>Property from ZooKeeper's config zoo.cfg.
The port at which the clients will connect.
</description>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
<description>The replication count for HLog and HFile storage. Should not be greater than HDFS datanode count.
</description>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>localhost</value>
<description>Comma separated list of servers in the ZooKeeper Quorum.
For example, "host1.mydomain.com,host2.mydomain.com,host3.mydomain.com".
By default this is set to localhost for local and pseudo-distributed modes
of operation. For a fully-distributed setup, this should be set to a full
list of ZooKeeper quorum servers. If HBASE_MANAGES_ZK is set in hbase-env.sh
this is the list of servers which we will start/stop ZooKeeper on.
</description>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/var/lib/zookeeper/data</value>
<description>Property from ZooKeeper's config zoo.cfg.
The directory where the snapshot is stored.
</description>
</property>
</configuration>

View File

@ -1,16 +0,0 @@
# 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.
/etc/hbase/hbase-site.xml

View File

@ -1,24 +0,0 @@
# 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.
Package: hbase-conf-pseudo
Version: @version@
Section: misc
Priority: optional
Architecture: all
Depends: openjdk-6-jre-headless, hadoop, zookeeper, hbase
Maintainer: Apache Software Foundation <dev@hbase.apache.org>
Description: HBase pseudo cluster configuration for single node cluster testing.
Distribution: development

View File

@ -1,26 +0,0 @@
#!/bin/sh
# 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.
/etc/init.d/hadoop-namenode start 2>/dev/null >/dev/null
/etc/init.d/hadoop-datanode start 2>/dev/null >/dev/null
su - hdfs -c "hadoop fs -mkdir /hbase" 2>/dev/null >/dev/null
su - hdfs -c "hadoop fs -chown hbase /hbase" 2>/dev/null >/dev/null
/etc/init.d/hbase-master start 2>/dev/null >/dev/null
/etc/init.d/hbase-regionserver start 2>/dev/null >/dev/null
ln -sf ../init.d/hbase-master /etc/rc2.d/S94hbase-master
ln -sf ../init.d/hbase-regionserver /etc/rc6.d/S94hbase-regionserver

View File

@ -1,21 +0,0 @@
#!/bin/sh
# 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.
/etc/init.d/hbase-regionserver stop 2>/dev/null >/dev/null
/etc/init.d/hbase-master stop 2>/dev/null >/dev/null
rm -f /etc/rc2.d/S94hbase-master
rm -f /etc/rc2.d/S94hbase-regionserver

View File

@ -1,5 +0,0 @@
/etc/hbase/hadoop-metrics.properties
/etc/hbase/hbase-env.sh
/etc/hbase/hbase-site.xml
/etc/hbase/log4j.properties
/etc/hbase/regionservers

View File

@ -1,24 +0,0 @@
# 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.
Package: hbase
Version: @version@
Section: misc
Priority: optional
Architecture: all
Depends: openjdk-6-jre-headless, hadoop, zookeeper
Maintainer: Apache Software Foundation <dev@hbase.apache.org>
Description: HBase is the Hadoop database. Use it when you need random, realtime read/write access to your Big Data. This project's goal is the hosting of very large tables -- billions of rows X millions of columns -- atop clusters of commodity hardware.
Distribution: development

View File

@ -1,24 +0,0 @@
#!/bin/sh
# 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.
bash /usr/share/hbase/sbin/update-hbase-env.sh \
--prefix=/usr \
--bin-dir=/usr/bin \
--conf-dir=/etc/hbase \
--log-dir=/var/log/hbase \
--pid-dir=/var/run/hbase

View File

@ -1,20 +0,0 @@
#!/bin/sh
# 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.
/usr/sbin/userdel hbase 2> /dev/null >/dev/null
exit 0

View File

@ -1,21 +0,0 @@
#!/bin/sh
# 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.
getent group hadoop 2>/dev/null >/dev/null || /usr/sbin/groupadd -r hadoop
/usr/sbin/useradd --comment "HBase" --shell /bin/bash -M -r --groups hadoop --home /usr/share/hbase hbase 2> /dev/null || :

View File

@ -1,27 +0,0 @@
#!/bin/sh
# 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.
/etc/init.d/hbase-master stop 2>/dev/null >/dev/null
/etc/init.d/hbase-regionserver stop 2>/dev/null >/dev/null
bash /usr/share/hbase/sbin/update-hbase-env.sh \
--prefix=/usr \
--bin-dir=/usr/bin \
--conf-dir=/etc/hbase \
--log-dir=/var/log/hbase \
--pid-dir=/var/run/hbase \
--uninstal

View File

@ -1,142 +0,0 @@
#! /bin/sh
# 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.
### BEGIN INIT INFO
# Provides: hbase-master
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop:
# Short-Description: Apache HBase Master
### END INIT INFO
set -e
# /etc/init.d/hbase-master: start and stop the Apache HBase Master daemon
test -x /usr/bin/hbase || exit 0
( /usr/bin/hbase 2>&1 | grep -q hbase ) 2>/dev/null || exit 0
umask 022
if test -f /etc/default/hbase-env.sh; then
. /etc/default/hbase-env.sh
fi
. /lib/lsb/init-functions
# Are we running from init?
run_by_init() {
([ "$previous" ] && [ "$runlevel" ]) || [ "$runlevel" = S ]
}
check_for_no_start() {
# forget it if we're trying to start, and /etc/hbase/hbase-master_not_to_be_run exists
if [ -e /etc/hbase/hbase-master_not_to_be_run ]; then
if [ "$1" = log_end_msg ]; then
log_end_msg 0
fi
if ! run_by_init; then
log_action_msg "Apache HBase Master server not in use (/etc/hbase/hbase-master_not_to_be_run)"
fi
exit 0
fi
}
check_privsep_dir() {
# Create the PrivSep empty dir if necessary
if [ ! -d ${HBASE_PID_DIR} ]; then
mkdir -p ${HBASE_PID_DIR}
chown root:hadoop ${HBASE_PID_DIR}
chmod 0775 ${HBASE_PID_DIR}
fi
}
export PATH="${PATH:+$PATH:}/usr/sbin:/usr/bin"
case "$1" in
start)
check_privsep_dir
check_for_no_start
log_daemon_msg "Starting Apache HBase Master server" "hbase-master"
if start-stop-daemon --start --quiet --oknodo --pidfile ${HBASE_PID_DIR}/hbase-hbase-master.pid -c hbase -x ${HBASE_HOME}/bin/hbase-daemon.sh -- --config ${HBASE_CONF_DIR} start master; then
log_end_msg 0
else
log_end_msg 1
fi
;;
stop)
log_daemon_msg "Stopping Apache HBase Master server" "hbase-master"
if start-stop-daemon --stop --quiet --oknodo --pidfile ${HBASE_PID_DIR}/hbase-hbase-master.pid; then
log_end_msg 0
else
log_end_msg 1
fi
;;
restart)
check_privsep_dir
log_daemon_msg "Restarting Apache HBase Master server" "hbase-master"
start-stop-daemon --stop --quiet --oknodo --retry 30 --pidfile ${HBASE_PID_DIR}/hbase-hbase-master.pid
check_for_no_start log_end_msg
if start-stop-daemon --start --quiet --oknodo --pidfile ${HBASE_PID_DIR}/hbase-hbase-master.pid -c hbase -x ${HBASE_HOME}/bin/hbase-daemon.sh -- --config ${HBASE_CONF_DIR} start master; then
log_end_msg 0
else
log_end_msg 1
fi
;;
try-restart)
check_privsep_dir
log_daemon_msg "Restarting Apache HBase Master server" "hbase-master"
set +e
start-stop-daemon --stop --quiet --retry 30 --pidfile ${HBASE_PID_DIR}/hbase-hbase-master.pid
RET="$?"
set -e
case $RET in
0)
# old daemon stopped
check_for_no_start log_end_msg
if start-stop-daemon --start --quiet --oknodo --pidfile ${HBASE_PID_DIR}/hbase-hbase-master.pid -c hbase -x ${HBASE_HOME}/bin/hbase-daemon.sh -- --config ${HBASE_CONF_DIR} start master; then
log_end_msg 0
else
log_end_msg 1
fi
;;
1)
# daemon not running
log_progress_msg "(not running)"
log_end_msg 0
;;
*)
# failed to stop
log_progress_msg "(failed to stop)"
log_end_msg 1
;;
esac
;;
status)
status_of_proc -p ${HBASE_PID_DIR}/hbase-hbase-master.pid ${JAVA_HOME}/bin/java hbase-master && exit 0 || exit $?
;;
*)
log_action_msg "Usage: /etc/init.d/hbase-master {start|stop|restart|try-restart|status}"
exit 1
esac
exit 0

View File

@ -1,142 +0,0 @@
#! /bin/sh
# 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.
### BEGIN INIT INFO
# Provides: hbase-regionserver
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop:
# Short-Description: Apache HBase Region Server
### END INIT INFO
set -e
# /etc/init.d/hbase-regionserver: start and stop the Apache HBase Region Server daemon
test -x /usr/bin/hbase || exit 0
( /usr/bin/hbase 2>&1 | grep -q hbase ) 2>/dev/null || exit 0
umask 022
if test -f /etc/default/hbase-env.sh; then
. /etc/default/hbase-env.sh
fi
. /lib/lsb/init-functions
# Are we running from init?
run_by_init() {
([ "$previous" ] && [ "$runlevel" ]) || [ "$runlevel" = S ]
}
check_for_no_start() {
# forget it if we're trying to start, and /etc/hbase/hbase-regionserver_not_to_be_run exists
if [ -e /etc/hbase/hbase-regionserver_not_to_be_run ]; then
if [ "$1" = log_end_msg ]; then
log_end_msg 0
fi
if ! run_by_init; then
log_action_msg "Apache HBase Region Server server not in use (/etc/hbase/hbase-regionserver_not_to_be_run)"
fi
exit 0
fi
}
check_privsep_dir() {
# Create the PrivSep empty dir if necessary
if [ ! -d ${HBASE_PID_DIR} ]; then
mkdir -p ${HBASE_PID_DIR}
chown root:hadoop ${HBASE_PID_DIR}
chmod 0775 ${HBASE_PID_DIR}
fi
}
export PATH="${PATH:+$PATH:}/usr/sbin:/usr/bin"
case "$1" in
start)
check_privsep_dir
check_for_no_start
log_daemon_msg "Starting Apache HBase Region Server server" "hbase-regionserver"
if start-stop-daemon --start --quiet --oknodo --pidfile ${HBASE_PID_DIR}/hbase-hbase-regionserver.pid -c hbase -x ${HBASE_HOME}/bin/hbase-daemon.sh -- --config ${HBASE_CONF_DIR} start regionserver; then
log_end_msg 0
else
log_end_msg 1
fi
;;
stop)
log_daemon_msg "Stopping Apache HBase Region Server server" "hbase-regionserver"
if start-stop-daemon --stop --quiet --oknodo --pidfile ${HBASE_PID_DIR}/hbase-hbase-regionserver.pid; then
log_end_msg 0
else
log_end_msg 1
fi
;;
restart)
check_privsep_dir
log_daemon_msg "Restarting Apache HBase Region Server server" "hbase-regionserver"
start-stop-daemon --stop --quiet --oknodo --retry 30 --pidfile ${HBASE_PID_DIR}/hbase-hbase-regionserver.pid
check_for_no_start log_end_msg
if start-stop-daemon --start --quiet --oknodo --pidfile ${HBASE_PID_DIR}/hbase-hbase-regionserver.pid -c hbase -x ${HBASE_HOME}/bin/hbase-daemon.sh -- --config ${HBASE_CONF_DIR} start regionserver; then
log_end_msg 0
else
log_end_msg 1
fi
;;
try-restart)
check_privsep_dir
log_daemon_msg "Restarting Apache HBase Region Server server" "hbase-regionserver"
set +e
start-stop-daemon --stop --quiet --retry 30 --pidfile ${HBASE_PID_DIR}/hbase-hbase-regionserver.pid
RET="$?"
set -e
case $RET in
0)
# old daemon stopped
check_for_no_start log_end_msg
if start-stop-daemon --start --quiet --oknodo --pidfile ${HBASE_PID_DIR}/hbase-hbase-regionserver.pid -c hbase -x ${HBASE_HOME}/bin/hbase-daemon.sh -- --config ${HBASE_CONF_DIR} start regionserver; then
log_end_msg 0
else
log_end_msg 1
fi
;;
1)
# daemon not running
log_progress_msg "(not running)"
log_end_msg 0
;;
*)
# failed to stop
log_progress_msg "(failed to stop)"
log_end_msg 1
;;
esac
;;
status)
status_of_proc -p ${HBASE_PID_DIR}/hbase-hbase-regionserver.pid ${JAVA_HOME}/bin/java hbase-regionserver && exit 0 || exit $?
;;
*)
log_action_msg "Usage: /etc/init.d/hbase-regionserver {start|stop|restart|try-restart|status}"
exit 1
esac
exit 0

View File

@ -1,84 +0,0 @@
#!/bin/bash
# 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.
#
# Starts a HBase master
#
# chkconfig: 2345 95 10
# description: HBase master
source /etc/rc.d/init.d/functions
source /etc/default/hbase-env.sh
RETVAL=0
PIDFILE="${HBASE_PID_DIR}/hbase-hbase-master.pid"
desc="HBase master daemon"
start() {
echo -n $"Starting $desc (hbase-master): "
daemon --user hbase ${HBASE_HOME}/bin/hbase-daemon.sh --config "${HBASE_CONF_DIR}" start master
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/hbase-master
return $RETVAL
}
stop() {
echo -n $"Stopping $desc (hbase-master): "
daemon --user hbase ${HBASE_HOME}/bin/hbase-daemon.sh --config "${HBASE_CONF_DIR}" stop master
RETVAL=$?
sleep 5
echo
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/hbase-master $PIDFILE
}
restart() {
stop
start
}
checkstatus(){
status -p $PIDFILE ${JAVA_HOME}/bin/java
RETVAL=$?
}
condrestart(){
[ -e /var/lock/subsys/hbase-master ] && restart || :
}
case "$1" in
start)
start
;;
stop)
stop
;;
status)
checkstatus
;;
restart)
restart
;;
condrestart)
condrestart
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart}"
exit 1
esac
exit $RETVAL

View File

@ -1,84 +0,0 @@
#!/bin/bash
# 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.
#
# Starts a HBase region server
#
# chkconfig: 2345 96 10
# description: HBase region server
source /etc/rc.d/init.d/functions
source /etc/default/hbase-env.sh
RETVAL=0
PIDFILE="${HBASE_PID_DIR}/hbase-hbase-regionserver.pid"
desc="HBase regionserver daemon"
start() {
echo -n $"Starting $desc (hbase-regionserver): "
daemon --user hbase ${HBASE_HOME}/bin/hbase-daemon.sh --config "${HBASE_CONF_DIR}" start regionserver
RETVAL=$?
echo
[ $RETVAL -eq 0 ] && touch /var/lock/subsys/hbase-regionserver
return $RETVAL
}
stop() {
echo -n $"Stopping $desc (hbase-regionserver): "
daemon --user hbase ${HBASE_HOME}/bin/hbase-daemon.sh --config "${HBASE_CONF_DIR}" stop regionserver
RETVAL=$?
sleep 5
echo
[ $RETVAL -eq 0 ] && rm -f /var/lock/subsys/hbase-regionserver $PIDFILE
}
restart() {
stop
start
}
checkstatus(){
status -p $PIDFILE ${JAVA_HOME}/bin/java
RETVAL=$?
}
condrestart(){
[ -e /var/lock/subsys/hbase-regionserver ] && restart || :
}
case "$1" in
start)
start
;;
stop)
stop
;;
status)
checkstatus
;;
restart)
restart
;;
condrestart)
condrestart
;;
*)
echo $"Usage: $0 {start|stop|status|restart|condrestart}"
exit 1
esac
exit $RETVAL

View File

@ -1,103 +0,0 @@
# 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.
#
# RPM Spec file for HBase version @version@
#
%define name hbase-conf-pseudo
%define version @version@
%define release @package.release@
# Installation Locations
%define _source @package.name@
%define _final_name @final.name@
%define _prefix @package.prefix@
%define _bin_dir %{_prefix}/bin
%define _conf_dir @package.conf.dir@
%define _include_dir %{_prefix}/include
%define _lib_dir %{_prefix}/lib
%define _lib64_dir %{_prefix}/lib64
%define _libexec_dir %{_prefix}/libexec
%define _log_dir @package.log.dir@
%define _man_dir %{_prefix}/man
%define _pid_dir @package.pid.dir@
%define _sbin_dir %{_prefix}/sbin
%define _share_dir %{_prefix}/share/hbase
%define _src_dir %{_prefix}/src
%define _var_dir %{_prefix}/var/lib
# Build time settings
%define _build_dir @package.build.dir@
%define _final_name @final.name@
%define debug_package %{nil}
Summary: Default HBase configuration templates
License: Apache License, Version 2.0
URL: http://hbase.apache.org/
Vendor: Apache Software Foundation
Group: Development/Libraries
Name: %{name}
Version: %{version}
Release: %{release}
Source0: %{_source}
Prefix: %{_prefix}
Prefix: %{_conf_dir}
Prefix: %{_log_dir}
Prefix: %{_pid_dir}
Buildroot: %{_build_dir}
Requires: hbase == %{version}, sh-utils, textutils, /usr/sbin/useradd, /usr/sbin/usermod, /sbin/chkconfig, /sbin/service, jdk >= 1.6
AutoReqProv: no
Provides: hbase-conf-pseudo
%description
Installation of this RPM will setup your machine to run in pseudo-distributed mode where each HBase daemon runs in a separate Java process.
%prep
%setup -n %{_final_name}
%build
if [ -d ${RPM_BUILD_DIR}%{_conf_dir} ]; then
rm -rf ${RPM_BUILD_DIR}%{_conf_dir}
fi
mkdir -p ${RPM_BUILD_DIR}%{_conf_dir}
mkdir -p ${RPM_BUILD_DIR}%{_share_dir}/src/packages/conf-pseudo
cp -f ${RPM_BUILD_DIR}/%{_final_name}/src/packages/conf-pseudo/hbase-site.xml ${RPM_BUILD_DIR}%{_share_dir}/src/packages/conf-pseudo/hbase-site.xml
rm -rf ${RPM_BUILD_DIR}/%{_final_name}
%preun
/sbin/chkconfig --del hbase-master
/sbin/chkconfig --del hbase-regionserver
/etc/init.d/hbase-master stop 2>/dev/null >/dev/null
/etc/init.d/hbase-regionserver stop 2>/dev/null >/dev/null
exit 0
%post
cp -f ${RPM_INSTALL_PREFIX0}/share/hbase/src/packages/conf-pseudo/*.xml ${RPM_INSTALL_PREFIX1} 2>/dev/null >/dev/null
/etc/init.d/hadoop-namenode start 2>/dev/null >/dev/null
/etc/init.d/hadoop-datanode start 2>/dev/null >/dev/null
su - hdfs -c "hadoop fs -mkdir /hbase" 2>/dev/null >/dev/null
su - hdfs -c "hadoop fs -chown hbase /hbase" 2>/dev/null >/dev/null
/etc/init.d/hbase-master start 2>/dev/null >/dev/null
/etc/init.d/hbase-regionserver start 2>/dev/null >/dev/null
/sbin/chkconfig hbase-master --add
/sbin/chkconfig hbase-regionserver --add
/sbin/chkconfig hbase-master on
/sbin/chkconfig hbase-regionserver on
%files
%defattr(-,root,root)
%config %{_share_dir}/src/packages/conf-pseudo/hbase-site.xml

View File

@ -1,135 +0,0 @@
# 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.
#
# RPM Spec file for HBase version @version@
#
%define name hbase
%define version @version@
%define release @package.release@
# Installation Locations
%define _source @package.name@
%define _final_name @final.name@
%define _prefix @package.prefix@
%define _bin_dir %{_prefix}/bin
%define _conf_dir @package.conf.dir@
%define _include_dir %{_prefix}/include
%define _lib_dir %{_prefix}/lib
%define _lib64_dir %{_prefix}/lib64
%define _libexec_dir %{_prefix}/libexec
%define _log_dir @package.log.dir@
%define _man_dir %{_prefix}/man
%define _pid_dir @package.pid.dir@
%define _sbin_dir %{_prefix}/sbin
%define _share_dir %{_prefix}/share/hbase
%define _src_dir %{_prefix}/src
%define _var_dir %{_prefix}/var/lib
# Build time settings
%define _build_dir @package.build.dir@
%define _final_name @final.name@
%define debug_package %{nil}
Summary: Default HBase configuration templates
License: Apache License, Version 2.0
URL: http://hbase.apache.org/
Vendor: Apache Software Foundation
Group: Development/Libraries
Name: %{name}
Version: %{version}
Release: %{release}
Source0: %{_source}
Prefix: %{_prefix}
Prefix: %{_conf_dir}
Prefix: %{_log_dir}
Prefix: %{_pid_dir}
Buildroot: %{_build_dir}
Requires: sh-utils, textutils, /usr/sbin/useradd, /usr/sbin/usermod, /sbin/chkconfig, /sbin/service, jdk >= 1.6, hadoop
AutoReqProv: no
Provides: hbase
%description
Installation of this RPM will setup your machine to run in pseudo-distributed mode where each HBase daemon runs in a separate Java process.
%prep
%setup -n %{_final_name}
%build
if [ -d ${RPM_BUILD_DIR}%{_prefix} ]; then
rm -rf ${RPM_BUILD_DIR}%{_prefix}
fi
if [ -d ${RPM_BUILD_DIR}%{_log_dir} ]; then
rm -rf ${RPM_BUILD_DIR}%{_log_dir}
fi
if [ -d ${RPM_BUILD_DIR}%{_conf_dir} ]; then
rm -rf ${RPM_BUILD_DIR}%{_conf_dir}
fi
if [ -d ${RPM_BUILD_DIR}%{_pid_dir} ]; then
rm -rf ${RPM_BUILD_DIR}%{_pid_dir}
fi
mkdir -p ${RPM_BUILD_DIR}%{_conf_dir}
mkdir -p ${RPM_BUILD_DIR}%{_log_dir}
mkdir -p ${RPM_BUILD_DIR}%{_conf_dir}
mkdir -p ${RPM_BUILD_DIR}%{_pid_dir}
mkdir -p ${RPM_BUILD_DIR}%{_share_dir}
mkdir -p ${RPM_BUILD_DIR}%{_share_dir}/sbin
mkdir -p ${RPM_BUILD_DIR}/etc/rc.d/init.d
cp ${RPM_BUILD_DIR}/%{_final_name}/src/packages/update-hbase-env.sh ${RPM_BUILD_DIR}%{_share_dir}/sbin/update-hbase-env.sh
cp ${RPM_BUILD_DIR}/%{_final_name}/src/packages/rpm/init.d/hbase-master ${RPM_BUILD_DIR}%{_share_dir}/sbin/hbase-master
cp ${RPM_BUILD_DIR}/%{_final_name}/src/packages/rpm/init.d/hbase-regionserver ${RPM_BUILD_DIR}%{_share_dir}/sbin/hbase-regionserver
chmod 0755 ${RPM_BUILD_DIR}%{_share_dir}/sbin/*
rm -f ${RPM_BUILD_DIR}/%{_final_name}/*.txt
rm -f ${RPM_BUILD_DIR}/%{_final_name}/pom.xml
mv -f ${RPM_BUILD_DIR}/%{_final_name}/conf/* ${RPM_BUILD_DIR}%{_conf_dir}
rmdir ${RPM_BUILD_DIR}/%{_final_name}/conf
rm -rf ${RPM_BUILD_DIR}/%{_final_name}/src
mv -f ${RPM_BUILD_DIR}/%{_final_name}/* ${RPM_BUILD_DIR}%{_share_dir}
%install
cp -Rp ${RPM_BUILD_DIR} ${RPM_BUILD_ROOT}
%preun
${RPM_INSTALL_PREFIX0}/share/hbase/sbin/update-hbase-env.sh \
--prefix=${RPM_INSTALL_PREFIX0} \
--bin-dir=${RPM_INSTALL_PREFIX0}/bin \
--conf-dir=${RPM_INSTALL_PREFIX1} \
--log-dir=${RPM_INSTALL_PREFIX2} \
--pid-dir=${RPM_INSTALL_PREFIX3} \
--uninstall
%pre
getent group hadoop 2>/dev/null >/dev/null || /usr/sbin/groupadd -r hadoop
/usr/sbin/useradd --comment "HBase" --shell /bin/bash -M -r --groups hadoop --home %{_share_dir} hbase 2> /dev/null || :
%post
${RPM_INSTALL_PREFIX0}/share/hbase/sbin/update-hbase-env.sh \
--prefix=${RPM_INSTALL_PREFIX0} \
--bin-dir=${RPM_INSTALL_PREFIX0}/bin \
--conf-dir=${RPM_INSTALL_PREFIX1} \
--log-dir=${RPM_INSTALL_PREFIX2} \
--pid-dir=${RPM_INSTALL_PREFIX3}
%files
%defattr(-,root,root)
%{_prefix}
%config %{_conf_dir}

View File

@ -1,193 +0,0 @@
#!/bin/sh
# 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.
# This script configures hbase-env.sh and symlinkis directories for
# relocating RPM locations.
usage() {
echo "
usage: $0 <parameters>
Required parameters:
--prefix=PREFIX path to install into
Optional parameters:
--arch=i386 OS Architecture
--bin-dir=PREFIX/bin Executable directory
--conf-dir=/etc/hbase Configuration directory
--log-dir=/var/log/hbase Log directory
--pid-dir=/var/run PID file location
"
exit 1
}
OPTS=$(getopt \
-n $0 \
-o '' \
-l 'arch:' \
-l 'prefix:' \
-l 'bin-dir:' \
-l 'conf-dir:' \
-l 'lib-dir:' \
-l 'log-dir:' \
-l 'pid-dir:' \
-l 'uninstall' \
-- "$@")
if [ $? != 0 ] ; then
usage
fi
eval set -- "${OPTS}"
while true ; do
case "$1" in
--arch)
ARCH=$2 ; shift 2
;;
--prefix)
PREFIX=$2 ; shift 2
;;
--bin-dir)
BIN_DIR=$2 ; shift 2
;;
--log-dir)
LOG_DIR=$2 ; shift 2
;;
--lib-dir)
LIB_DIR=$2 ; shift 2
;;
--conf-dir)
CONF_DIR=$2 ; shift 2
;;
--pid-dir)
PID_DIR=$2 ; shift 2
;;
--uninstall)
UNINSTALL=1; shift
;;
--)
shift ; break
;;
*)
echo "Unknown option: $1"
usage
exit 1
;;
esac
done
for var in PREFIX; do
if [ -z "$(eval "echo \$$var")" ]; then
echo Missing param: $var
usage
fi
done
ARCH=${ARCH:-i386}
BIN_DIR=${BIN_DIR:-$PREFIX/share/hbase/bin}
CONF_DIR=${CONF_DIR:-$PREFIX/conf}
LIB_DIR=${LIB_DIR:-$PREFIX/lib}
LOG_DIR=${LOG_DIR:-$PREFIX/var/log}
PID_DIR=${PID_DIR:-$PREFIX/var/run}
UNINSTALL=${UNINSTALL:-0}
if [ "${ARCH}" != "i386" ]; then
LIB_DIR=${LIB_DIR}64
fi
[ -f /etc/default/hadoop-env.sh ] && . /etc/default/hadoop-env.sh
[ -f /etc/default/zookeeper-env.sh ] && . /etc/default/zookeeper-env.sh
if [ "${UNINSTALL}" -eq "1" ]; then
# Remove symlinks
if [ "${BIN_DIR}" != "${PREFIX}/share/hbase/bin" ]; then
for var in `ls ${PREFIX}/share/hbase/bin`; do
rm -f ${BIN_DIR}/${var}
done
fi
if [ -f /etc/default/hbase-env.sh ]; then
rm -f /etc/default/hbase-env.sh
fi
if [ "${CONF_DIR}" != "${PREFIX}/share/hbase/conf" ]; then
rm -f ${PREFIX}/share/hbase/conf
fi
rm -f ${PREFIX}/share/hbase/sbin/hbase-master
rm -f ${PREFIX}/share/hbase/sbin/hbase-regionserver
rm -f /etc/init.d/hbase-master
rm -f /etc/init.d/hbase-regionserver
else
# Create symlinks
if [ "${BIN_DIR}" != "${PREFIX}/share/hbase/bin" ]; then
for var in `ls ${PREFIX}/share/hbase/bin`; do
ln -sf ${PREFIX}/share/hbase/bin/${var} ${BIN_DIR}/${var}
done
fi
if [ "${CONF_DIR}" != "${PREFIX}/share/hbase/conf" ]; then
ln -sf ${CONF_DIR} ${PREFIX}/share/hbase/conf
fi
chmod 755 ${PREFIX}/share/hbase/sbin/*
ln -sf ${PREFIX}/share/hbase/sbin/hbase-master /etc/init.d/hbase-master
ln -sf ${PREFIX}/share/hbase/sbin/hbase-regionserver /etc/init.d/hbase-regionserver
ln -sf ${CONF_DIR}/hbase-env.sh /etc/default/hbase-env.sh
ln -sf ${CONF_DIR}/hbase-env.sh /etc/profile.d/hbase-env.sh
if [ -n "${HADOOP_HOME}" -a -d "${HADOOP_HOME}" ]; then
HADOOP_JARS=`ls ${HADOOP_HOME}/*.jar | tr '\n' ':'`
fi
if [ -n "${ZOOKEEPER_HOME}" -a -d "${ZOOKEEPER_HOME}/share/zookeeper" ]; then
ZOOKEEPER_JARS=`ls ${ZOOKEEPER_HOME}/share/zookeeper/*.jar | tr '\n' ':'`
fi
mkdir -p ${PID_DIR}
mkdir -p ${LOG_DIR}
chown hbase ${PID_DIR}
chown hbase ${LOG_DIR}
TFILE="/tmp/$(basename $0).$$.tmp"
grep -v "^export HBASE_HOME" ${CONF_DIR}/hbase-env.sh | \
grep -v "^export HBASE_CONF_DIR" | \
grep -v "^export HBASE_CLASSPATH" | \
grep -v "^export HBASE_MANAGES_ZK" | \
grep -v "^export HBASE_IDENT_STRING" | \
grep -v "^export HBASE_PID_DIR" | \
grep -v "^export HBASE_LOG_DIR" | \
grep -v "^export JAVA_HOME" > ${TFILE}
if [ -z "${JAVA_HOME}" ]; then
if [ -e /etc/lsb-release ]; then
JAVA_HOME=`update-alternatives --config java | grep java | cut -f2 -d':' | cut -f2 -d' ' | sed -e 's/\/bin\/java//'`
else
JAVA_HOME=/usr/java/default
fi
fi
if [ "${JAVA_HOME}xxx" != "xxx" ]; then
echo "export JAVA_HOME=${JAVA_HOME}" >> ${TFILE}
fi
echo "export HBASE_IDENT_STRING=\`whoami\`" >> ${TFILE}
echo "export HBASE_HOME=${PREFIX}/share/hbase" >> ${TFILE}
echo "export HBASE_CONF_DIR=${CONF_DIR}" >> ${TFILE}
echo "export HBASE_CLASSPATH=${CONF_DIR}:${HADOOP_CONF_DIR}:${HADOOP_JARS}:${ZOOKEEPER_JARS}" >> ${TFILE}
echo "export HBASE_MANAGES_ZK=false" >> ${TFILE}
echo "export HBASE_PID_DIR=${PID_DIR}" >> ${TFILE}
echo "export HBASE_LOG_DIR=${LOG_DIR}" >> ${TFILE}
cp ${TFILE} ${CONF_DIR}/hbase-env.sh
rm -f ${TFILE}
fi

View File

@ -31,27 +31,25 @@
<description>Common functionality for HBase</description> <description>Common functionality for HBase</description>
<build> <build>
<pluginManagement> <plugins>
<plugins> <plugin>
<plugin> <artifactId>maven-surefire-plugin</artifactId>
<artifactId>maven-surefire-plugin</artifactId> <!-- Always skip the second part executions, since we only run
<!-- Always skip the second part executions, since we only run simple unit tests in this module -->
simple unit tests in this module --> <executions>
<executions> <execution>
<execution> <id>secondPartTestsExecution</id>
<id>secondPartTestsExecution</id> <phase>test</phase>
<phase>test</phase> <goals>
<goals> <goal>test</goal>
<goal>test</goal> </goals>
</goals> <configuration>
<configuration> <skip>true</skip>
<skip>true</skip> </configuration>
</configuration> </execution>
</execution> </executions>
</executions> </plugin>
</plugin> </plugins>
</plugins>
</pluginManagement>
</build> </build>
<dependencies> <dependencies>
@ -207,4 +205,4 @@
</build> </build>
</profile> </profile>
</profiles> </profiles>
</project> </project>

View File

@ -1,6 +1,6 @@
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" <?xml version="1.0"?>
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> <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">
<!-- <!--
/** /**
* Licensed to the Apache Software Foundation (ASF) under one * Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file * or more contributor license agreements. See the NOTICE file
@ -18,20 +18,17 @@
* See the License for the specific language governing permissions and * See the License for the specific language governing permissions and
* limitations under the License. * limitations under the License.
*/ */
--> -->
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<parent> <parent>
<artifactId>hbase</artifactId> <artifactId>hbase</artifactId>
<groupId>org.apache.hbase</groupId> <groupId>org.apache.hbase</groupId>
<version>0.95-SNAPSHOT</version> <version>0.95-SNAPSHOT</version>
<relativePath>..</relativePath> <relativePath>..</relativePath>
</parent> </parent>
<artifactId>hbase-server</artifactId> <artifactId>hbase-server</artifactId>
<name>HBase - Server</name> <name>HBase - Server</name>
<description>Main functionality for HBase</description> <description>Main functionality for HBase</description>
<build> <build>
<!-- Makes sure the resources get added before they are processed <!-- Makes sure the resources get added before they are processed
by placing this first --> by placing this first -->
@ -59,11 +56,11 @@
</includes> </includes>
</testResource> </testResource>
</testResources> </testResources>
<plugins> <plugins>
<plugin> <plugin>
<groupId>org.apache.avro</groupId> <groupId>org.apache.avro</groupId>
<artifactId>avro-maven-plugin</artifactId> <artifactId>avro-maven-plugin</artifactId>
<version>${avro.version}</version>
<executions> <executions>
<execution> <execution>
<id>generate-avro-sources</id> <id>generate-avro-sources</id>
@ -78,7 +75,6 @@
<outputDirectory>${project.build.directory}/generated-sources/java</outputDirectory> <outputDirectory>${project.build.directory}/generated-sources/java</outputDirectory>
</configuration> </configuration>
</plugin> </plugin>
<!-- Run with -Dmaven.test.skip.exec=true to build -tests.jar without running <!-- Run with -Dmaven.test.skip.exec=true to build -tests.jar without running
tests (this is needed for upstream projects whose tests need this jar simply for tests (this is needed for upstream projects whose tests need this jar simply for
compilation) --> compilation) -->
@ -109,7 +105,6 @@
<groupId>org.apache.maven.plugins</groupId> <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-source-plugin</artifactId> <artifactId>maven-source-plugin</artifactId>
</plugin> </plugin>
<!-- General ant tasks, bound to different build phases --> <!-- General ant tasks, bound to different build phases -->
<plugin> <plugin>
<artifactId>maven-antrun-plugin</artifactId> <artifactId>maven-antrun-plugin</artifactId>
@ -120,39 +115,25 @@
<phase>generate-sources</phase> <phase>generate-sources</phase>
<configuration> <configuration>
<target> <target>
<property name="build.webapps" <property name="build.webapps" location="${project.build.directory}/hbase-webapps"/>
location="${project.build.directory}/hbase-webapps" /> <property name="src.webapps" location="${basedir}/src/main/resources/hbase-webapps"/>
<property name="src.webapps" <property name="generated.sources" location="${project.build.directory}/generated-sources"/>
location="${basedir}/src/main/resources/hbase-webapps" /> <mkdir dir="${build.webapps}"/>
<property name="generated.sources"
location="${project.build.directory}/generated-sources" />
<mkdir dir="${build.webapps}" />
<copy todir="${build.webapps}"> <copy todir="${build.webapps}">
<fileset dir="${src.webapps}"> <fileset dir="${src.webapps}">
<exclude name="**/*.jsp" /> <exclude name="**/*.jsp"/>
<exclude name="**/.*" /> <exclude name="**/.*"/>
<exclude name="**/*~" /> <exclude name="**/*~"/>
</fileset> </fileset>
</copy> </copy>
<!--The compile.classpath is passed in by maven --> <!--The compile.classpath is passed in by maven -->
<taskdef classname="org.apache.jasper.JspC" name="jspcompiler" <taskdef classname="org.apache.jasper.JspC" name="jspcompiler" classpathref="maven.compile.classpath"/>
classpathref="maven.compile.classpath" /> <mkdir dir="${build.webapps}/master/WEB-INF"/>
<jspcompiler uriroot="${src.webapps}/master" outputdir="${generated.sources}/java" package="org.apache.hadoop.hbase.generated.master" webxml="${build.webapps}/master/WEB-INF/web.xml"/>
<mkdir dir="${build.webapps}/master/WEB-INF" /> <mkdir dir="${build.webapps}/regionserver/WEB-INF"/>
<jspcompiler uriroot="${src.webapps}/master" <jspcompiler uriroot="${src.webapps}/regionserver" outputdir="${generated.sources}/java" package="org.apache.hadoop.hbase.generated.regionserver" webxml="${build.webapps}/regionserver/WEB-INF/web.xml"/>
outputdir="${generated.sources}/java" package="org.apache.hadoop.hbase.generated.master"
webxml="${build.webapps}/master/WEB-INF/web.xml" />
<mkdir dir="${build.webapps}/regionserver/WEB-INF" />
<jspcompiler uriroot="${src.webapps}/regionserver"
outputdir="${generated.sources}/java" package="org.apache.hadoop.hbase.generated.regionserver"
webxml="${build.webapps}/regionserver/WEB-INF/web.xml" />
<exec executable="sh"> <exec executable="sh">
<arg <arg line="${basedir}/src/saveVersion.sh ${project.version} ${generated.sources}/java"/>
line="${basedir}/src/saveVersion.sh ${project.version} ${generated.sources}/java" />
</exec> </exec>
</target> </target>
</configuration> </configuration>
@ -166,7 +147,7 @@
<groupId>org.codehaus.mojo</groupId> <groupId>org.codehaus.mojo</groupId>
<artifactId>build-helper-maven-plugin</artifactId> <artifactId>build-helper-maven-plugin</artifactId>
<executions> <executions>
<!-- Add the generated sources --> <!-- Add the generated sources -->
<execution> <execution>
<id>jspcSource-packageInfo-Avro-source</id> <id>jspcSource-packageInfo-Avro-source</id>
<phase>generate-sources</phase> <phase>generate-sources</phase>
@ -186,16 +167,16 @@
<groupId>org.jamon</groupId> <groupId>org.jamon</groupId>
<artifactId>jamon-maven-plugin</artifactId> <artifactId>jamon-maven-plugin</artifactId>
<executions> <executions>
<execution> <execution>
<phase>generate-sources</phase> <phase>generate-sources</phase>
<goals> <goals>
<goal>translate</goal> <goal>translate</goal>
</goals> </goals>
<configuration> <configuration>
<templateSourceDir>src/main/jamon</templateSourceDir> <templateSourceDir>src/main/jamon</templateSourceDir>
<templateOutputDir>target/generated-jamon</templateOutputDir> <templateOutputDir>target/generated-jamon</templateOutputDir>
</configuration> </configuration>
</execution> </execution>
</executions> </executions>
</plugin> </plugin>
<!-- General plugins --> <!-- General plugins -->
@ -223,19 +204,17 @@
</additionalConfig> </additionalConfig>
</configuration> </configuration>
</plugin> </plugin>
<!-- Run findbugs --> <!-- Run findbugs -->
<plugin> <plugin>
<groupId>org.codehaus.mojo</groupId> <groupId>org.codehaus.mojo</groupId>
<artifactId>findbugs-maven-plugin</artifactId> <artifactId>findbugs-maven-plugin</artifactId>
</plugin> </plugin>
<!-- Testing plugins --> <!-- Testing plugins -->
<plugin> <plugin>
<artifactId>maven-surefire-plugin</artifactId> <artifactId>maven-surefire-plugin</artifactId>
</plugin> </plugin>
</plugins> </plugins>
<!-- General Resources -->
<!-- General Resources -->
<pluginManagement> <pluginManagement>
<plugins> <plugins>
<!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on <!--This plugin's configuration is used to store Eclipse m2e settings only. It has no influence on
@ -257,7 +236,7 @@
</goals> </goals>
</pluginExecutionFilter> </pluginExecutionFilter>
<action> <action>
<ignore></ignore> <ignore/>
</action> </action>
</pluginExecution> </pluginExecution>
<pluginExecution> <pluginExecution>
@ -270,7 +249,7 @@
</goals> </goals>
</pluginExecutionFilter> </pluginExecutionFilter>
<action> <action>
<ignore></ignore> <ignore/>
</action> </action>
</pluginExecution> </pluginExecution>
<pluginExecution> <pluginExecution>
@ -284,7 +263,7 @@
</goals> </goals>
</pluginExecutionFilter> </pluginExecutionFilter>
<action> <action>
<ignore></ignore> <ignore/>
</action> </action>
</pluginExecution> </pluginExecution>
</pluginExecutions> </pluginExecutions>
@ -303,7 +282,6 @@
</plugins> </plugins>
</pluginManagement> </pluginManagement>
</build> </build>
<dependencies> <dependencies>
<!-- Intra-project dependencies --> <!-- Intra-project dependencies -->
<dependency> <dependency>
@ -362,10 +340,22 @@
<dependency> <dependency>
<groupId>org.apache.avro</groupId> <groupId>org.apache.avro</groupId>
<artifactId>avro</artifactId> <artifactId>avro</artifactId>
<version>${avro.version}</version>
<exclusions>
<exclusion>
<groupId>com.thoughtworks.paranamer</groupId>
<artifactId>paranamer</artifactId>
</exclusion>
<exclusion>
<groupId>com.thoughtworks.paranamer</groupId>
<artifactId>paranamer-ant</artifactId>
</exclusion>
</exclusions>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.apache.avro</groupId> <groupId>org.apache.avro</groupId>
<artifactId>avro-ipc</artifactId> <artifactId>avro-ipc</artifactId>
<version>${avro.version}</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.apache.zookeeper</groupId> <groupId>org.apache.zookeeper</groupId>
@ -435,7 +425,6 @@
<groupId>org.jamon</groupId> <groupId>org.jamon</groupId>
<artifactId>jamon-runtime</artifactId> <artifactId>jamon-runtime</artifactId>
</dependency> </dependency>
<!-- REST dependencies --> <!-- REST dependencies -->
<dependency> <dependency>
<groupId>com.google.protobuf</groupId> <groupId>com.google.protobuf</groupId>
@ -462,9 +451,7 @@
<artifactId>stax-api</artifactId> <artifactId>stax-api</artifactId>
</dependency> </dependency>
</dependencies> </dependencies>
<profiles> <profiles>
<!-- Skip the tests in this module --> <!-- Skip the tests in this module -->
<profile> <profile>
<id>skip-server-tests</id> <id>skip-server-tests</id>
@ -478,9 +465,8 @@
<surefire.skipSecondPart>true</surefire.skipSecondPart> <surefire.skipSecondPart>true</surefire.skipSecondPart>
</properties> </properties>
</profile> </profile>
<!-- Special builds --> <!-- Special builds -->
<profile> <profile>
<id>hadoop-snappy</id> <id>hadoop-snappy</id>
<activation> <activation>
<activeByDefault>false</activeByDefault> <activeByDefault>false</activeByDefault>
@ -496,11 +482,9 @@
</dependency> </dependency>
</dependencies> </dependencies>
</profile> </profile>
<!-- Profiles for building against different hadoop versions -->
<!-- Profiles for building against different hadoop versions -->
<!-- There are a lot of common dependencies used here, should investigate <!-- There are a lot of common dependencies used here, should investigate
if we can combine these profiles somehow --> if we can combine these profiles somehow -->
<!-- profile against Hadoop 1.0.x: This is the default. It has to have the same <!-- profile against Hadoop 1.0.x: This is the default. It has to have the same
activation property as the parent Hadoop 1.0.x profile to make sure it gets run at activation property as the parent Hadoop 1.0.x profile to make sure it gets run at
the same time. --> the same time. -->
@ -521,8 +505,7 @@
<artifactId>hadoop-test</artifactId> <artifactId>hadoop-test</artifactId>
</dependency> </dependency>
</dependencies> </dependencies>
</profile> </profile>
<!-- <!--
profile for building against Hadoop 2.0.0-alpha. Activate using: profile for building against Hadoop 2.0.0-alpha. Activate using:
mvn -Dhadoop.profile=2.0 mvn -Dhadoop.profile=2.0
@ -573,7 +556,6 @@
</plugins> </plugins>
</build> </build>
</profile> </profile>
<!-- <!--
profile for building against Hadoop 3.0.x. Activate using: profile for building against Hadoop 3.0.x. Activate using:
mvn -Dhadoop.profile=3.0 mvn -Dhadoop.profile=3.0

View File

@ -1,156 +0,0 @@
<?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/maven-v4_0_0.xsd">
<!--
/**
* 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.
*/
-->
<modelVersion>4.0.0</modelVersion>
<parent>
<artifactId>hbase</artifactId>
<groupId>org.apache.hbase</groupId>
<version>0.95-SNAPSHOT</version>
</parent>
<artifactId>hbase-site</artifactId>
<packaging>pom</packaging>
<name>HBase - Site</name>
<description>HBase's website - overall site, reference guide, and javadocs come together here
</description>
<dependencies>
<dependency>
<groupId>org.apache.hbase</groupId>
<artifactId>hbase-server</artifactId>
</dependency>
</dependencies>
<build>
<plugins>
<!-- Assemble the javadocs from the dependent projects.
Relies on the use of javadoc:aggregate goal -->
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<executions>
<execution>
<id>copy-javadocs</id>
<phase>pre-site</phase>
<goals>
<goal>copy-resources</goal>
</goals>
<configuration>
<outputDirectory>target/site/apidocs</outputDirectory>
<resources>
<resource>
<directory>../target/apidocs</directory>
<includes>
<include>**/**</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
</executions>
</plugin>
<!-- This has to come before the docbx plugin so hbase-default.xml gets transformed
properly -->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>xml-maven-plugin</artifactId>
<executions>
<execution>
<goals>
<goal>transform</goal>
</goals>
<phase>pre-site</phase>
</execution>
</executions>
<configuration>
<transformationSets>
<transformationSet>
<!-- Ugly dependency on project structure -->
<dir>../hbase-server/src/main/resources/</dir>
<includes>
<include>hbase-default.xml</include>
</includes>
<stylesheet>${basedir}/src/xslt/configuration_to_docbook_section.xsl</stylesheet>
<outputDir>${basedir}/target/site/</outputDir>
</transformationSet>
</transformationSets>
</configuration>
</plugin>
<plugin>
<groupId>com.agilejava.docbkx</groupId>
<artifactId>docbkx-maven-plugin</artifactId>
<executions>
<execution>
<id>multipage</id>
<phase>pre-site</phase>
<configuration>
<xincludeSupported>true</xincludeSupported>
<navigShowtitles>true</navigShowtitles>
<chunkedOutput>true</chunkedOutput>
<useIdAsFilename>true</useIdAsFilename>
<sectionAutolabelMaxDepth>100</sectionAutolabelMaxDepth>
<sectionAutolabel>true</sectionAutolabel>
<sectionLabelIncludesComponentLabel>true</sectionLabelIncludesComponentLabel>
<targetDirectory>target/site/</targetDirectory>
<htmlStylesheet>${basedir}/src/resources/css/freebsd_docbook.css</htmlStylesheet>
<htmlCustomization>${basedir}/src/docbkx/customization.xsl</htmlCustomization>
<imgSrcPath>${basedir}/src/resources/images/</imgSrcPath>
<tocMaxDepth>2</tocMaxDepth>
<insertXrefPageNumber>yes</insertXrefPageNumber>
</configuration>
<goals>
<goal>generate-html</goal>
</goals>
</execution>
<execution>
<id>onepage</id>
<phase>pre-site</phase>
<configuration>
<xincludeSupported>true</xincludeSupported>
<useIdAsFilename>true</useIdAsFilename>
<sectionAutolabelMaxDepth>100</sectionAutolabelMaxDepth>
<sectionAutolabel>true</sectionAutolabel>
<sectionLabelIncludesComponentLabel>true</sectionLabelIncludesComponentLabel>
<targetDirectory>target/site/</targetDirectory>
<htmlStylesheet>css/freebsd_docbook.css</htmlStylesheet>
<imgSrcPath>images/</imgSrcPath>
<tocMaxDepth>2</tocMaxDepth>
<insertXrefPageNumber>yes</insertXrefPageNumber>
</configuration>
<goals>
<goal>generate-html</goal>
</goals>
</execution>
</executions>
</plugin>
<!-- Website/Reference Guide building -->
<plugin>
<artifactId>maven-site-plugin</artifactId>
<configuration>
<inputEncoding>UTF-8</inputEncoding>
<outputEncoding>UTF-8</outputEncoding>
<templateFile>src/site/site.vm</templateFile>
</configuration>
</plugin>
</plugins>
</build>
</project>

414
pom.xml
View File

@ -1,7 +1,6 @@
<?xml version="1.0" encoding="UTF-8"?> <?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" <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">
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> <!--
<!--
/** /**
* Licensed to the Apache Software Foundation (ASF) under one * Licensed to the Apache Software Foundation (ASF) under one
* or more contributor license agreements. See the NOTICE file * or more contributor license agreements. See the NOTICE file
@ -21,24 +20,13 @@
*/ */
--> -->
<modelVersion>4.0.0</modelVersion> <modelVersion>4.0.0</modelVersion>
<!--To build a release I do this:
$ MAVEN_OPTS="-Xmx2g" mvn clean site install assembly:single -Prelease
To build the site:
$ MAVEN_OPTS="-Xmx2g" ~/bin/apache-maven-3.0.4/bin/mvn clean -DskipTests site
Use mvn3.
-->
<parent> <parent>
<groupId>org.apache</groupId> <groupId>org.apache</groupId>
<artifactId>apache</artifactId> <artifactId>apache</artifactId>
<version>8</version> <version>8</version>
<relativePath></relativePath><!-- no parent resolution --> <relativePath/>
<!-- no parent resolution -->
</parent> </parent>
<groupId>org.apache.hbase</groupId> <groupId>org.apache.hbase</groupId>
<artifactId>hbase</artifactId> <artifactId>hbase</artifactId>
<packaging>pom</packaging> <packaging>pom</packaging>
@ -51,30 +39,23 @@
of commodity hardware. of commodity hardware.
</description> </description>
<url>http://hbase.apache.org</url> <url>http://hbase.apache.org</url>
<modules> <modules>
<module>hbase-assembly</module>
<module>hbase-server</module> <module>hbase-server</module>
<module>hbase-site</module>
<module>hbase-common</module> <module>hbase-common</module>
</modules> </modules>
<scm> <scm>
<connection>scm:svn:http://svn.apache.org/repos/asf/hbase/trunk</connection> <connection>scm:svn:http://svn.apache.org/repos/asf/hbase/trunk</connection>
<developerConnection>scm:svn:https://svn.apache.org/repos/asf/hbase/trunk</developerConnection> <developerConnection>scm:svn:https://svn.apache.org/repos/asf/hbase/trunk</developerConnection>
<url>http://svn.apache.org/viewvc/hbase/trunk</url> <url>http://svn.apache.org/viewvc/hbase/trunk</url>
</scm> </scm>
<issueManagement> <issueManagement>
<system>JIRA</system> <system>JIRA</system>
<url>http://issues.apache.org/jira/browse/HBASE</url> <url>http://issues.apache.org/jira/browse/HBASE</url>
</issueManagement> </issueManagement>
<ciManagement> <ciManagement>
<system>hudson</system> <system>hudson</system>
<url>http://hudson.zones.apache.org/hudson/view/HBase/job/HBase-TRUNK/</url> <url>http://hudson.zones.apache.org/hudson/view/HBase/job/HBase-TRUNK/</url>
</ciManagement> </ciManagement>
<mailingLists> <mailingLists>
<mailingList> <mailingList>
<name>User List</name> <name>User List</name>
@ -106,7 +87,7 @@
<unsubscribe>commits-unsubscribe@hbase.apache.org</unsubscribe> <unsubscribe>commits-unsubscribe@hbase.apache.org</unsubscribe>
<archive>http://mail-archives.apache.org/mod_mbox/hbase-commits/</archive> <archive>http://mail-archives.apache.org/mod_mbox/hbase-commits/</archive>
<otherArchives> <otherArchives>
<otherArchive>http://hbase.apache.org/mail/commits/</otherArchive> <otherArchive>http://hbase.apache.org/mail/commits/</otherArchive>
</otherArchives> </otherArchives>
</mailingList> </mailingList>
<mailingList> <mailingList>
@ -115,11 +96,10 @@
<unsubscribe>issues-unsubscribe@hbase.apache.org</unsubscribe> <unsubscribe>issues-unsubscribe@hbase.apache.org</unsubscribe>
<archive>http://mail-archives.apache.org/mod_mbox/hbase-issues/</archive> <archive>http://mail-archives.apache.org/mod_mbox/hbase-issues/</archive>
<otherArchives> <otherArchives>
<otherArchive>http://hbase.apache.org/mail/issues/</otherArchive> <otherArchive>http://hbase.apache.org/mail/issues/</otherArchive>
</otherArchives> </otherArchives>
</mailingList> </mailingList>
</mailingLists> </mailingLists>
<developers> <developers>
<developer> <developer>
<id>apurtell</id> <id>apurtell</id>
@ -266,7 +246,6 @@
<organizationUrl>http://www.facebook.com</organizationUrl> <organizationUrl>http://www.facebook.com</organizationUrl>
</developer> </developer>
</developers> </developers>
<repositories> <repositories>
<repository> <repository>
<id>apache release</id> <id>apache release</id>
@ -324,7 +303,6 @@
</releases> </releases>
</repository> </repository>
</repositories> </repositories>
<pluginRepositories> <pluginRepositories>
<pluginRepository> <pluginRepository>
<id>ghelmling.testing</id> <id>ghelmling.testing</id>
@ -338,7 +316,6 @@
</releases> </releases>
</pluginRepository> </pluginRepository>
</pluginRepositories> </pluginRepositories>
<build> <build>
<pluginManagement> <pluginManagement>
<plugins> <plugins>
@ -356,26 +333,16 @@
</execution> </execution>
</executions> </executions>
<configuration> <configuration>
<!--Pass -DskipJavadoc=true or -DskipJavadoc on command-line to skip javadoc building-->
<skip>${skipJavadoc}</skip>
<docfilessubdirs>true</docfilessubdirs> <docfilessubdirs>true</docfilessubdirs>
<excludePackageNames>org.apache.hadoop.hbase.protobuf.generated.*:org.apache.hadoop.hbase.avro.generated.*:org.apache.hadoop.hbase.thrift.generated:org.apache.hadoop.hbase.rest.generated</excludePackageNames> <excludePackageNames>org.apache.hadoop.hbase.protobuf.generated.*:org.apache.hadoop.hbase.avro.generated.*:org.apache.hadoop.hbase.thrift.generated:org.apache.hadoop.hbase.rest.generated</excludePackageNames>
<debug>true</debug> <debug>true</debug>
<maxmemory>2g</maxmemory> <maxmemory>2g</maxmemory>
<verbose>true</verbose> <verbose>true</verbose>
<reportOutputDirectory>target</reportOutputDirectory> <reportOutputDirectory>target/apidocs</reportOutputDirectory>
</configuration> </configuration>
</plugin> </plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>${maven.site.version}</version>
<dependencies>
<dependency><!-- add support for ssh/scp -->
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-ssh</artifactId>
<version>2.2</version>
</dependency>
</dependencies>
</plugin>
<plugin> <plugin>
<groupId>org.apache.maven.plugins</groupId> <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-release-plugin</artifactId> <artifactId>maven-release-plugin</artifactId>
@ -409,7 +376,6 @@
<showDeprecation>false</showDeprecation> <showDeprecation>false</showDeprecation>
</configuration> </configuration>
</plugin> </plugin>
<!-- Test oriented plugins --> <!-- Test oriented plugins -->
<plugin> <plugin>
<artifactId>maven-surefire-plugin</artifactId> <artifactId>maven-surefire-plugin</artifactId>
@ -432,7 +398,8 @@
<parallel>${surefire.firstPartParallel}</parallel> <parallel>${surefire.firstPartParallel}</parallel>
<perCoreThreadCount>false</perCoreThreadCount> <perCoreThreadCount>false</perCoreThreadCount>
<threadCount>${surefire.firstPartThreadCount}</threadCount> <threadCount>${surefire.firstPartThreadCount}</threadCount>
<parallel>classes</parallel><!-- surefire hack, if not we're <parallel>classes</parallel>
<!-- surefire hack, if not we're
using method parallelization class ! --> using method parallelization class ! -->
<testFailureIgnore>false</testFailureIgnore> <testFailureIgnore>false</testFailureIgnore>
<forkedProcessTimeoutInSeconds>900</forkedProcessTimeoutInSeconds> <forkedProcessTimeoutInSeconds>900</forkedProcessTimeoutInSeconds>
@ -453,7 +420,8 @@
<forkMode>perThread</forkMode> <forkMode>perThread</forkMode>
<perCoreThreadCount>false</perCoreThreadCount> <perCoreThreadCount>false</perCoreThreadCount>
<threadCount>${surefire.secondPartThreadCount}</threadCount> <threadCount>${surefire.secondPartThreadCount}</threadCount>
<parallel>classes</parallel><!-- surefire hack, if not we're using method <parallel>classes</parallel>
<!-- surefire hack, if not we're using method
parallelisation class ! --> parallelisation class ! -->
<groups>${surefire.secondPartGroups}</groups> <groups>${surefire.secondPartGroups}</groups>
</configuration> </configuration>
@ -487,7 +455,6 @@
<effort>Max</effort> <effort>Max</effort>
</configuration> </configuration>
</plugin> </plugin>
<!-- Build plugins --> <!-- Build plugins -->
<plugin> <plugin>
<groupId>org.apache.avro</groupId> <groupId>org.apache.avro</groupId>
@ -508,13 +475,6 @@
<artifactId>jamon-maven-plugin</artifactId> <artifactId>jamon-maven-plugin</artifactId>
<version>${jamon.plugin.version}</version> <version>${jamon.plugin.version}</version>
</plugin> </plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>${maven.resources.plugin.version}</version><!--$NO-MVN-MAN-VER$ -->
<configuration>
<escapeString>\</escapeString>
</configuration>
</plugin>
<!-- Make a jar and put the sources in the jar. <!-- Make a jar and put the sources in the jar.
In the parent pom, so submodules will do the right thing. --> In the parent pom, so submodules will do the right thing. -->
<plugin> <plugin>
@ -549,19 +509,12 @@
</excludes> </excludes>
</configuration> </configuration>
</plugin> </plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>${maven.assembly.version}</version>
</plugin>
<!-- General config for eclipse classpath/settings --> <!-- General config for eclipse classpath/settings -->
<plugin> <plugin>
<groupId>org.apache.maven.plugins</groupId> <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-eclipse-plugin</artifactId> <artifactId>maven-eclipse-plugin</artifactId>
<version>2.8</version> <version>2.8</version>
</plugin> </plugin>
<!--This plugin's configuration is used to store Eclipse m2e settings only. It <!--This plugin's configuration is used to store Eclipse m2e settings only. It
has no influence on the Maven build itself. m2e does not provide any safeguards against has no influence on the Maven build itself. m2e does not provide any safeguards against
rogue maven plugins that leak classloaders, modify random files inside workspace rogue maven plugins that leak classloaders, modify random files inside workspace
@ -573,10 +526,10 @@
<artifactId>lifecycle-mapping</artifactId> <artifactId>lifecycle-mapping</artifactId>
<version>1.0.0</version> <version>1.0.0</version>
</plugin> </plugin>
<plugin>
<plugin> <!-- excludes are inherited --> <!-- excludes are inherited -->
<groupId>org.apache.rat</groupId> <groupId>org.apache.rat</groupId>
<artifactId>apache-rat-plugin</artifactId> <artifactId>apache-rat-plugin</artifactId>
<version>0.8</version> <version>0.8</version>
<configuration> <configuration>
<excludes> <excludes>
@ -591,16 +544,19 @@
<exclude>**/generated/**</exclude> <exclude>**/generated/**</exclude>
<exclude>**/conf/*</exclude> <exclude>**/conf/*</exclude>
<exclude>**/*.avpr</exclude> <exclude>**/*.avpr</exclude>
<exclude>**/*.svg</exclude> <!-- vector graphics --> <exclude>**/*.svg</exclude>
<exclude>**/*.vm</exclude> <!-- apache doxia generated --> <!-- vector graphics -->
<exclude>**/*.vm</exclude>
<!-- apache doxia generated -->
<exclude>**/control</exclude> <exclude>**/control</exclude>
<exclude>**/conffile</exclude> <exclude>**/conffile</exclude>
<exclude>docs/*</exclude> <!-- auto-gen docs --> <exclude>docs/*</exclude>
<!-- auto-gen docs -->
<!--It don't like freebsd license--> <!--It don't like freebsd license-->
<exclude>**/src/site/resources/css/freebsd_docbook.css</exclude> <exclude>**/src/site/resources/css/freebsd_docbook.css</exclude>
</excludes> </excludes>
</configuration> </configuration>
</plugin> </plugin>
<!-- Website/Reference Guide building --> <!-- Website/Reference Guide building -->
<plugin> <plugin>
<groupId>com.agilejava.docbkx</groupId> <groupId>com.agilejava.docbkx</groupId>
@ -622,14 +578,174 @@
</plugin> </plugin>
</plugins> </plugins>
</pluginManagement> </pluginManagement>
<!-- Plugins inherited by all modules --> <!-- Plugins inherited by all modules -->
<plugins> <plugins>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<version>${maven.assembly.version}</version>
<inherited>false</inherited>
<configuration>
<skipAssembly>false</skipAssembly>
<attach>false</attach>
<tarLongFileMode>gnu</tarLongFileMode>
<appendAssemblyId>false</appendAssemblyId>
<descriptors>
<descriptor>src/assembly/all.xml</descriptor>
</descriptors>
</configuration>
</plugin>
<!-- All submodules build their javadocs --> <!-- All submodules build their javadocs -->
<plugin> <plugin>
<groupId>org.apache.maven.plugins</groupId> <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-javadoc-plugin</artifactId> <artifactId>maven-javadoc-plugin</artifactId>
</plugin> </plugin>
<!--The below plugins are about site generation.
They are all marked as not to be in herited by child
modules. The plugins are meant to run here in the
parent project only.
-->
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>xml-maven-plugin</artifactId>
<version>1.0-beta-3</version>
<inherited>false</inherited>
<executions>
<execution>
<goals>
<goal>transform</goal>
</goals>
<phase>pre-site</phase>
</execution>
</executions>
<configuration>
<transformationSets>
<transformationSet>
<!--Reaching down into sub-module for docs-->
<dir>${basedir}/hbase-server/src/main/resources/</dir>
<includes>
<include>hbase-default.xml</include>
</includes>
<stylesheet>${basedir}/src/xslt/configuration_to_docbook_section.xsl</stylesheet>
<outputDir>${basedir}/target/site</outputDir>
</transformationSet>
</transformationSets>
</configuration>
</plugin>
<plugin>
<groupId>com.agilejava.docbkx</groupId>
<artifactId>docbkx-maven-plugin</artifactId>
<version>2.0.14</version>
<inherited>false</inherited>
<dependencies>
<dependency>
<groupId>org.docbook</groupId>
<artifactId>docbook-xml</artifactId>
<version>4.4</version>
<scope>runtime</scope>
</dependency>
</dependencies>
<configuration>
<useIdAsFilename>true</useIdAsFilename>
<sectionAutolabelMaxDepth>100</sectionAutolabelMaxDepth>
<sectionAutolabel>true</sectionAutolabel>
<sectionLabelIncludesComponentLabel>true</sectionLabelIncludesComponentLabel>
<targetDirectory>target/docbkx</targetDirectory>
<htmlStylesheet>${basedir}/src/resources/css/freebsd_docbook.css</htmlStylesheet>
<htmlCustomization>${basedir}/src/docbkx/customization.xsl</htmlCustomization>
<tocMaxDepth>2</tocMaxDepth>
<insertXrefPageNumber>yes</insertXrefPageNumber>
</configuration>
<executions>
<execution>
<id>multipage</id>
<goals>
<goal>generate-html</goal>
</goals>
<phase>pre-site</phase>
<configuration>
<navigShowtitles>true</navigShowtitles>
<chunkedOutput>true</chunkedOutput>
<imgSrcPath>../images/</imgSrcPath>
</configuration>
</execution>
<execution>
<id>onepage</id>
<goals>
<goal>generate-html</goal>
</goals>
<phase>pre-site</phase>
<configuration>
<imgSrcPath>images/</imgSrcPath>
</configuration>
</execution>
</executions>
</plugin>
<plugin>
<artifactId>maven-resources-plugin</artifactId>
<version>${maven.resources.plugin.version}</version>
<!--$NO-MVN-MAN-VER$ -->
<inherited>false</inherited>
<executions>
<execution>
<id>copy-javadocs</id>
<goals>
<goal>copy-resources</goal>
</goals>
<phase>pre-site</phase>
<configuration>
<outputDirectory>target/site/apidocs</outputDirectory>
<resources>
<resource>
<directory>${basedir}/target/apidocs</directory>
<includes>
<include>**/**</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
<execution>
<id>copy-docbkx</id>
<goals>
<goal>copy-resources</goal>
</goals>
<phase>pre-site</phase>
<configuration>
<outputDirectory>target/site</outputDirectory>
<resources>
<resource>
<directory>${basedir}/target/docbkx</directory>
<includes>
<include>**/**</include>
</includes>
</resource>
</resources>
</configuration>
</execution>
</executions>
<configuration>
<escapeString>\</escapeString>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
<version>${maven.site.version}</version>
<inherited>false</inherited>
<dependencies>
<dependency>
<!-- add support for ssh/scp -->
<groupId>org.apache.maven.wagon</groupId>
<artifactId>wagon-ssh</artifactId>
<version>2.2</version>
</dependency>
</dependencies>
<configuration>
<inputEncoding>UTF-8</inputEncoding>
<outputEncoding>UTF-8</outputEncoding>
<templateFile>${basedir}/src/site/site.vm</templateFile>
</configuration>
</plugin>
<!-- Special configuration for findbugs just in the parent so <!-- Special configuration for findbugs just in the parent so
the filter file location can be more general (see definition in pluginManagement) --> the filter file location can be more general (see definition in pluginManagement) -->
<plugin> <plugin>
@ -637,27 +753,18 @@
<artifactId>findbugs-maven-plugin</artifactId> <artifactId>findbugs-maven-plugin</artifactId>
<executions> <executions>
<execution> <execution>
<inherited>false</inherited> <inherited>false</inherited>
<goals> <goals>
<goal>findbugs</goal> <goal>findbugs</goal>
</goals> </goals>
<configuration> <configuration>
<excludeFilterFile>${project.basedir}/dev-support/findbugs-exclude.xml</excludeFilterFile> <excludeFilterFile>${project.basedir}/dev-support/findbugs-exclude.xml</excludeFilterFile>
</configuration> </configuration>
</execution> </execution>
</executions> </executions>
</plugin> </plugin>
<!-- Ignore running the assembly in the top-level.
That's all handled by hbase-assembly -->
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<skipAssembly>true</skipAssembly>
</configuration>
</plugin>
</plugins> </plugins>
</build> </build>
<properties> <properties>
<tar.name>${project.build.finalName}.tar.gz</tar.name> <tar.name>${project.build.finalName}.tar.gz</tar.name>
<maven.build.timestamp.format> <maven.build.timestamp.format>
@ -666,12 +773,12 @@
<buildDate>${maven.build.timestamp}</buildDate> <buildDate>${maven.build.timestamp}</buildDate>
<compileSource>1.6</compileSource> <compileSource>1.6</compileSource>
<hbase.version>${project.version}</hbase.version> <hbase.version>${project.version}</hbase.version>
<!-- Dependencies --> <!-- Dependencies -->
<avro.version>1.5.3</avro.version> <avro.version>1.5.3</avro.version>
<commons-cli.version>1.2</commons-cli.version> <commons-cli.version>1.2</commons-cli.version>
<commons-codec.version>1.4</commons-codec.version> <commons-codec.version>1.4</commons-codec.version>
<commons-httpclient.version>3.1</commons-httpclient.version><!-- pretty outdated --> <commons-httpclient.version>3.1</commons-httpclient.version>
<!-- pretty outdated -->
<commons-io.version>2.1</commons-io.version> <commons-io.version>2.1</commons-io.version>
<commons-lang.version>2.5</commons-lang.version> <commons-lang.version>2.5</commons-lang.version>
<commons-logging.version>1.1.1</commons-logging.version> <commons-logging.version>1.1.1</commons-logging.version>
@ -696,16 +803,14 @@
<hadoop-snappy.version>0.0.1-SNAPSHOT</hadoop-snappy.version> <hadoop-snappy.version>0.0.1-SNAPSHOT</hadoop-snappy.version>
<clover.version>2.6.3</clover.version> <clover.version>2.6.3</clover.version>
<jamon-runtime.version>2.3.1</jamon-runtime.version> <jamon-runtime.version>2.3.1</jamon-runtime.version>
<!-- Plugin Dependencies --> <!-- Plugin Dependencies -->
<maven.assembly.version>2.3</maven.assembly.version>
<maven.antrun.version>1.6</maven.antrun.version> <maven.antrun.version>1.6</maven.antrun.version>
<jamon.plugin.version>2.3.4</jamon.plugin.version> <jamon.plugin.version>2.3.4</jamon.plugin.version>
<maven.assembly.version>2.3</maven.assembly.version>
<findbugs.version>2.4.0</findbugs.version> <findbugs.version>2.4.0</findbugs.version>
<maven.site.version>2.0.1</maven.site.version> <maven.site.version>3.1</maven.site.version>
<javadoc.version>2.8.1</javadoc.version> <javadoc.version>2.8.1</javadoc.version>
<maven.resources.plugin.version>2.5</maven.resources.plugin.version> <maven.resources.plugin.version>2.5</maven.resources.plugin.version>
<!-- General Packaging --> <!-- General Packaging -->
<package.prefix>/usr</package.prefix> <package.prefix>/usr</package.prefix>
<package.conf.dir>/etc/hbase</package.conf.dir> <package.conf.dir>/etc/hbase</package.conf.dir>
@ -713,33 +818,27 @@
<package.pid.dir>/var/run/hbase</package.pid.dir> <package.pid.dir>/var/run/hbase</package.pid.dir>
<package.release>1</package.release> <package.release>1</package.release>
<final.name>${project.artifactId}-${project.version}</final.name> <final.name>${project.artifactId}-${project.version}</final.name>
<!-- Intraproject jar naming properties --> <!-- Intraproject jar naming properties -->
<!-- TODO this is pretty ugly, but works for the moment. <!-- TODO this is pretty ugly, but works for the moment.
Modules are pretty heavy-weight things, so doing this work isn't too bad. --> Modules are pretty heavy-weight things, so doing this work isn't too bad. -->
<server.test.jar>hbase-server-${project.version}-tests.jar</server.test.jar> <server.test.jar>hbase-server-${project.version}-tests.jar</server.test.jar>
<surefire.version>2.12-TRUNK-HBASE-2</surefire.version> <surefire.version>2.12-TRUNK-HBASE-2</surefire.version>
<surefire.provider>surefire-junit47</surefire.provider> <surefire.provider>surefire-junit47</surefire.provider>
<!-- default: run small & medium, medium with 2 threads --> <!-- default: run small & medium, medium with 2 threads -->
<surefire.skipFirstPart>false</surefire.skipFirstPart> <surefire.skipFirstPart>false</surefire.skipFirstPart>
<surefire.skipSecondPart>false</surefire.skipSecondPart> <surefire.skipSecondPart>false</surefire.skipSecondPart>
<surefire.firstPartForkMode>once</surefire.firstPartForkMode> <surefire.firstPartForkMode>once</surefire.firstPartForkMode>
<surefire.firstPartParallel>classes</surefire.firstPartParallel> <surefire.firstPartParallel>classes</surefire.firstPartParallel>
<surefire.firstPartThreadCount>1</surefire.firstPartThreadCount> <surefire.firstPartThreadCount>1</surefire.firstPartThreadCount>
<surefire.secondPartThreadCount>2</surefire.secondPartThreadCount> <surefire.secondPartThreadCount>2</surefire.secondPartThreadCount>
<surefire.firstPartGroups>org.apache.hadoop.hbase.SmallTests</surefire.firstPartGroups> <surefire.firstPartGroups>org.apache.hadoop.hbase.SmallTests</surefire.firstPartGroups>
<surefire.secondPartGroups>org.apache.hadoop.hbase.MediumTests</surefire.secondPartGroups> <surefire.secondPartGroups>org.apache.hadoop.hbase.MediumTests</surefire.secondPartGroups>
<test.output.tofile>true</test.output.tofile> <test.output.tofile>true</test.output.tofile>
</properties> </properties>
<!-- Sorted by groups of dependencies then groupId and artifactId --> <!-- Sorted by groups of dependencies then groupId and artifactId -->
<dependencyManagement> <dependencyManagement>
<dependencies> <dependencies>
<!-- <!--
Note: There are a few exclusions to prevent duplicate code in different jars to be included: Note: There are a few exclusions to prevent duplicate code in different jars to be included:
* org.mortbay.jetty:servlet-api, javax.servlet:servlet-api: These are excluded because they are * org.mortbay.jetty:servlet-api, javax.servlet:servlet-api: These are excluded because they are
the same implementations. I chose org.mortbay.jetty:servlet-api-2.5 instead, which is a third the same implementations. I chose org.mortbay.jetty:servlet-api-2.5 instead, which is a third
@ -747,7 +846,6 @@
* javax.servlet:jsp-api in favour of org.mortbay.jetty:jsp-api-2.1 * javax.servlet:jsp-api in favour of org.mortbay.jetty:jsp-api-2.1
* javax.xml.stream:stax-api in favour of stax:stax-api * javax.xml.stream:stax-api in favour of stax:stax-api
--> -->
<!-- Intra-module dependencies --> <!-- Intra-module dependencies -->
<dependency> <dependency>
<groupId>org.apache.hbase</groupId> <groupId>org.apache.hbase</groupId>
@ -766,7 +864,6 @@
<type>test-jar</type> <type>test-jar</type>
<scope>test</scope> <scope>test</scope>
</dependency> </dependency>
<!-- General dependencies --> <!-- General dependencies -->
<dependency> <dependency>
<groupId>com.yammer.metrics</groupId> <groupId>com.yammer.metrics</groupId>
@ -828,26 +925,6 @@
<artifactId>log4j</artifactId> <artifactId>log4j</artifactId>
<version>${log4j.version}</version> <version>${log4j.version}</version>
</dependency> </dependency>
<dependency>
<groupId>org.apache.avro</groupId>
<artifactId>avro</artifactId>
<version>${avro.version}</version>
<exclusions>
<exclusion>
<groupId>com.thoughtworks.paranamer</groupId>
<artifactId>paranamer</artifactId>
</exclusion>
<exclusion>
<groupId>com.thoughtworks.paranamer</groupId>
<artifactId>paranamer-ant</artifactId>
</exclusion>
</exclusions>
</dependency>
<dependency>
<groupId>org.apache.avro</groupId>
<artifactId>avro-ipc</artifactId>
<version>${avro.version}</version>
</dependency>
<dependency> <dependency>
<groupId>org.apache.zookeeper</groupId> <groupId>org.apache.zookeeper</groupId>
<artifactId>zookeeper</artifactId> <artifactId>zookeeper</artifactId>
@ -945,8 +1022,8 @@
<artifactId>slf4j-log4j12</artifactId> <artifactId>slf4j-log4j12</artifactId>
<version>${slf4j.version}</version> <version>${slf4j.version}</version>
</dependency> </dependency>
<dependency> <dependency>
<!--If this is not in the runtime lib, we get odd <!--If this is not in the runtime lib, we get odd
"2009-02-27 11:38:39.504::WARN: failed jsp "2009-02-27 11:38:39.504::WARN: failed jsp
java.lang.NoSuchFieldError: IS_SECURITY_ENABLED" java.lang.NoSuchFieldError: IS_SECURITY_ENABLED"
exceptions out of jetty deploying webapps. exceptions out of jetty deploying webapps.
@ -983,13 +1060,11 @@
</exclusion> </exclusion>
</exclusions> </exclusions>
</dependency> </dependency>
<dependency> <dependency>
<groupId>org.jamon</groupId> <groupId>org.jamon</groupId>
<artifactId>jamon-runtime</artifactId> <artifactId>jamon-runtime</artifactId>
<version>${jamon-runtime.version}</version> <version>${jamon-runtime.version}</version>
</dependency> </dependency>
<!-- REST dependencies --> <!-- REST dependencies -->
<dependency> <dependency>
<groupId>com.google.protobuf</groupId> <groupId>com.google.protobuf</groupId>
@ -1027,7 +1102,6 @@
<artifactId>stax-api</artifactId> <artifactId>stax-api</artifactId>
<version>${stax-api.version}</version> <version>${stax-api.version}</version>
</dependency> </dependency>
<!-- Test dependencies --> <!-- Test dependencies -->
<dependency> <dependency>
<groupId>junit</groupId> <groupId>junit</groupId>
@ -1043,7 +1117,6 @@
</dependency> </dependency>
</dependencies> </dependencies>
</dependencyManagement> </dependencyManagement>
<!-- Dependencies needed by subprojects --> <!-- Dependencies needed by subprojects -->
<dependencies> <dependencies>
<!-- Test dependencies --> <!-- Test dependencies -->
@ -1056,7 +1129,6 @@
<artifactId>mockito-all</artifactId> <artifactId>mockito-all</artifactId>
</dependency> </dependency>
</dependencies> </dependencies>
<!-- <!--
To publish, use the following settings.xml file ( placed in ~/.m2/settings.xml ) To publish, use the following settings.xml file ( placed in ~/.m2/settings.xml )
@ -1106,16 +1178,15 @@
<build.platform>Mac_OS_X-${sun.arch.data.model}</build.platform> <build.platform>Mac_OS_X-${sun.arch.data.model}</build.platform>
</properties> </properties>
</profile> </profile>
<!-- this profile should be activated for release builds --> <!-- this profile should be activated for release builds -->
<profile> <profile>
<id>release</id> <id>release</id>
<build> <build>
<plugins> <plugins>
<plugin> <plugin>
<groupId>org.apache.rat</groupId> <groupId>org.apache.rat</groupId>
<artifactId>apache-rat-plugin</artifactId> <artifactId>apache-rat-plugin</artifactId>
<executions> <executions>
<execution> <execution>
<phase>package</phase> <phase>package</phase>
<goals> <goals>
@ -1127,13 +1198,11 @@
</plugins> </plugins>
</build> </build>
</profile> </profile>
<!-- Dependency management profiles for submodules when building against specific hadoop branches.-->
<!-- Dependency management profiles for submodules when building against specific hadoop branches.-->
<!-- Submodules that need hadoop dependencies should declare <!-- Submodules that need hadoop dependencies should declare
profiles with activation properties matching the profile here. profiles with activation properties matching the profile here.
Generally, it should be sufficient to copy the first Generally, it should be sufficient to copy the first
few lines of the profile you want to match. --> few lines of the profile you want to match. -->
<!-- profile against Hadoop 1.0.x: This is the default. --> <!-- profile against Hadoop 1.0.x: This is the default. -->
<profile> <profile>
<id>hadoop-1.0</id> <id>hadoop-1.0</id>
@ -1186,7 +1255,6 @@
</dependencies> </dependencies>
</dependencyManagement> </dependencyManagement>
</profile> </profile>
<!-- profile for building against Hadoop 2.0.x <!-- profile for building against Hadoop 2.0.x
Activate using: mvn -Dhadoop.profile=2.0 --> Activate using: mvn -Dhadoop.profile=2.0 -->
<profile> <profile>
@ -1223,7 +1291,6 @@
</dependencies> </dependencies>
</dependencyManagement> </dependencyManagement>
</profile> </profile>
<!-- <!--
profile for building against Hadoop 3.0.0. Activate using: profile for building against Hadoop 3.0.0. Activate using:
mvn -Dhadoop.profile=3.0 mvn -Dhadoop.profile=3.0
@ -1261,14 +1328,14 @@
</dependency> </dependency>
</dependencies> </dependencies>
</profile> </profile>
<!-- profiles for the tests <!-- profiles for the tests
See as well the properties of the project for the values See as well the properties of the project for the values
when no profile is active. --> when no profile is active. -->
<profile> <!-- Use it to launch the tests without parallelisation --> <profile>
<!-- Use it to launch the tests without parallelisation -->
<id>nonParallelTests</id> <id>nonParallelTests</id>
<activation> <activation>
<activeByDefault>false</activeByDefault> <activeByDefault>false</activeByDefault>
</activation> </activation>
<properties> <properties>
<surefire.firstPartForkMode>always</surefire.firstPartForkMode> <surefire.firstPartForkMode>always</surefire.firstPartForkMode>
@ -1276,10 +1343,10 @@
<surefire.firstPartThreadCount>1</surefire.firstPartThreadCount> <surefire.firstPartThreadCount>1</surefire.firstPartThreadCount>
</properties> </properties>
</profile> </profile>
<profile>
<profile> <!-- Use it to launch the tests in parallel in the same JVM --> <!-- Use it to launch the tests in parallel in the same JVM -->
<id>parallelTests</id> <id>parallelTests</id>
<activation> <activation>
<activeByDefault>false</activeByDefault> <activeByDefault>false</activeByDefault>
</activation> </activation>
<properties> <properties>
@ -1288,8 +1355,8 @@
<surefire.firstPartThreadCount>1</surefire.firstPartThreadCount> <surefire.firstPartThreadCount>1</surefire.firstPartThreadCount>
</properties> </properties>
</profile> </profile>
<profile>
<profile> <!-- Use it to launch the tests in the same JVM --> <!-- Use it to launch the tests in the same JVM -->
<id>singleJVMTests</id> <id>singleJVMTests</id>
<activation> <activation>
<activeByDefault>false</activeByDefault> <activeByDefault>false</activeByDefault>
@ -1298,14 +1365,13 @@
<surefire.firstPartForkMode>once</surefire.firstPartForkMode> <surefire.firstPartForkMode>once</surefire.firstPartForkMode>
<surefire.firstPartParallel>none</surefire.firstPartParallel> <surefire.firstPartParallel>none</surefire.firstPartParallel>
<surefire.firstPartThreadCount>1</surefire.firstPartThreadCount> <surefire.firstPartThreadCount>1</surefire.firstPartThreadCount>
<surefire.skipFirstPart>false</surefire.skipFirstPart> <surefire.skipFirstPart>false</surefire.skipFirstPart>
<surefire.skipSecondPart>true</surefire.skipSecondPart> <surefire.skipSecondPart>true</surefire.skipSecondPart>
<surefire.firstPartGroups></surefire.firstPartGroups> <surefire.firstPartGroups/>
</properties> </properties>
</profile> </profile>
<profile>
<profile> <!-- Use it to launch small tests only --> <!-- Use it to launch small tests only -->
<id>runSmallTests</id> <id>runSmallTests</id>
<activation> <activation>
<activeByDefault>false</activeByDefault> <activeByDefault>false</activeByDefault>
@ -1314,15 +1380,14 @@
<surefire.firstPartForkMode>once</surefire.firstPartForkMode> <surefire.firstPartForkMode>once</surefire.firstPartForkMode>
<surefire.firstPartParallel>none</surefire.firstPartParallel> <surefire.firstPartParallel>none</surefire.firstPartParallel>
<surefire.firstPartThreadCount>1</surefire.firstPartThreadCount> <surefire.firstPartThreadCount>1</surefire.firstPartThreadCount>
<surefire.skipFirstPart>false</surefire.skipFirstPart> <surefire.skipFirstPart>false</surefire.skipFirstPart>
<surefire.skipSecondPart>true</surefire.skipSecondPart> <surefire.skipSecondPart>true</surefire.skipSecondPart>
<surefire.firstPartGroups>org.apache.hadoop.hbase.SmallTests</surefire.firstPartGroups> <surefire.firstPartGroups>org.apache.hadoop.hbase.SmallTests</surefire.firstPartGroups>
<surefire.secondPartGroups></surefire.secondPartGroups> <surefire.secondPartGroups/>
</properties> </properties>
</profile> </profile>
<profile>
<profile> <!-- Use it to launch medium tests only --> <!-- Use it to launch medium tests only -->
<id>runMediumTests</id> <id>runMediumTests</id>
<activation> <activation>
<activeByDefault>false</activeByDefault> <activeByDefault>false</activeByDefault>
@ -1332,11 +1397,11 @@
<surefire.skipFirstPart>false</surefire.skipFirstPart> <surefire.skipFirstPart>false</surefire.skipFirstPart>
<surefire.skipSecondPart>true</surefire.skipSecondPart> <surefire.skipSecondPart>true</surefire.skipSecondPart>
<surefire.firstPartGroups>org.apache.hadoop.hbase.MediumTests</surefire.firstPartGroups> <surefire.firstPartGroups>org.apache.hadoop.hbase.MediumTests</surefire.firstPartGroups>
<surefire.secondPartGroups></surefire.secondPartGroups> <surefire.secondPartGroups/>
</properties> </properties>
</profile> </profile>
<profile>
<profile> <!-- Use it to launch large tests only --> <!-- Use it to launch large tests only -->
<id>runLargeTests</id> <id>runLargeTests</id>
<activation> <activation>
<activeByDefault>false</activeByDefault> <activeByDefault>false</activeByDefault>
@ -1346,11 +1411,11 @@
<surefire.skipFirstPart>false</surefire.skipFirstPart> <surefire.skipFirstPart>false</surefire.skipFirstPart>
<surefire.skipSecondPart>true</surefire.skipSecondPart> <surefire.skipSecondPart>true</surefire.skipSecondPart>
<surefire.firstPartGroups>org.apache.hadoop.hbase.LargeTests</surefire.firstPartGroups> <surefire.firstPartGroups>org.apache.hadoop.hbase.LargeTests</surefire.firstPartGroups>
<surefire.secondPartGroups></surefire.secondPartGroups> <surefire.secondPartGroups/>
</properties> </properties>
</profile> </profile>
<profile>
<profile> <!-- Use it to launch small & medium tests --> <!-- Use it to launch small & medium tests -->
<id>runDevTests</id> <id>runDevTests</id>
<activation> <activation>
<activeByDefault>false</activeByDefault> <activeByDefault>false</activeByDefault>
@ -1359,15 +1424,14 @@
<surefire.firstPartForkMode>once</surefire.firstPartForkMode> <surefire.firstPartForkMode>once</surefire.firstPartForkMode>
<surefire.firstPartParallel>none</surefire.firstPartParallel> <surefire.firstPartParallel>none</surefire.firstPartParallel>
<surefire.firstPartThreadCount>1</surefire.firstPartThreadCount> <surefire.firstPartThreadCount>1</surefire.firstPartThreadCount>
<surefire.skipFirstPart>false</surefire.skipFirstPart> <surefire.skipFirstPart>false</surefire.skipFirstPart>
<surefire.skipSecondPart>false</surefire.skipSecondPart> <surefire.skipSecondPart>false</surefire.skipSecondPart>
<surefire.firstPartGroups>org.apache.hadoop.hbase.SmallTests</surefire.firstPartGroups> <surefire.firstPartGroups>org.apache.hadoop.hbase.SmallTests</surefire.firstPartGroups>
<surefire.secondPartGroups>org.apache.hadoop.hbase.MediumTests</surefire.secondPartGroups> <surefire.secondPartGroups>org.apache.hadoop.hbase.MediumTests</surefire.secondPartGroups>
</properties> </properties>
</profile> </profile>
<profile>
<profile> <!-- Use it to launch all tests --> <!-- Use it to launch all tests -->
<id>runAllTests</id> <id>runAllTests</id>
<activation> <activation>
<activeByDefault>false</activeByDefault> <activeByDefault>false</activeByDefault>
@ -1377,15 +1441,14 @@
<surefire.firstPartParallel>none</surefire.firstPartParallel> <surefire.firstPartParallel>none</surefire.firstPartParallel>
<surefire.firstPartThreadCount>1</surefire.firstPartThreadCount> <surefire.firstPartThreadCount>1</surefire.firstPartThreadCount>
<surefire.secondPartThreadCount>4</surefire.secondPartThreadCount> <surefire.secondPartThreadCount>4</surefire.secondPartThreadCount>
<surefire.skipFirstPart>false</surefire.skipFirstPart> <surefire.skipFirstPart>false</surefire.skipFirstPart>
<surefire.skipSecondPart>false</surefire.skipSecondPart> <surefire.skipSecondPart>false</surefire.skipSecondPart>
<surefire.firstPartGroups>org.apache.hadoop.hbase.SmallTests</surefire.firstPartGroups> <surefire.firstPartGroups>org.apache.hadoop.hbase.SmallTests</surefire.firstPartGroups>
<surefire.secondPartGroups>org.apache.hadoop.hbase.MediumTests,org.apache.hadoop.hbase.LargeTests</surefire.secondPartGroups> <surefire.secondPartGroups>org.apache.hadoop.hbase.MediumTests,org.apache.hadoop.hbase.LargeTests</surefire.secondPartGroups>
</properties> </properties>
</profile> </profile>
<profile>
<profile> <!-- Use it to launch tests locally--> <!-- Use it to launch tests locally-->
<id>localTests</id> <id>localTests</id>
<activation> <activation>
<activeByDefault>false</activeByDefault> <activeByDefault>false</activeByDefault>
@ -1393,14 +1456,12 @@
<properties> <properties>
<surefire.provider>surefire-junit4</surefire.provider> <surefire.provider>surefire-junit4</surefire.provider>
<surefire.version>2.10</surefire.version> <surefire.version>2.10</surefire.version>
<surefire.firstPartForkMode>always</surefire.firstPartForkMode> <surefire.firstPartForkMode>always</surefire.firstPartForkMode>
<surefire.skipFirstPart>false</surefire.skipFirstPart> <surefire.skipFirstPart>false</surefire.skipFirstPart>
<surefire.skipSecondPart>true</surefire.skipSecondPart> <surefire.skipSecondPart>true</surefire.skipSecondPart>
<surefire.firstPartGroups></surefire.firstPartGroups> <surefire.firstPartGroups/>
</properties> </properties>
</profile> </profile>
<!-- Profile for running clover. You need to have a clover license under ~/.clover.license for ${clover.version} <!-- Profile for running clover. You need to have a clover license under ~/.clover.license for ${clover.version}
or you can provide the license with -Dmaven.clover.licenseLocation=/path/to/license. Committers can find or you can provide the license with -Dmaven.clover.licenseLocation=/path/to/license. Committers can find
the license under https://svn.apache.org/repos/private/committers/donated-licenses/clover/ the license under https://svn.apache.org/repos/private/committers/donated-licenses/clover/
@ -1454,9 +1515,8 @@
</plugin> </plugin>
</plugins> </plugins>
</build> </build>
</profile> </profile>
</profiles> </profiles>
<!-- See http://jira.codehaus.org/browse/MSITE-443 why the settings need to be here and not in pluginManagement. --> <!-- See http://jira.codehaus.org/browse/MSITE-443 why the settings need to be here and not in pluginManagement. -->
<reporting> <reporting>
<plugins> <plugins>
@ -1480,20 +1540,14 @@
<plugin> <plugin>
<groupId>org.apache.maven.plugins</groupId> <groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jxr-plugin</artifactId> <artifactId>maven-jxr-plugin</artifactId>
<version>2.1</version> <version>2.3</version>
<configuration>
<aggregate>true</aggregate>
</configuration>
</plugin> </plugin>
</plugins> </plugins>
</reporting> </reporting>
<distributionManagement> <distributionManagement>
<!--Build and deploy the site with the below command
$ ~/bin/apache-maven-3.0.4/bin/mvn -X clean package site:site site:deploy
You may need a settings.xml file under you ~/.m2/ directory as
described here: http://www.apache.org/dev/publishing-maven-artifacts.html
We should use the below going forward because it ensures permissions up
in apache making it so other members of hbase group can deploy w/o issue.
-->
<site> <site>
<id>apache.website</id> <id>apache.website</id>
<url>scp://people.apache.org/www/hbase.apache.org/</url> <url>scp://people.apache.org/www/hbase.apache.org/</url>

View File

@ -26,63 +26,70 @@
we do this: http://maven.apache.org/plugins/maven-assembly-plugin/faq.html#required-classifiers --> we do this: http://maven.apache.org/plugins/maven-assembly-plugin/faq.html#required-classifiers -->
<id>all</id> <id>all</id>
<formats> <formats>
<format>dir</format> <format>tar.gz</format>
</formats> </formats>
<includeBaseDirectory>false</includeBaseDirectory>
<!-- Include top level text files -->
<fileSets> <fileSets>
<!--Copy over the site if built as docs dir-->
<fileSet>
<directory>target/site</directory>
<outputDirectory>docs</outputDirectory>
</fileSet>
<!-- Include top level text files -->
<fileSet> <fileSet>
<directory>${parent.basedir}</directory>
<outputDirectory>/</outputDirectory> <outputDirectory>/</outputDirectory>
<includes> <includes>
<include>*.txt</include> <include>*.txt</include>
<include>pom.xml</include> <include>pom.xml</include>
</includes> </includes>
</fileSet> </fileSet>
<!-- Include the top level conf directory --> <!-- Include the top level conf directory -->
<fileSet> <fileSet>
<directory>${parent.basedir}/conf</directory> <directory>conf</directory>
<outputDirectory>conf</outputDirectory> <outputDirectory>conf</outputDirectory>
<fileMode>0644</fileMode> <fileMode>0644</fileMode>
<directoryMode>0755</directoryMode> <directoryMode>0755</directoryMode>
</fileSet> </fileSet>
<!-- Include top level bin directory --> <!-- Include top level bin directory -->
<fileSet> <fileSet>
<directory>${parent.basedir}/bin</directory> <directory>bin</directory>
<outputDirectory>bin</outputDirectory> <outputDirectory>bin</outputDirectory>
<fileMode>0755</fileMode> <fileMode>0755</fileMode>
<directoryMode>0755</directoryMode> <directoryMode>0755</directoryMode>
</fileSet> </fileSet>
<fileSet>
<directory>conf</directory>
<outputDirectory>conf</outputDirectory>
<fileMode>0644</fileMode>
<directoryMode>0755</directoryMode>
</fileSet>
<!--Include top-level src. Module src done down below-->
<fileSet>
<directory>src</directory>
<outputDirectory>src</outputDirectory>
<fileMode>0644</fileMode>
<directoryMode>0755</directoryMode>
</fileSet>
<!-- Include dev-support directory -->
<fileSet>
<directory>dev-support</directory>
<outputDirectory>dev-support</outputDirectory>
<fileMode>0755</fileMode>
<directoryMode>0755</directoryMode>
</fileSet>
<!-- Move the ruby code over --> <!-- Move the ruby code over -->
<fileSet> <fileSet>
<directory>${parent.basedir}/hbase-server/src/main/ruby</directory> <directory>hbase-server/src/main/ruby</directory>
<outputDirectory>lib/ruby</outputDirectory> <outputDirectory>lib/ruby</outputDirectory>
<fileMode>0644</fileMode> <fileMode>0644</fileMode>
<directoryMode>0755</directoryMode> <directoryMode>0755</directoryMode>
</fileSet> </fileSet>
<!-- Move the webapps to the webapp dir --> <!-- Move the webapps to the webapp dir -->
<fileSet> <fileSet>
<directory>${parent.basedir}/hbase-server/target/hbase-webapps</directory> <directory>hbase-server/target/hbase-webapps</directory>
<outputDirectory>hbase-webapps</outputDirectory> <outputDirectory>hbase-webapps</outputDirectory>
<fileMode>0644</fileMode> <fileMode>0644</fileMode>
<directoryMode>0755</directoryMode> <directoryMode>0755</directoryMode>
</fileSet> </fileSet>
<!-- Move update script to sbin -->
<fileSet>
<directory>src/packages</directory>
<outputDirectory>sbin</outputDirectory>
<fileMode>755</fileMode>
<includes>
<include>update-hbase-env.sh</include>
</includes>
</fileSet>
<!-- This is only necessary until maven fixes the intra-project dependency bug <!-- This is only necessary until maven fixes the intra-project dependency bug
in maven 3.0. Until then, we have to include the test jars for sub-projects. When in maven 3.0. Until then, we have to include the test jars for sub-projects. When
fixed, the below dependencySet stuff is sufficient for pulling in the test jars as fixed, the below dependencySet stuff is sufficient for pulling in the test jars as
@ -91,29 +98,13 @@
fixed. --> fixed. -->
<fileSet> <fileSet>
<directory>${parent.basedir}/hbase-server/target/</directory> <directory>${parent.basedir}/hbase-server/target/</directory>
<outputDirectory>hbase-jars/</outputDirectory> <outputDirectory>lib</outputDirectory>
<includes> <includes>
<include>${server.test.jar}</include> <include>${server.test.jar}</include>
</includes> </includes>
<fileMode>0644</fileMode> <fileMode>0644</fileMode>
</fileSet> </fileSet>
</fileSets> </fileSets>
<!-- Copy in all non-hbase jars to the lib directory -->
<dependencySets>
<dependencySet>
<outputDirectory>/lib</outputDirectory>
<unpack>false</unpack>
<scope>runtime</scope>
<excludes>
<exclude>org.apache.hbase:hbase-*</exclude>
</excludes>
<fileMode>0644</fileMode>
<directoryMode>0644</directoryMode>
</dependencySet>
</dependencySets>
<!-- Do all the work for including the other modules -->
<moduleSets> <moduleSets>
<moduleSet> <moduleSet>
<!-- Enable access to all projects in the current multimodule build. Eclipse <!-- Enable access to all projects in the current multimodule build. Eclipse
@ -125,9 +116,6 @@
<includes> <includes>
<include>org.apache.hbase:hbase-*</include> <include>org.apache.hbase:hbase-*</include>
</includes> </includes>
<excludes>
<exclude>org.apache.hbase:hbase-assembly</exclude>
</excludes>
<!-- Include all the sources in the top directory --> <!-- Include all the sources in the top directory -->
<sources> <sources>
<fileSets> <fileSets>
@ -144,33 +132,12 @@
</sources> </sources>
<!-- Binaries for the dependencies also go in the hbase-jars directory --> <!-- Binaries for the dependencies also go in the hbase-jars directory -->
<binaries> <binaries>
<outputDirectory>hbase-jars/</outputDirectory> <outputDirectory>lib</outputDirectory>
<unpack>false</unpack> <unpack>false</unpack>
<dependencySets>
<dependencySet/>
</dependencySets>
</binaries> </binaries>
</moduleSet> </moduleSet>
<!-- Special module just for assembly -->
<moduleSet>
<useAllReactorProjects>true</useAllReactorProjects>
<includes>
<include>org.apache.hbase:hbase-assembly</include>
</includes>
<!-- Include all the sources in the top directory -->
<sources>
<fileSets>
<fileSet>
<excludes>
<!-- Add new modules here -->
<exclude>hbase-server-${project.version}.jar</exclude>
<exclude>hbase-common-${project.version>.jar</exclude>
<exclude>target/</exclude>
<exclude>test/</exclude>
<exclude>.classpath</exclude>
<exclude>.project</exclude>
<exclude>.settings/</exclude>
</excludes>
</fileSet>
</fileSets>
</sources>
</moduleSet>
</moduleSets> </moduleSets>
</assembly> </assembly>

View File

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 15 KiB

View File

Before

Width:  |  Height:  |  Size: 1.1 KiB

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

Before

Width:  |  Height:  |  Size: 9.2 KiB

After

Width:  |  Height:  |  Size: 9.2 KiB

View File

Before

Width:  |  Height:  |  Size: 1.7 KiB

After

Width:  |  Height:  |  Size: 1.7 KiB

View File

Before

Width:  |  Height:  |  Size: 4.3 KiB

After

Width:  |  Height:  |  Size: 4.3 KiB

View File

Before

Width:  |  Height:  |  Size: 33 KiB

After

Width:  |  Height:  |  Size: 33 KiB

View File

Before

Width:  |  Height:  |  Size: 56 KiB

After

Width:  |  Height:  |  Size: 56 KiB

View File

Before

Width:  |  Height:  |  Size: 203 KiB

After

Width:  |  Height:  |  Size: 203 KiB