- Страница /cluster/<имя>: сводка, ресурсы узлов полосами, отдельные карточки на каждый kubectl get … -o json, рестарт пода. - API: overview с блоками k8s_*, POST pods/restart, расширенный набор ресурсов (-A). - Панель: спиннер загрузки, правки дашборда и стилей; документация api_routes, compose и прочие сопутствующие изменения.
35 lines
1.1 KiB
Python
35 lines
1.1 KiB
Python
#!/usr/bin/env python3
|
||
"""Печать пути kubeconfig с подстановкой apiserver для kubectl из контейнера веб-UI.
|
||
|
||
Совпадает с логикой ``kubeconfig_path_for_container_kubectl`` (шлюз хоста + порт).
|
||
|
||
Автор: Сергей Антропов
|
||
Сайт: https://devops.org.ru
|
||
"""
|
||
|
||
from __future__ import annotations
|
||
|
||
import sys
|
||
from pathlib import Path
|
||
|
||
# Запуск из каталога app/ (рабочий каталог контейнера).
|
||
from kind_k8s_paths import clusters_dir
|
||
from kubeconfig_patch import kubeconfig_path_for_container_kubectl
|
||
|
||
|
||
def main() -> None:
|
||
if len(sys.argv) != 2:
|
||
print("Использование: effective_kubeconfig_path.py <имя_кластера>", file=sys.stderr)
|
||
raise SystemExit(2)
|
||
name = sys.argv[1].strip()
|
||
p = clusters_dir() / name / "kubeconfig"
|
||
if not p.is_file():
|
||
print(f"Нет файла {p}", file=sys.stderr)
|
||
raise SystemExit(1)
|
||
resolved = kubeconfig_path_for_container_kubectl(cluster_name=name, kube_source_path=p)
|
||
print(resolved, end="")
|
||
|
||
|
||
if __name__ == "__main__":
|
||
main()
|