def test_replace_zookeeper_host(self): conf_dir = environ.get("CONF_DIR") environ["HBASE_ZOOKEEPER_HOST"] = "zk-test" xml = read_xml(conf_dir, self.hbase_site_file) output = process(xml) assert (verify_prop_values(output, "hbase.zookeeper.quorum", environ["HBASE_ZOOKEEPER_HOST"]))
def test_replace_hbase_root_dir(self): conf_dir = environ.get("CONF_DIR") environ["HBASE_ROOT_DIR"] = "hdfs://namenode.magi.io:9000/hbase" xml = read_xml(conf_dir, self.hbase_site_file) output = process(xml) assert (verify_prop_values(output, "hbase.rootdir", environ["HBASE_ROOT_DIR"]))
def test_replace_zookeeper_port(self): conf_dir = environ.get("CONF_DIR") environ["HBASE_ZOOKEEPER_PORT"] = "6308" xml = read_xml(conf_dir, self.hbase_site_file) output = process(xml) assert (verify_prop_values(output, "hbase.zookeeper.property.clientPort", environ["HBASE_ZOOKEEPER_PORT"]))
def test_replace_all_supported_properties(self): conf_dir = environ.get("CONF_DIR") environ["HBASE_ROOT_DIR"] = "hdfs://namenode.magi.io:9000/hbase" environ["HBASE_ZOOKEEPER_HOST"] = "zk-test" environ["HBASE_ZOOKEEPER_PORT"] = "6308" xml = read_xml(conf_dir, self.hbase_site_file) output = process(xml) assert (verify_prop_values(output, "hbase.rootdir", environ["HBASE_ROOT_DIR"])) assert (verify_prop_values(output, "hbase.zookeeper.quorum", environ["HBASE_ZOOKEEPER_HOST"])) assert (verify_prop_values(output, "hbase.zookeeper.property.clientPort", environ["HBASE_ZOOKEEPER_PORT"]))
def test_overwrite_hbase_site(self): conf_dir = environ.get("CONF_DIR") environ["HBASE_ROOT_DIR"] = "hdfs://namenode.magi.io:9000/hbase" environ["HBASE_ZOOKEEPER_HOST"] = "zk-test" environ["HBASE_ZOOKEEPER_PORT"] = "6308" original = read_xml(conf_dir, self.filename) processed = process(original) overwrite_file(conf_dir, self.filename, processed) updated = read_xml(conf_dir, self.filename) assert (verify_prop_values(updated, "hbase.rootdir", environ["HBASE_ROOT_DIR"])) assert (verify_prop_values(updated, "hbase.zookeeper.quorum", environ["HBASE_ZOOKEEPER_HOST"])) assert (verify_prop_values(updated, "hbase.zookeeper.property.clientPort", environ["HBASE_ZOOKEEPER_PORT"]))
#!/usr/bin/env python3 from os import environ from common.helpers import read_xml, overwrite_file from hbase.helpers import process if __name__ == '__main__': conf_dir = environ.get("CONF_DIR") if environ.get( "CONF_DIR") else "/opt/hbase/conf" filename = "hbase-site.xml" print(f"using configuration: {conf_dir}/{filename}") xml = read_xml(conf_dir, filename) processed_core_site = process(xml) if processed_core_site is not None: overwrite_file(conf_dir, filename, processed_core_site) else: print(f"using default {filename} from docker images") print( "to learn more about the HDFS configs please visit the GitHub repo: https://github.com/magi-platform/magi" )