first commit
This commit is contained in:
@@ -0,0 +1,34 @@
|
||||
"""Корень данных kind-k8s: каталог ``clusters/`` и пути в meta.json.
|
||||
|
||||
``KIND_K8S_WORKDIR`` — рабочий каталог, внутри него создаётся ``clusters/<имя>/``.
|
||||
В Docker-образе задаётся ``/work``, куда монтируется том с хоста (только данные).
|
||||
|
||||
Локальный запуск из ``kind-k8s/app/*.py``: переменную не задаём — корнем данных
|
||||
считается **родитель** каталога ``app/`` (каталог ``kind-k8s/``, рядом с ``clusters/``).
|
||||
|
||||
Автор: Сергей Антропов
|
||||
Сайт: https://devops.org.ru
|
||||
"""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
import os
|
||||
from pathlib import Path
|
||||
|
||||
# Каталог пакета: kind-k8s/app/; в образе: /opt/kind-k8s/app
|
||||
_LIB = Path(__file__).resolve().parent
|
||||
# Корень репозитория kind-k8s (рядом с clusters/), если KIND_K8S_WORKDIR не задан
|
||||
_REPO_KIND_K8S = _LIB.parent
|
||||
|
||||
|
||||
def data_root() -> Path:
|
||||
"""Корень данных (родитель для ``clusters/``)."""
|
||||
w = (os.environ.get("KIND_K8S_WORKDIR") or "").strip()
|
||||
if w:
|
||||
return Path(w).resolve()
|
||||
return _REPO_KIND_K8S
|
||||
|
||||
|
||||
def clusters_dir() -> Path:
|
||||
"""``<data_root>/clusters``."""
|
||||
return data_root() / "clusters"
|
||||
Reference in New Issue
Block a user