mirror of
https://github.com/budtmo/docker-android.git
synced 2026-02-06 11:26:45 +00:00
57 lines
1.4 KiB
Python
57 lines
1.4 KiB
Python
import logging
|
|
import os
|
|
|
|
logger = logging.getLogger("helper")
|
|
|
|
|
|
def convert_str_to_bool(given_str: str) -> bool:
|
|
"""
|
|
Convert String to Boolean value
|
|
|
|
:param given_str: given string
|
|
:return: converted string in Boolean
|
|
"""
|
|
if given_str:
|
|
if type(given_str) is str:
|
|
return given_str.lower() in ("yes", "true", "t", "1")
|
|
else:
|
|
raise AttributeError
|
|
else:
|
|
logger.info(f"'{given_str}' is empty!")
|
|
return False
|
|
|
|
|
|
def get_env_value_or_raise(env_key: str) -> str:
|
|
"""
|
|
Get value of necessary environment variable.
|
|
|
|
:param env_key: given environment variable
|
|
:return: env_value in String
|
|
"""
|
|
try:
|
|
env_value = os.getenv(env_key)
|
|
if not env_value:
|
|
raise RuntimeError(f"'{env_key}' is missing.")
|
|
elif env_value.isspace():
|
|
raise RuntimeError(f"'{env_key}' contains only white space.")
|
|
return env_value
|
|
except TypeError as t_err:
|
|
logger.error(t_err)
|
|
|
|
|
|
def symlink_force(source: str, target: str) -> None:
|
|
"""
|
|
Create Symbolic link
|
|
|
|
:param source: source file
|
|
:param target: target file
|
|
:return: None
|
|
"""
|
|
try:
|
|
os.symlink(source, target)
|
|
except FileNotFoundError as ffe_err:
|
|
logger.error(ffe_err)
|
|
except FileExistsError:
|
|
os.remove(target)
|
|
os.symlink(source, target)
|