def test_read_write_component(self):
    config = AmbariConfig().getConfig()
    tmpdir = tempfile.gettempdir()
    config.set('agent', 'prefix', tmpdir)

    tags1 = { "global": "version1", "core-site": "version2" }
    handler = ActualConfigHandler(config, {})
    handler.write_actual(tags1)
    handler.write_actual_component('FOO', tags1)

    output1 = handler.read_actual_component('FOO')
    output2 = handler.read_actual_component('GOO')

    self.assertEquals(tags1, output1)
    self.assertEquals(None, output2)
    
    tags2 = { "global": "version1", "core-site": "version2" }
    handler.write_actual(tags2)

    output3 = handler.read_actual()
    output4 = handler.read_actual_component('FOO')
    self.assertEquals(tags2, output3)
    self.assertEquals(tags1, output4)
    os.remove(os.path.join(tmpdir, "FOO_" + ActualConfigHandler.CONFIG_NAME))
    os.remove(os.path.join(tmpdir, ActualConfigHandler.CONFIG_NAME))
示例#2
0
    def test_read_write(self):
        config = AmbariConfig().getConfig()
        tmpdir = tempfile.gettempdir()
        config.set('agent', 'prefix', tmpdir)

        tags = {"global": "version1", "core-site": "version2"}
        handler = ActualConfigHandler(config, tags)
        handler.write_actual(tags)
        output = handler.read_actual()
        self.assertEquals(tags, output)
        os.remove(os.path.join(tmpdir, ActualConfigHandler.CONFIG_NAME))
  def test_read_write(self):
    config = AmbariConfig().getConfig()
    tmpdir = tempfile.gettempdir()
    config.set('agent', 'prefix', tmpdir)

    tags = { "global": "version1", "core-site": "version2" }
    handler = ActualConfigHandler(config, tags)
    handler.write_actual(tags)
    output = handler.read_actual()
    self.assertEquals(tags, output)
    os.remove(os.path.join(tmpdir, ActualConfigHandler.CONFIG_NAME))
  def test_read_empty(self):
    config = AmbariConfig().getConfig()
    tmpdir = tempfile.gettempdir()
    config.set('agent', 'prefix', tmpdir)
    handler = ActualConfigHandler(config, {})

    conf_file = open(os.path.join(tmpdir, ActualConfigHandler.CONFIG_NAME), 'w')
    conf_file.write("")
    conf_file.close()
    
    output = handler.read_actual()
    self.assertEquals(None, output)
    os.remove(os.path.join(tmpdir, ActualConfigHandler.CONFIG_NAME))
示例#5
0
    def test_write_empty_client_components(self, write_file_mock):
        config = AmbariConfig().getConfig()
        tmpdir = tempfile.gettempdir()
        config.set('agent', 'prefix', tmpdir)

        tags0 = {"global": "version0", "core-site": "version0"}
        tags1 = {"global": "version1", "core-site": "version2"}
        tags2 = {"global": "version33", "core-site": "version33"}
        clientsToUpdateConfigs1 = []
        configTags = {'HDFS_CLIENT': tags0, 'HBASE_CLIENT': tags1}
        handler = ActualConfigHandler(config, configTags)
        self.assertEquals(tags0, handler.read_actual_component('HDFS_CLIENT'))
        self.assertEquals(tags1, handler.read_actual_component('HBASE_CLIENT'))
        handler.write_client_components('HDFS', tags2, clientsToUpdateConfigs1)
        self.assertEquals(tags0, handler.read_actual_component('HDFS_CLIENT'))
        self.assertEquals(tags1, handler.read_actual_component('HBASE_CLIENT'))
        self.assertFalse(write_file_mock.called)
  def test_write_empty_client_components(self, write_file_mock):
    config = AmbariConfig().getConfig()
    tmpdir = tempfile.gettempdir()
    config.set('agent', 'prefix', tmpdir)

    tags0 = {"global": "version0", "core-site": "version0"}
    tags1 = {"global": "version1", "core-site": "version2"}
    tags2 = {"global": "version33", "core-site": "version33"}
    clientsToUpdateConfigs1 = []
    configTags = {'HDFS_CLIENT': tags0, 'HBASE_CLIENT': tags1}
    handler = ActualConfigHandler(config, configTags)
    self.assertEquals(tags0, handler.read_actual_component('HDFS_CLIENT'))
    self.assertEquals(tags1, handler.read_actual_component('HBASE_CLIENT'))
    handler.write_client_components('HDFS', tags2, clientsToUpdateConfigs1)
    self.assertEquals(tags0, handler.read_actual_component('HDFS_CLIENT'))
    self.assertEquals(tags1, handler.read_actual_component('HBASE_CLIENT'))
    self.assertFalse(write_file_mock.called)
  def test_read_actual_component_inmemory(self, read_file_mock, write_file_mock):
    config = AmbariConfig().getConfig()
    tmpdir = tempfile.gettempdir()
    config.set('agent', 'prefix', tmpdir)

    tags1 = { "global": "version1", "core-site": "version2" }
    read_file_mock.return_value = tags1

    handler = ActualConfigHandler(config, {})

    handler.write_actual_component('NAMENODE', tags1)
    self.assertTrue(write_file_mock.called)
    self.assertEquals(tags1, handler.read_actual_component('NAMENODE'))
    self.assertFalse(read_file_mock.called)
    self.assertEquals(tags1, handler.read_actual_component('DATANODE'))
    self.assertTrue(read_file_mock.called)
    self.assertEquals(1, read_file_mock.call_count)
    self.assertEquals(tags1, handler.read_actual_component('DATANODE'))
    self.assertEquals(1, read_file_mock.call_count)
示例#8
0
    def test_write_actual_component_and_client_components(self):
        config = AmbariConfig().getConfig()
        tmpdir = tempfile.gettempdir()
        config.set('agent', 'prefix', tmpdir)

        tags1 = {"global": "version1", "core-site": "version2"}
        tags2 = {"global": "version33", "core-site": "version33"}
        clientsToUpdateConfigs1 = ["*"]
        handler = ActualConfigHandler(config, {})
        handler.write_actual_component('HDFS_CLIENT', tags1)
        handler.write_actual_component('HBASE_CLIENT', tags1)
        self.assertEquals(tags1, handler.read_actual_component('HDFS_CLIENT'))
        self.assertEquals(tags1, handler.read_actual_component('HBASE_CLIENT'))
        handler.write_actual_component('DATANODE', tags2)
        self.assertEquals(tags2, handler.read_actual_component('DATANODE'))
        self.assertEquals(tags1, handler.read_actual_component('HDFS_CLIENT'))
        handler.write_client_components('HDFS', tags2, clientsToUpdateConfigs1)
        self.assertEquals(tags2, handler.read_actual_component('HDFS_CLIENT'))
        self.assertEquals(tags1, handler.read_actual_component('HBASE_CLIENT'))

        os.remove(
            os.path.join(tmpdir,
                         "DATANODE_" + ActualConfigHandler.CONFIG_NAME))
        os.remove(
            os.path.join(tmpdir,
                         "HBASE_CLIENT_" + ActualConfigHandler.CONFIG_NAME))
        os.remove(
            os.path.join(tmpdir,
                         "HDFS_CLIENT_" + ActualConfigHandler.CONFIG_NAME))
示例#9
0
    def test_read_write_component(self):
        config = AmbariConfig().getConfig()
        tmpdir = tempfile.gettempdir()
        config.set('agent', 'prefix', tmpdir)

        tags1 = {"global": "version1", "core-site": "version2"}
        handler = ActualConfigHandler(config, {})
        handler.write_actual(tags1)
        handler.write_actual_component('FOO', tags1)

        output1 = handler.read_actual_component('FOO')
        output2 = handler.read_actual_component('GOO')

        self.assertEquals(tags1, output1)
        self.assertEquals(None, output2)

        tags2 = {"global": "version1", "core-site": "version2"}
        handler.write_actual(tags2)

        output3 = handler.read_actual()
        output4 = handler.read_actual_component('FOO')
        self.assertEquals(tags2, output3)
        self.assertEquals(tags1, output4)
        os.remove(
            os.path.join(tmpdir, "FOO_" + ActualConfigHandler.CONFIG_NAME))
        os.remove(os.path.join(tmpdir, ActualConfigHandler.CONFIG_NAME))
  def test_write_actual_component_and_client_components(self):
    config = AmbariConfig().getConfig()
    tmpdir = tempfile.gettempdir()
    config.set('agent', 'prefix', tmpdir)

    tags1 = { "global": "version1", "core-site": "version2" }
    tags2 = { "global": "version33", "core-site": "version33" }
    clientsToUpdateConfigs1 = ["*"]
    handler = ActualConfigHandler(config, {})
    handler.write_actual_component('HDFS_CLIENT', tags1)
    handler.write_actual_component('HBASE_CLIENT', tags1)
    self.assertEquals(tags1, handler.read_actual_component('HDFS_CLIENT'))
    self.assertEquals(tags1, handler.read_actual_component('HBASE_CLIENT'))
    handler.write_actual_component('DATANODE', tags2)
    self.assertEquals(tags2, handler.read_actual_component('DATANODE'))
    self.assertEquals(tags1, handler.read_actual_component('HDFS_CLIENT'))
    handler.write_client_components('HDFS', tags2, clientsToUpdateConfigs1)
    self.assertEquals(tags2, handler.read_actual_component('HDFS_CLIENT'))
    self.assertEquals(tags1, handler.read_actual_component('HBASE_CLIENT'))

    os.remove(os.path.join(tmpdir, "DATANODE_" + ActualConfigHandler.CONFIG_NAME))
    os.remove(os.path.join(tmpdir, "HBASE_CLIENT_" + ActualConfigHandler.CONFIG_NAME))
    os.remove(os.path.join(tmpdir, "HDFS_CLIENT_" + ActualConfigHandler.CONFIG_NAME))