docs: release notes and version bump for v1.11.0
Some checks failed
Deploy to Production / Trigger production update (push) Has been cancelled

This commit is contained in:
markmorado
2026-07-24 06:30:51 +05:00
parent 99d8ce750d
commit b804a9bec5
7 changed files with 125 additions and 17 deletions

View File

@@ -4,6 +4,45 @@ All notable changes to PVEmanager will be documented in this file.
---
## [v1.11.0] - 2026-07-24
### 🔌 Servers & Connectivity
- **Auto-provisioned API tokens** — connect a server with a login and password once; the panel authenticates, creates its own API token on the node (`privsep=0`) and uses it from then on. The token can be revoked from the Proxmox UI, cannot be used for SSH or web login, and appears in the PVE audit log under its own name. Existing password-auth servers can be migrated in place via **Provision token**
- **Rejected credentials vs. unreachable node** — an offline server used to report a single "Failed to connect"; now a stale/rejected token (401, typically left behind after a cluster join replaces `user.cfg`/`token.cfg`) shows its own `auth_error` state with a hint explaining the cause
- **Per-node storage availability** — a storage can be declared cluster-wide but missing on a given node (e.g. an absent volume group or pool); this is now surfaced instead of staying invisible
- **Unified status badges** — every server list (including cluster topology and user-assignment views) renders the same `ServerStatusBadge` instead of a repeated online/offline ternary
- **Workspace-scoped listings** — `/api/cluster/topology` and `/api/resources/all` now respect the active workspace instead of returning every server on the panel; live metrics are fetched in parallel instead of serially, so one unreachable cluster no longer stalls the whole request
### 📊 Monitoring
- **Node Graphs tab** — CPU, IO delay, memory, load average, network, swap and root filesystem charts on the node detail page, with `1h/24h/7d/30d/1y` presets
### 💿 Images & Instance Creation
- **Local file upload** — upload an ISO or `vztmpl` directly from your machine to node storage, alongside the existing URL-download flow
- **Blank VM for ISO installs** — a new instance kind in the create wizard: an empty-disk VM with the ISO mounted and booted first, so the guest starts straight into the installer over noVNC; picking Windows presets OVMF, a SATA disk and an e1000 NIC
- **ISO downloads** — fetch an ISO onto a node by URL from the Images page or from a saved mirror (mirrors now accept `kind=iso`)
### 🔄 Realtime & UX
- Instance and workspace lists now update immediately after assigning servers/users, deploying, or deleting a VM/container — no manual refresh needed
- The node overview no longer flashes "no data" while the instance list is still loading
### 🛠 Reliability
- **Panel self-update recovers from a stalled rebuild** instead of hanging at "restarting — 80%" forever; after a timeout it surfaces a clear "failed" state pointing at the host update logs
### 🎨 Theme
- Dark theme surfaces (background, card, popover, sidebar, borders) shifted from neutral to a blue-graphite hue
### 📖 Documentation
- Expanded the RBAC/Security guide (permission format, evaluation order, full permission catalogue, per-page map) and added a complete Russian translation, **WIKI.ru.md**
---
## [v1.10.2] - 2026-07-23
### 🐛 Fixes

View File

@@ -4,6 +4,45 @@
---
## [v1.11.0] - 2026-07-24
### 🔌 Серверы и подключение
- **Автосоздание API-токенов** — сервер можно подключить по логину и паролю: панель один раз аутентифицируется, создаёт на ноде собственный API-токен (`privsep=0`) и дальше работает по нему. Токен отзывается из UI Proxmox, не даёт SSH- и веб-логина и виден в аудите PVE под своим именем. Уже подключённые по паролю серверы переводятся на токен без переподключения кнопкой **«Перевести на API-токен»**
- **Отклонённые учётные данные vs. недоступная нода** — раньше офлайн-сервер показывал единое «Не удалось подключиться»; теперь протухший/отклонённый токен (401, обычно остаётся после того, как вступление ноды в кластер заменяет `user.cfg`/`token.cfg`) получает собственное состояние `auth_error` с подсказкой о причине
- **Доступность storage по нодам** — storage может быть объявлен на весь кластер, но отсутствовать на конкретной ноде (нет volume group или пула); теперь это видно, а не скрыто
- **Единые бейджи статуса** — все списки серверов (включая топологию кластера и назначение пользователей) рендерят один `ServerStatusBadge` вместо повторяющегося тернарника online/offline
- **Списки в рамках рабочего пространства** — `/api/cluster/topology` и `/api/resources/all` теперь учитывают активное рабочее пространство, а не отдают все серверы панели; живые метрики собираются параллельно, а не последовательно, поэтому один недоступный кластер больше не тормозит весь запрос
### 📊 Мониторинг
- **Вкладка «Графики» у ноды** — CPU, IO delay, память, load average, сеть, swap и корневая ФС на странице ноды, с пресетами `1h/24h/7d/30d/1y`
### 💿 Образы и создание инстансов
- **Загрузка локального файла** — ISO или `vztmpl` можно загрузить прямо со своего компьютера в storage ноды, в дополнение к загрузке по URL
- **Пустая VM для установки с ISO** — новый тип инстанса в мастере создания: VM с пустым диском и смонтированным первым по порядку загрузки ISO, гость сразу попадает в установщик через noVNC; выбор Windows задаёт OVMF, SATA-диск и сетевую карту e1000
- **Загрузка ISO** — ISO можно скачать на ноду по URL со страницы «Образы» или из сохранённого зеркала (зеркала теперь принимают `kind=iso`)
### 🔄 Реалтайм и UX
- Списки инстансов и рабочих пространств обновляются сразу после назначения серверов/пользователей, деплоя или удаления VM/контейнера — без ручного обновления
- Обзор ноды больше не мигает «нет данных», пока список инстансов ещё загружается
### 🛠 Надёжность
- **Самообновление панели восстанавливается после зависшей пересборки** вместо вечного «restarting — 80%»; по таймауту показывается понятное состояние «failed» со ссылкой на логи update-сервиса хоста
### 🎨 Тема
- Поверхности тёмной темы (фон, карточки, popover, сайдбар, границы) сдвинуты с нейтрального оттенка на сине-графитовый
### 📖 Документация
- Расширен раздел RBAC/Security (формат прав, порядок проверки, полный каталог прав, карта прав по страницам), добавлен полный русский перевод — **WIKI.ru.md**
---
## [v1.10.2] - 2026-07-23
### 🐛 Исправления

View File

@@ -4,7 +4,7 @@
**Modern web panel for managing Proxmox servers, virtual machines and LXC containers**
[![Version](https://img.shields.io/badge/version-1.10.2-blue?style=flat-square)](CHANGELOG.md)
[![Version](https://img.shields.io/badge/version-1.11.0-blue?style=flat-square)](CHANGELOG.md)
[![License](https://img.shields.io/badge/license-MIT-green?style=flat-square)](LICENSE)
[![Docker](https://img.shields.io/badge/docker-ready-2496ED?style=flat-square&logo=docker&logoColor=white)](compose.yml)
[![Python](https://img.shields.io/badge/python-3.12-3776AB?style=flat-square&logo=python&logoColor=white)](backend/)

View File

@@ -4,7 +4,7 @@
**Современная веб-панель для управления серверами Proxmox, виртуальными машинами и контейнерами LXC**
[![Версия](https://img.shields.io/badge/версия-1.10.2-blue?style=flat-square)](CHANGELOG.md)
[![Версия](https://img.shields.io/badge/версия-1.11.0-blue?style=flat-square)](CHANGELOG.md)
[![Лицензия](https://img.shields.io/badge/лицензия-MIT-green?style=flat-square)](LICENSE)
[![Docker](https://img.shields.io/badge/docker-готов-2496ED?style=flat-square&logo=docker&logoColor=white)](compose.yml)
[![Python](https://img.shields.io/badge/python-3.12-3776AB?style=flat-square&logo=python&logoColor=white)](backend/)

View File

@@ -1 +1 @@
1.10.2
1.11.0

29
WIKI.md
View File

@@ -1,6 +1,6 @@
# 📖 PVEmanager - Documentation
> Complete guide for installation, configuration and usage of PVEmanager v1.10.2
> Complete guide for installation, configuration and usage of PVEmanager v1.11.0
---
@@ -173,10 +173,11 @@ This section summarizes key API endpoints. All require JWT authentication.
### Proxmox Servers
- `GET /api/servers` — list servers
- `POST /api/servers` — add server
- `POST /api/servers` — add server (`auto_create_token` provisions an API token from a login/password)
- `PUT /api/servers/{id}` — update server
- `DELETE /api/servers/{id}` — delete server
- `POST /api/servers/{id}/test` — test connection
- `POST /api/servers/{id}/provision-token` — migrate a password-auth server to an auto-provisioned API token
### Virtual Machines
@@ -308,8 +309,9 @@ This section summarizes key API endpoints. All require JWT authentication.
- Add multiple servers
- API Token or password authentication
- Automatic API token creation
- Server status monitoring
- Automatic API token creation, with in-place migration for existing password-auth servers
- Server status monitoring, distinguishing an unreachable node from rejected/stale credentials
- Per-node storage availability
### VM and LXC Management
@@ -394,7 +396,7 @@ Per-user resource limits enforced when deploying VMs/LXC:
### Monitoring
- Real-time CPU, RAM, Disk, Network metrics
- Historical graphs (hour, day, week, month)
- Historical graphs (hour, day, week, month) for both instances and nodes (node **Graphs** tab: CPU, IO delay, memory, load average, network, swap, root filesystem)
- Resource alert thresholds
---
@@ -672,6 +674,8 @@ The **Images** module allows you to browse, download, and manage OS images from
- **Auto-convert to template** — optional automatic conversion of downloaded images to Proxmox VM templates
- **Architecture-aware filtering** — images are filtered by node platform (x86-64, aarch64); default architecture matches the selected node
- **Custom mirrors** — administrators can add, edit, and manage custom mirror sources for image discovery
- **ISO downloads** — fetch install ISOs by URL, from a saved mirror (`kind=iso`), or straight from the ISO step of the create-instance wizard. The bundled catalog stays `.qcow2`-only on purpose — install ISOs have no stable "latest" URL, so hardcoded links would rot on every point release
- **Local file upload** — upload an ISO or LXC template (`vztmpl`) from your own machine straight to node storage, for images that aren't published anywhere the panel can reach
### Accessing Images
@@ -687,6 +691,17 @@ The **Images** module allows you to browse, download, and manage OS images from
4. Click **Download** — progress is tracked in real-time
5. Once complete, the image is available in storage for VM deployment
### Uploading a Local File
1. Go to **Infrastructure** → **Images** and pick **Upload**
2. Select an ISO or `vztmpl` file and the target storage
3. The panel streams the file to the node in the background; progress is tracked the same way as a URL download
4. Once complete, the file is available in storage for VM/CT deployment
### Installing an OS from an ISO
The create-instance wizard offers a **blank VM** kind for ISO-based installs: it provisions an empty disk with the chosen ISO mounted on `ide2` and set first in the boot order, so the VM boots straight into the installer over the built-in noVNC console. Selecting a Windows guest automatically presets OVMF firmware, a SATA disk and an e1000 NIC, since the installer has no virtio drivers loaded yet.
### Custom Mirrors (Admin Only)
Administrators can configure custom image repositories:
@@ -2491,5 +2506,5 @@ A: Not yet, but planned for future versions.
---
*Last updated: July 23, 2026*
*Version: 1.10.2*
*Last updated: July 24, 2026*
*Version: 1.11.0*

View File

@@ -1,6 +1,6 @@
# 📖 PVEmanager — Документация
> Полное руководство по установке, настройке и использованию PVEmanager v1.10.2
> Полное руководство по установке, настройке и использованию PVEmanager v1.11.0
---
@@ -172,10 +172,11 @@ CORS_ORIGINS=*
### Серверы Proxmox
- `GET /api/servers` — список серверов
- `POST /api/servers` — добавить сервер
- `POST /api/servers` — добавить сервер (`auto_create_token` создаёт API-токен по логину/паролю)
- `PUT /api/servers/{id}` — обновить сервер
- `DELETE /api/servers/{id}` — удалить сервер
- `POST /api/servers/{id}/test` — проверить подключение
- `POST /api/servers/{id}/provision-token` — перевести сервер с пароля на автосозданный API-токен
### Виртуальные машины
@@ -307,8 +308,9 @@ CORS_ORIGINS=*
- Добавление нескольких серверов
- Аутентификация через API Token или пароль
- Автоматическое создание API-токена
- Мониторинг статуса серверов
- Автоматическое создание API-токена с переводом уже подключённых по паролю серверов без переподключения
- Мониторинг статуса серверов с различением недоступной ноды и отклонённых/протухших учётных данных
- Доступность storage по нодам
### Управление ВМ и LXC
@@ -393,7 +395,7 @@ CORS_ORIGINS=*
### Мониторинг
- Метрики CPU, RAM, диска, сети в реальном времени
- Исторические графики (час, день, неделя, месяц)
- Исторические графики (час, день, неделя, месяц) как для инстансов, так и для нод (вкладка «Графики» у ноды: CPU, IO delay, память, load average, сеть, swap, корневая ФС)
- Пороги оповещений по ресурсам
---
@@ -671,6 +673,8 @@ RAM: 512 МБ – 128 ГБ
- **Автоконвертация в шаблон** — опциональная автоматическая конвертация скачанных образов в шаблоны ВМ Proxmox
- **Фильтрация по архитектуре** — образы фильтруются по платформе узла (x86-64, aarch64); архитектура по умолчанию соответствует выбранному узлу
- **Кастомные зеркала** — администраторы могут добавлять, редактировать и управлять кастомными источниками зеркал
- **Загрузка ISO** — установочный ISO можно скачать по URL, из сохранённого зеркала (`kind=iso`) или прямо на шаге ISO в мастере создания инстанса. Встроенный каталог намеренно ограничен `.qcow2` — у установочных ISO нет стабильной ссылки на «последнюю версию», поэтому жёстко прописанные ссылки протухали бы при каждом релизе
- **Загрузка локального файла** — ISO или шаблон LXC (`vztmpl`) можно загрузить со своего компьютера прямо в storage ноды — для образов, которые нигде публично не доступны панели
### Доступ к Images
@@ -686,6 +690,17 @@ RAM: 512 МБ – 128 ГБ
4. Нажмите **Download** — прогресс отслеживается в реальном времени
5. По завершении образ доступен в хранилище для развёртывания ВМ
### Загрузка локального файла
1. Перейдите в **Infrastructure** → **Images** и выберите **Upload**
2. Укажите файл ISO или `vztmpl` и целевое хранилище
3. Панель передаёт файл на ноду в фоне; прогресс отслеживается так же, как при загрузке по URL
4. По завершении файл доступен в хранилище для развёртывания ВМ/CT
### Установка ОС с ISO
Мастер создания инстанса предлагает тип **«пустая ВМ»** для установки с ISO: создаётся ВМ с пустым диском и смонтированным на `ide2` образом, который ставится первым в порядке загрузки, — гость сразу попадает в установщик через встроенную консоль noVNC. Выбор гостя Windows автоматически задаёт прошивку OVMF, SATA-диск и сетевую карту e1000, так как у установщика ещё нет драйверов virtio.
### Кастомные зеркала (только админ)
Администраторы могут настроить кастомные репозитории образов:
@@ -2407,5 +2422,5 @@ db.close()
---
*Последнее обновление: 23 июля 2026*
*Версия: 1.10.2*
*Последнее обновление: 24 июля 2026*
*Версия: 1.11.0*