blob: 23fb0eaa0cc62b5321901cdccfb7982fd69a0f21 [file] [log] [blame]
showardd1ee1dd2009-01-07 21:33:08 +00001import common
2from autotest_lib.client.common_lib import global_config
3
4CONFIG_SECTION = 'SCHEDULER'
5
6class SchedulerConfig(object):
7 """
8 Contains configuration that can be changed during scheduler execution.
9 """
showard8dbd05a2010-01-12 18:54:59 +000010 FIELDS = {'max_processes_per_drone': 'max_processes_per_drone',
11 'max_processes_started_per_cycle': 'max_jobs_started_per_cycle',
12 'clean_interval': 'clean_interval_minutes',
13 'max_parse_processes': 'max_parse_processes',
14 'tick_pause_sec': 'tick_pause_sec',
15 'max_transfer_processes': 'max_transfer_processes',
16 'secs_to_wait_for_atomic_group_hosts':
showard77182562009-06-10 00:16:05 +000017 'secs_to_wait_for_atomic_group_hosts',
showard8dbd05a2010-01-12 18:54:59 +000018 'reverify_period_minutes': 'reverify_period_minutes',
showardd1ee1dd2009-01-07 21:33:08 +000019 }
20
showard77182562009-06-10 00:16:05 +000021
showardd1ee1dd2009-01-07 21:33:08 +000022 def __init__(self):
23 self.read_config()
24
25
26 def read_config(self):
27 config = global_config.global_config
28 config.parse_config_file()
29 for field, config_option in self.FIELDS.iteritems():
30 setattr(self, field, config.get_config_value(CONFIG_SECTION,
31 config_option,
32 type=int))
33
showard77182562009-06-10 00:16:05 +000034
showardd1ee1dd2009-01-07 21:33:08 +000035config = SchedulerConfig()