Граф коммитов
20 Коммитов
Автор SHA1 Сообщение Дата
Claude 2450278d93 Резервные копии машин были добавлены: создание, восстановление, удаление
Первый модуль-фича на общем core.py — web/features/backups.py,
подключён в app.py одной строкой include_router.

- копия = папка /var/lib/virtuality/backups/<машина>/<ГГГГММДД-ЧЧММ>/
  с vm.xml (virsh dumpxml --migratable), <диск>.qcow2 на каждый диск
  и meta.json (машина, дата, диски, размер, версия, заметка);
- создание — фоновая операция: свободное место проверяется заранее по
  qemu-img info, работающая машина мягко выключается (ждём до 3 минут,
  без принудительного выключения), диски копируются qemu-img convert -c
  с прогрессом из строк «(NN.NN/100%)», после чего машина запускается;
- восстановление — операция: диски распаковываются в images/<имя>[-<диск>]
  .qcow2, в XML меняется имя, убираются uuid, MAC и nvram, затем
  virsh define; восстановление под занятым именем требует галочку
  «заменить существующую» — старая машина удаляется с дисками, а ISO
  перед этим извлекается из привода, чтобы --remove-all-storage его не
  стёр;
- страницы: «Резервные копии» в меню (все копии по машинам, занятое и
  свободное место), вкладка «Резервные копии» на странице машины с
  формой «Создать копию» и заметкой, страница восстановления с
  понятным списком шагов;
- create_backup(vm, note, wait=True) можно вызывать без HTTP —
  задел под расписание (python3 web/features/backups.py web01 «заметка»);
- tests/conftest.py: каталог backups, патчи core.*, вывод virsh
  domblklist --details, dumpxml --migratable и qemu-img info из fixtures;
  tests/test_backups.py — 33 теста парсеров, воркеров и маршрутов;
  tests/dev_server.py показывает демо-копии.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019LEUXMcdZo7b87mjkUsPgg
2026-09-25 14:32:05 +00:00
Claude 4098c270a4 Интерфейс панели был полностью перерисован
Новый дизайн в стиле коммерческих продуктов, рассчитанный на обычного
пользователя:
- светлая и тёмная темы (следует системной), шрифт Inter и иконки
  Lucide вшиты в панель — работает без интернета;
- общий каркас base.html и компоненты _ui.html вместо 14 независимых
  страниц; адаптивная вёрстка для телефона;
- простой язык: «Работает / Выключена», «Автозапуск», «Доступ из
  интернета» вместо running, autostart, DNAT; технические данные
  убраны во вкладку «Для специалистов»;
- главная: загрузка процессора, памяти и хранилища, карточки машин с
  главным действием и меню остальных, приветственный сценарий для
  первой машины;
- мастер создания машины из трёх шагов с готовыми конфигурациями;
- страница машины с вкладками, переключателем автозапуска и порядком
  загрузки кнопками;
- «Сеть и доступ»: открытие SSH, сайта, RDP и т. д. из списка,
  ручные IP машин, понятная диагностика;
- загрузка образов перетаскиванием с прогрессом и оставшимся временем;
- подтверждения опасных действий в диалоге и уведомления;
- раздел «Помощь»;
- web/presenters.py переводит вывод virsh и /proc в данные для
  страниц; tests/dev_server.py запускает панель с имитацией virsh.

Также: исправлено определение модели CPU на x86 («207» вместо
названия процессора), история версии 0.10.0 и документация обновлены
под Ubuntu 26.04 LTS, в README добавлены скриншоты.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019LEUXMcdZo7b87mjkUsPgg
2026-09-25 07:01:41 +00:00
Claude 10a780d381 Патчи установки были встроены в исходники web-панели
Раньше web/app.py, web/network_core.py и web/static/app.css собирались
на каждой ноде цепочкой из ~25 patch-скриптов во время установки.
Теперь результат этой цепочки хранится прямо в репозитории, а
install_web_panel.sh просто копирует web/ без модификаций. Поведение
установленной панели не меняется. Неиспользуемые patch-скрипты удалены.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_019LEUXMcdZo7b87mjkUsPgg
2026-09-25 06:22:28 +00:00
Виктор e08b15c94c Интерфейс панели был пересобран заново 2026-05-07 20:47:57 +09:00
Виктор 17fdc2aeea Стили базы знаний были добавлены 2026-05-07 20:04:30 +09:00
Виктор 885df15bec Стили дашборда и раскрывающегося меню были обновлены 2026-05-07 09:39:40 +09:00
Виктор 4da0becbe1 Стили кликабельного статуса автозапуска были добавлены 2026-05-07 09:23:20 +09:00
Виктор 75f7f59fc8 Стили компактных действий VM были добавлены 2026-05-07 09:02:57 +09:00
Виктор 30849e69a0 Стили вложенного блока готового образа были добавлены 2026-05-07 06:33:40 +09:00
Виктор 2459d79d23 Стили группы меню Образы были добавлены 2026-05-07 05:29:23 +09:00
Виктор 32426c8573 Стили AJAX и мобильного меню были добавлены 2026-05-07 04:18:52 +09:00
Виктор 165f1cc7db Обновить стиль панели под Virtualizor 2026-05-07 03:52:58 +09:00
Виктор 13cff2e9c6 Оформить уведомление об обновлениях 2026-05-07 01:55:49 +09:00
Виктор 65a29578af Style ISO upload progress 2026-05-07 01:17:29 +09:00
Виктор 8aa60648c0 Консоль VM растянута на всё окно браузера 2026-05-06 23:14:50 +09:00
Виктор 8b5af0d48e Добавлены стили для страницы сети 2026-05-06 21:41:43 +09:00
Виктор 87b1c58a7b Добавлены стили журнала операций и прогресса 2026-05-06 21:27:40 +09:00
Виктор e7aa52b44e Style VM creation form links and controls 2026-05-06 19:53:07 +09:00
Виктор 42a26e09b6 Style login page and logout button 2026-05-06 19:45:33 +09:00
Виктор 47c97f064f Add initial web panel styles 2026-05-06 19:32:49 +09:00