HBASE-9020 Make hbase-it HBASE_HOME configurable
git-svn-id: https://svn.apache.org/repos/asf/hbase/trunk@1506205 13f79535-47bb-0310-9956-ffa450edef68
This commit is contained in:
parent
be6adbdd7e
commit
b60e27d9d8
@ -143,21 +143,24 @@ public class HBaseClusterManager extends ClusterManager {
|
|||||||
* CommandProvider to manage the service using bin/hbase-* scripts
|
* CommandProvider to manage the service using bin/hbase-* scripts
|
||||||
*/
|
*/
|
||||||
static class HBaseShellCommandProvider extends CommandProvider {
|
static class HBaseShellCommandProvider extends CommandProvider {
|
||||||
private String getHBaseHome() {
|
private final String hbaseHome;
|
||||||
return System.getenv("HBASE_HOME");
|
private final String confDir;
|
||||||
}
|
|
||||||
|
|
||||||
private String getConfig() {
|
HBaseShellCommandProvider(Configuration conf) {
|
||||||
String confDir = System.getenv("HBASE_CONF_DIR");
|
hbaseHome = conf.get("hbase.it.clustermanager.hbase.home",
|
||||||
if (confDir != null) {
|
System.getenv("HBASE_HOME"));
|
||||||
return String.format("--config %s", confDir);
|
String tmp = conf.get("hbase.it.clustermanager.hbase.conf.dir",
|
||||||
|
System.getenv("HBASE_CONF_DIR"));
|
||||||
|
if (tmp != null) {
|
||||||
|
confDir = String.format("--config %s", tmp);
|
||||||
|
} else {
|
||||||
|
confDir = "";
|
||||||
}
|
}
|
||||||
return "";
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getCommand(ServiceType service, Operation op) {
|
public String getCommand(ServiceType service, Operation op) {
|
||||||
return String.format("%s/bin/hbase-daemon.sh %s %s %s", getHBaseHome(), getConfig(),
|
return String.format("%s/bin/hbase-daemon.sh %s %s %s", hbaseHome, confDir,
|
||||||
op.toString().toLowerCase(), service);
|
op.toString().toLowerCase(), service);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -169,7 +172,7 @@ public class HBaseClusterManager extends ClusterManager {
|
|||||||
protected CommandProvider getCommandProvider(ServiceType service) {
|
protected CommandProvider getCommandProvider(ServiceType service) {
|
||||||
//TODO: make it pluggable, or auto-detect the best command provider, should work with
|
//TODO: make it pluggable, or auto-detect the best command provider, should work with
|
||||||
//hadoop daemons as well
|
//hadoop daemons as well
|
||||||
return new HBaseShellCommandProvider();
|
return new HBaseShellCommandProvider(getConf());
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
x
Reference in New Issue
Block a user