feat: update default presets
This commit is contained in:
@@ -3,6 +3,7 @@ import os
|
||||
import re
|
||||
import tomllib
|
||||
from pathlib import Path
|
||||
from typing import Any
|
||||
|
||||
import dotenv
|
||||
from jinja2 import Environment
|
||||
@@ -11,13 +12,21 @@ from ..preset.model import Variables
|
||||
|
||||
|
||||
def do_bool(data: str | None) -> bool:
|
||||
return not (data is None or data.lower() in ["false", "null", "none", "0", ""])
|
||||
if data is None:
|
||||
return False
|
||||
if not isinstance(data, str):
|
||||
data = str(data)
|
||||
return data.lower() not in ["false", "null", "none", "0", ""]
|
||||
|
||||
|
||||
def do_env(key: str, default: str | None = None) -> str | None:
|
||||
return os.environ.get(key=key.upper(), default=default)
|
||||
|
||||
|
||||
def do_not(value: Any | None) -> bool:
|
||||
return not do_bool(str(value))
|
||||
|
||||
|
||||
def _build_env(basepath: Path) -> Environment:
|
||||
env = Environment()
|
||||
|
||||
@@ -71,6 +80,7 @@ def _build_env(basepath: Path) -> Environment:
|
||||
env.filters["key"] = do_key
|
||||
env.filters["bool"] = do_bool
|
||||
env.filters["env"] = do_env
|
||||
env.filters["not"] = do_not
|
||||
return env
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user