Пример #1
0
    def _load_conf(self, conf_file):
        """load agent conf"""
        if not os.path.exists(conf_file):
            raise IOError('conf file not found:%s' % conf_file)
        self._conf_dict = {}
        user_confdict = conf.Configure2Dict(conf_file).get_dict()
        default = settings.ARROW_MASTER_DEFAULT_PARAMS
        control_conf = {}
        log_conf = {}
        control_conf['heartbeat_interval'] = settings.check_and_load_existence(
            user_confdict, default, '["control"]["heartbeat_interval"]')
        control_conf['master_ip'] = settings.check_and_load_existence(
            user_confdict, default, '["control"]["master_ip"]')
        control_conf['master_port'] = settings.check_and_load_existence(
            user_confdict, default, '["control"]["master_port"]')
        control_conf['queue_exec_thdnum'] = settings.check_and_load_existence(
            user_confdict, default, '["control"]["queue_exec_thdnum"]')
        control_conf[
            'queue_delay_exe_thdnum'] = settings.check_and_load_existence(
                user_confdict, default,
                '["control"]["queue_delay_exe_thdnum"]')
        control_conf['port'] = settings.check_and_load_existence(
            user_confdict, default, '["control"]["port"]')
        control_conf['interface'] = settings.check_and_load_existence(
            user_confdict, default, '["control"]["interface"]')

        log_conf = settings.check_and_load_existence(user_confdict, default,
                                                     '["log"]["path"]')
        self._conf_dict['control'] = control_conf
        self._conf_dict['log'] = log_conf
Пример #2
0
    def test_arrary_special_chars(self):
        """test arrary"""
        # test conf arrary
        list_conf = conf.Configure2Dict('./conf/test.list.conf',
                                        False).get_dict()
        ut.assert_eq(len(list_conf['arrary_test']['a']), 4)
        ut.assert_eq(len(list_conf['arrary_test']['b']), 2)
        ut.assert_eq(len(list_conf['arrary_test']['c']), 1)
        # test special chars
        ut.assert_eq(list_conf['sepecial_chars']['with_back_slash_d'],
                     r'^/((home(/disk\d+)*)|tmp)/(normandy|work|mapred)/.*')
        # test disorder of arrays
        confdict = conf.Configure2Dict('./conf/conf_mock.conf',
                                       False).get_dict()
        ut.assert_eq('123' in confdict['test']['nice']['prefix'], True)
        ut.assert_eq(len(confdict['test']['nice']['prefix']), 2)

        newdict = {
            'minghao': 'abc',
            'liuxuan': [1, 2, 3, 4],
            'layer1': {
                'layer2': 'abc',
                'layer2-array': [{
                    'key-1': 1
                }, {
                    'key-1': 2
                }],
            },
            'layer1-array': [{
                'key-1': 1
            }, {
                'key-1': 2
            }],
            'zksdfjk': 'abc',
            'kehyrj': 1,
            'test': 'abcdefg\d'
        }

        confdict['layer2']['newtest'] = newdict

        confobj = conf.Dict2Configure(confdict)
        confobj.write_conf('./conf/test.conf')

        test_dict = conf.Configure2Dict('./conf/test.conf').get_dict()
        print('test_comments:', confdict['test_comments'])
Пример #3
0
 def test_include_files(self):
     """test include"""
     include_conf = conf.Configure2Dict('./conf/test.include.conf')
     include_dict = include_conf.get_dict(ignore_error=True)
     ut.assert_in('./conf/test.included.conf',
                  include_dict['$include'].keys())
     in_confdict = include_dict['$include']['./conf/test.included.conf']
     ut.assert_eq(in_confdict['layer_included']['layer1-option00'],
                  'layer1-option00')
Пример #4
0
    def _load_conf(self, conf_file):
        """
            load conf into memory.
            If user conf does not have the conf item, arrow will use
            default values in arrow.common.settings(.py)
        """
        if not os.path.exists(conf_file):
            raise IOError('conf file not found:%s' % conf_file)
        self._conf_dict = {}
        user_confdict = conf.Configure2Dict(conf_file).get_dict()
        default = settings.ARROW_MASTER_DEFAULT_PARAMS
        self._conf_dict['control'] = {}
        settings.check_and_load_existence(
            user_confdict, default, '["control"]'
        )
        self._conf_dict['control']['queue_exec_thdnum'] = \
                settings.check_and_load_existence(
            user_confdict, default, '["control"]["queue_exec_thdnum"]'
        )
        self._conf_dict['control']['queue_delay_exe_thdnum'] = \
                settings.check_and_load_existence(
            user_confdict, default, '["control"]["queue_delay_exe_thdnum"]'
        )
        self._conf_dict['control']['queue_exec_thdnum'] = \
                settings.check_and_load_existence(
            user_confdict, default, '["control"]["queue_exec_thdnum"]'
        )
        self._conf_dict['control']['local_datadir'] = \
                settings.check_and_load_existence(
            user_confdict, default, '["control"]["local_datadir"]'
        )

        self._conf_dict['control']['check_heartbeat_interval'] = \
                settings.check_and_load_existence(
            user_confdict, default, '["control"]["check_heartbeat_interval"]'
        )
        self._conf_dict['control']['judge_agent_dead_in_sec'] = \
                settings.check_and_load_existence(
            user_confdict, default, '["control"]["judge_agent_dead_in_sec"]'
        )
        self._conf_dict['control']['keep_lost'] = \
                settings.check_and_load_existence(
            user_confdict, default, '["control"]["keep_lost"]'
        )
        self._conf_dict['control']['port'] = \
                settings.check_and_load_existence(
            user_confdict, default, '["control"]["port"]'
        )
Пример #5
0
 def test_include_wrong_file(self):
     """test wrong include"""
     include_conf = conf.Configure2Dict('./conf/test.include.wrong.conf')
     include_dict = include_conf.get_dict(ignore_error=True)
     ut.assert_in('./conf/test.included.conf',
                  include_dict['$include'].keys())
     in_confdict = include_dict['$include']['./conf/test.included.conf']
     ut.assert_eq(in_confdict['layer_included']['layer1-option00'],
                  'layer1-option00')
     conf.Dict2Configure(include_dict).write_conf(
         './conf/test.include.write')
     try:
         include_dict = include_conf.get_dict(ignore_error=False)
         ut.assert_eq('should raise IOError', 1)
     except IOError as _:
         pass
Пример #6
0
#
# #############################################################
"""
:authors:
    Guannan Ma maguannan @mythmgn
:create_date:
    2015/2/5 15:42
:modify_date:
    2015/2/5 15:42
:description:
    unittest of cup.util.conf
"""

import cup.util.conf as conf

confdict = conf.Configure2Dict('./conf_mock.conf', False).get_dict()

print confdict

newdict = {
    'minghao': 'abc',
    'liuxuan': [1, 2, 3, 4],
    'layer1': {
        'layer2': 'abc',
        'layer2-array': [{
            'key-1': 1
        }, {
            'key-1': 2
        }],
    },
    'layer1-array': [{