Files
KindClustersDashboard/app/kind_k8s_paths.py
Sergey Antropoff ae961ef5fe first commit
2026-04-04 05:15:54 +03:00

35 lines
1.3 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

"""Корень данных 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"