| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566 |
- """
- Переменные окружения для контейнеризации.
- """
- import os
- from .mod_result import Result
- def env_str(name_env: str) -> Result[str]:
- """Возвращает строку из переменной окружения"""
- param = os.getenv(name_env)
- if param is None or param == "":
- return Result(err=f"env_str(): env {name_env} not set")
- return Result(result=param)
- def env_int(name_env: str) -> Result[int]:
- """Возвращает целое из переменной окружения"""
- param: str | None = os.getenv(name_env)
- if param is None or param == "":
- return Result(err=f"env_int(): env {name_env} not set")
- iparam = 0
- err = ""
- try:
- iparam = int(param) # type: ignore
- except TypeError as e:
- err = f"env_int(): in convert str to int, err=\n\t{e}"
- except ValueError as e:
- err = f"env_int(): in convert str to int, err=\n\t{e}"
- if err != "":
- return Result(err=err)
- return Result(result=iparam)
- def env_float(name_env: str) -> Result[float]:
- """Возвращает вещественное из переменной окружения"""
- param: str | None = os.getenv(name_env)
- if param is None or param == "":
- return Result(err=f"env_float(): env {name_env} not set")
- iparam = 0
- err = ""
- try:
- iparam = float(param) # type: ignore
- except TypeError as e:
- err = f"env_float(): in convert str to float, err=\n\t{e}"
- except ValueError as e:
- err = f"env_float(): in convert str to float, err=\n\t{e}"
- if err != "":
- return Result(err=err)
- return Result(result=iparam)
- def env_bool(name_env: str) -> Result[bool]:
- """Возвращает строку из переменной окружения"""
- param: str | None = os.getenv(name_env)
- if param is None:
- return Result(err=f"env_bool(): env {name_env} is None")
- param = param.upper()
- if param == "TRUE":
- return Result(result=True)
- if param == "FALSE":
- return Result(result=False)
- return Result(err=f"env_bool(): env {name_env} bad, val={param}")
|