Browse Source

Make some EnvBase methods class methods

patch-2
Neil Booth 7 years ago
parent
commit
60761b35e1
  1. 27
      lib/env_base.py

27
lib/env_base.py

@ -26,34 +26,39 @@ class EnvBase(lib_util.LoggedClass):
self.rpc_host = self.default('RPC_HOST', 'localhost')
self.loop_policy = self.event_loop_policy()
def default(self, envvar, default):
@classmethod
def default(cls, envvar, default):
return environ.get(envvar, default)
def boolean(self, envvar, default):
@classmethod
def boolean(cls, envvar, default):
default = 'Yes' if default else ''
return bool(self.default(envvar, default).strip())
return bool(cls.default(envvar, default).strip())
def required(self, envvar):
@classmethod
def required(cls, envvar):
value = environ.get(envvar)
if value is None:
raise self.Error('required envvar {} not set'.format(envvar))
raise cls.Error('required envvar {} not set'.format(envvar))
return value
def integer(self, envvar, default):
@classmethod
def integer(cls, envvar, default):
value = environ.get(envvar)
if value is None:
return default
try:
return int(value)
except Exception:
raise self.Error('cannot convert envvar {} value {} to an integer'
.format(envvar, value))
raise cls.Error('cannot convert envvar {} value {} to an integer'
.format(envvar, value))
def obsolete(self, envvars):
@classmethod
def obsolete(cls, envvars):
bad = [envvar for envvar in envvars if environ.get(envvar)]
if bad:
raise self.Error('remove obsolete environment variables {}'
.format(bad))
raise cls.Error('remove obsolete environment variables {}'
.format(bad))
def event_loop_policy(self):
policy = self.default('EVENT_LOOP_POLICY', None)

Loading…
Cancel
Save