make get_options a bit more refined
This commit is contained in:
parent
e4fd07185e
commit
2bec95b4f8
16
Utils.py
16
Utils.py
|
@ -172,20 +172,16 @@ def get_public_ipv4() -> str:
|
|||
return ip
|
||||
|
||||
|
||||
_options = None
|
||||
|
||||
|
||||
def get_options() -> dict:
|
||||
global _options
|
||||
if _options:
|
||||
return _options
|
||||
else:
|
||||
if not hasattr(get_options, "options"):
|
||||
locations = ("options.yaml", "host.yaml",
|
||||
local_path("options.yaml"), local_path("host.yaml"))
|
||||
|
||||
for location in locations:
|
||||
if os.path.exists(location):
|
||||
with open(location) as f:
|
||||
_options = parse_yaml(f.read())
|
||||
return _options
|
||||
raise FileNotFoundError(f"Could not find {locations[1]} to load options.")
|
||||
get_options.options = parse_yaml(f.read())
|
||||
break
|
||||
else:
|
||||
raise FileNotFoundError(f"Could not find {locations[1]} to load options.")
|
||||
return get_options.options
|
||||
|
|
Loading…
Reference in New Issue