19 from future
import standard_library
20 standard_library.install_aliases()
21 from builtins
import object
30 return '%s__%s' % (hw_uuid, host)
36 self.
_config = configparser.RawConfigParser()
38 if not self.
_config.has_section(_SECTION):
39 self.
_config.add_section(_SECTION)
43 smolt_user_config_dir = os.path.expanduser(
'~/.smolt/')
44 if not os.path.exists(smolt_user_config_dir):
45 os.mkdir(smolt_user_config_dir, 0o700)
50 logging.error(
'Flushing UUID database failed')
55 logging.info(
'Public UUID "%s" read from database' % pub_uuid)
57 except configparser.NoOptionError:
61 for i
in (hw_uuid, host, pub_uuid):
63 raise Exception(
'No parameter is allowed to be None')
65 logging.info(
'Public UUID "%s" written to database' % pub_uuid)
70 from smolt_config
import get_config_attr
71 _database_filename =
get_config_attr(
"UUID_DB", os.path.expanduser(
'~/.smolt/uuiddb.cfg'))
72 return _UuidDb(_database_filename)