1
2
3
4
5
6
7
8
9
10 import os
11 import re
12
13 _settings = None
14 if os.environ.get('HOME') is not None:
15 default_config_file = os.environ['HOME'] + '/.config/arvados/settings.conf'
16 else:
17 default_config_file = ''
18
19 KEEP_BLOCK_SIZE = 2**26
20 EMPTY_BLOCK_LOCATOR = 'd41d8cd98f00b204e9800998ecf8427e+0'
21
23 global _settings
24 _settings = {}
25
26
27 try:
28 _settings = load(config_file)
29 except IOError:
30 pass
31
32
33 for var in os.environ:
34 if var.startswith('ARVADOS_'):
35 _settings[var] = os.environ[var]
36
37 -def load(config_file):
38 cfg = {}
39 with open(config_file, "r") as f:
40 for config_line in f:
41 if re.match('^\s*$', config_line):
42 continue
43 if re.match('^\s*#', config_line):
44 continue
45 var, val = config_line.rstrip().split('=', 2)
46 cfg[var] = val
47 return cfg
48
50 if d is None:
51 d = settings()
52 return d.get(key, '').lower() in set(['1', 't', 'true', 'y', 'yes'])
53
54 -def get(key, default_val=None):
55 return settings().get(key, default_val)
56
61