UI: карточка установленных аддонов на странице кластера; API аддонов и правки стилей

- Отдельная section.card после сводки ресурсов узлов, выравнивание бейджа Helm с заголовком
- Расширение эндпоинтов аддонов, схемы, helm_addons, cluster_addons.js/html
- Обновление api_routes.md
This commit is contained in:
Sergey Antropoff
2026-04-04 14:13:01 +03:00
parent eb063aec20
commit d55e69c756
9 changed files with 1238 additions and 229 deletions
+42
View File
@@ -306,6 +306,48 @@ class ClusterAddonsStatusResponse(BaseModel):
istio_mesh_ready: bool = Field(
description="Установлены istio-base, istiod и kiali-server в istio-system",
)
ingress_nginx_chart_version: str | None = Field(
default=None,
description="Версия чарта из helm list (если релиз установлен)",
)
kube_prometheus_stack_chart_version: str | None = Field(default=None)
metrics_server_chart_version: str | None = Field(default=None)
istiod_chart_version: str | None = Field(
default=None,
description="Версия чарта istiod в кластере (для селекта Istio на UI)",
)
istio_base_chart_version: str | None = Field(default=None)
kiali_server_chart_version: str | None = Field(default=None)
class InstalledAddonValuesBlob(BaseModel):
"""Снимок values одного релиза (helm get values --all)."""
chart_version: str | None = Field(default=None, description="Версия чарта из helm list")
values_yaml: str = Field(default="", description="YAML эффективных values")
class IstioKialiInstalledValuesBlob(BaseModel):
"""Три релиза mesh + версии для селектов UI."""
istio_chart_version: str | None = Field(
default=None,
description="Версия istiod (или base), для селекта «Версия чартов Istio»",
)
kiali_chart_version: str | None = None
istio_base_values_yaml: str = ""
istiod_values_yaml: str = ""
kiali_values_yaml: str = ""
class ClusterAddonsInstalledValuesResponse(BaseModel):
"""Values из кластера только для установленных аддонов (для редактирования перед upgrade)."""
cluster_name: str
ingress_nginx: InstalledAddonValuesBlob | None = None
kube_prometheus_stack: InstalledAddonValuesBlob | None = None
metrics_server: InstalledAddonValuesBlob | None = None
istio_kiali: IstioKialiInstalledValuesBlob | None = None
class HelmAddonApplyResponse(BaseModel):