47 lines
1.6 KiB
Python
47 lines
1.6 KiB
Python
from __future__ import annotations
|
|
|
|
import os
|
|
from pathlib import Path
|
|
|
|
def find_default_wiki_dir() -> Path:
|
|
env_wiki = os.environ.get("WIKI_DIR") or os.environ.get("GIT_REPO_DIR")
|
|
if env_wiki:
|
|
return Path(env_wiki).resolve()
|
|
|
|
candidates = [
|
|
Path("/wiki"),
|
|
Path.cwd() / "knowledge-wiki",
|
|
Path.cwd().parent.parent / "knowledge-wiki",
|
|
Path("/Users/moritz/src/infrapuzzle/knowledge-wiki"),
|
|
Path.home() / "src" / "infrapuzzle" / "knowledge-wiki",
|
|
Path("/home/node/.openclaw/wiki/main"),
|
|
]
|
|
for c in candidates:
|
|
if c.is_dir() and (c / "data").is_dir():
|
|
return c.resolve()
|
|
|
|
return (Path.cwd() / "knowledge-wiki").resolve()
|
|
|
|
|
|
WIKI_DIR = find_default_wiki_dir()
|
|
DATA_DIR = Path(
|
|
os.environ.get("DATA_DIR")
|
|
or os.environ.get("DUCKDB_DATA_DIR")
|
|
or (WIKI_DIR / "data")
|
|
).resolve()
|
|
|
|
GIT_REPO_URL = os.environ.get(
|
|
"GIT_REPO_URL",
|
|
os.environ.get("GIT_REMOTE_URL", "https://git.moritzgraf.de/moritz/knowledge-wiki.git"),
|
|
)
|
|
GIT_USERNAME = os.environ.get("GIT_SYNC_USERNAME", "")
|
|
GIT_PASSWORD = os.environ.get("GIT_SYNC_PASSWORD", os.environ.get("WIKI_SYNC_TOKEN", ""))
|
|
GIT_BRANCH = os.environ.get("GIT_BRANCH", "main")
|
|
GIT_SYNC_INTERVAL_SECONDS = int(os.environ.get("GIT_SYNC_INTERVAL_SECONDS", "60"))
|
|
AUTO_GIT_SYNC = os.environ.get("AUTO_GIT_SYNC", "true").lower() in ("1", "true", "yes")
|
|
GIT_AUTHOR_NAME = os.environ.get("GIT_AUTHOR_NAME", "DuckDB Backend")
|
|
GIT_AUTHOR_EMAIL = os.environ.get("GIT_AUTHOR_EMAIL", "duckdb-backend@haumdaucher.de")
|
|
|
|
PORT = int(os.environ.get("PORT", "8000"))
|
|
HOST = os.environ.get("HOST", "0.0.0.0")
|