Ejemplo n.º 1
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_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))
Ejemplo n.º 3
0
  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)
Ejemplo n.º 4
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))
Ejemplo n.º 5
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" }
    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)
    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))