blob: fdc100100915998f1f6a6d26d93714d502e8fef5 [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',
Eric Lie0493a42010-11-15 13:05:43 -080019 'reverify_max_hosts_at_once': 'reverify_max_hosts_at_once',
showardd1ee1dd2009-01-07 21:33:08 +000020 }
21
showard77182562009-06-10 00:16:05 +000022
showardd1ee1dd2009-01-07 21:33:08 +000023 def __init__(self):
24 self.read_config()
25
26
27 def read_config(self):
28 config = global_config.global_config
29 config.parse_config_file()
30 for field, config_option in self.FIELDS.iteritems():
31 setattr(self, field, config.get_config_value(CONFIG_SECTION,
32 config_option,
33 type=int))
34
showard77182562009-06-10 00:16:05 +000035
showardd1ee1dd2009-01-07 21:33:08 +000036config = SchedulerConfig()