def _get_config(key, default_value=None, required=False):
"""
Gets config from environment variables
Will return default_value if key is not in environment variables
:param key: the key of the env variable you are looking for
:param default_value: value to return if key not in os.environ.
:param required: if true and key is not set, will raise InvalidConfigException
:return: os.environ[key] if key in os.environ els default_value
:exception InvalidConfigException - raised when a required config key is not properly set
"""
if required and key not in os.environ:
raise InvalidConfigException("Invalid ENV variable. Please check {0}".format(key))
to_return = os.environ.get(key, default_value)
if isinstance(to_return, basestring):
try:
to_return = _string_to_bool(to_return)
except NonBooleanStringException:
pass
os.environ[key] = str(to_return)
return to_return
评论列表
文章目录