Перейти к основному содержимому

Salt.Box - релиз 0.2.0

· 4 мин. чтения
Salt.Box Team
Salt.Box Team
SaltBox maintainers

Salt.Box 0.2.0 — стабилизация платформы, Pillar-подсистема и файловый менеджер

Дата релиза: апрель 2026 г.

Релиз Salt.Box 0.2.0 — крупное обновление, направленное на зрелость пользовательского интерфейса, переработку подсистемы Pillar, интеграцию файлового менеджера, а также масштабную стабилизацию всех модулей платформы. Исправлено более 65 ошибок и реализовано свыше 60 новых возможностей.


Для пользователей

Salt.Box 0.2.0 делает ежедневную работу с платформой быстрее, нагляднее и предсказуемее:

Переработанная система Pillar

  • Создание глобальных Pillar-ов из интерфейса.
  • Зашифрованные Pillar (Secure Pillar) — конфиденциальные данные хранятся в зашифрованном виде и расшифровываются только в момент передачи на Salt Master.
  • Автоматическая подстановка pillarenv при запуске задач и команд — больше не нужно указывать окружение вручную.

Файловый менеджер ядра

  • Новый модуль файлового менеджера интегрирован в платформу и доступен через боковое меню.
  • Поддержка кэширования и корректная работа заголовков для файловых операций.

Единообразный и предсказуемый интерфейс

  • Переработаны таблицы: единый стиль элементов управления, кликов и действий во всех модулях.
  • Унифицированы боковые панели (Drawer) — стабильная работа при обновлении данных в реальном времени, одинаковое поведение для одинаковых сущностей.
  • Единый конструктор фильтров с индикацией активной фильтрации на кнопке.
  • Древовидное отображение коллекций в навигации — наглядная иерархия инфраструктуры.

Улучшенная работа с задачами и командами

  • Прогресс-бар выполнения задачи с полным набором статусов (включая ошибки запуска и игнорирование).
  • Точечный перезапуск задач на конкретных клиентах, не затрагивая остальных.
  • Таймаут ожидания ответа от клиентов — система не зависает при недоступных миньонах.
  • Агрегированный список задач и политик на одной странице.
  • Подробная информация о задаче/политике в обновлённой форме.

Навигация и доступность

  • Пункты меню автоматически скрываются для недоступных модулей.
  • Мастера перенесены в раздел «Настройки SaltBox».
  • Модуль инвентаризации вынесен на второй уровень бокового меню.
  • Кнопка «назад» вместо хлебных крошек — быстрее и компактнее.

Производительность и стабильность

  • Устранена медленная работа системы при большом объёме данных.
  • Исправлено пропадание интерфейса при выполнении задачи на большом количестве клиентов.
  • Добавлен лоудер до загрузки модулей — исключено мерцание ошибки при старте.
  • Корректное обновление таблиц по WebSocket при активных фильтрах.

Для разработчиков и интеграторов

В релизе 0.2.0 проведена стандартизация бэкенд-API, расширена модель данных и добавлены новые интеграционные точки.

Backend API

  • Ручки списков приведены к единому формату (POST с пагинацией, сортировкой и фильтрацией).
  • CRUD-ручки для шаблонов задач, включая получение JSON-схем по имени шаблона.
  • Ручки остановки и перезапуска сценария.
  • Ручка принудительного запуска задачи планировщика.
  • Поддержка таймзон в задачах планировщика.
  • Таймауты для джоб — защита от зависания при недоступных миньонах.
  • Новые статусы джоб с созданием пустых Job Return для всех целевых клиентов.

Pillar API

  • Полный цикл создания и получения списка пилларов.
  • Механизм шифрованных пилларов (Secure Pillar) на уровне хранения.
  • Автоматическая подстановка pillarenv через kwarg при отправке в Salt.
  • Передача id коллекции в pillarenv.
  • Политики авторизации на ручки Pillars (в разработке).

Service Discovery

  • Добавлено поле is_available в конфигурацию сервисов — возможность программно отключать модули.
  • Файловый менеджер подключён к Service Discovery.

Древовидные структуры

  • Изменения API для поддержки древовидных коллекций.
  • Новый метод BaseTreeMongoRepository для возврата полного дерева.

Инфраструктура развёртывания

  • Порядок в salt-master:/srv/ — чистая структура каталогов.
  • Установка Windows-грейнов в скрипте saltbox_livecd.py при отсутствии параметров в /proc/cmdline.
  • VCD: выделение адреса хосту и проброс внешнего адреса в CloudInit.
  • Составлена схема текущей конфигурации RabbitMQ.

Исправления ошибок (65+)

ОбластьОписаниеКол-во
Навигация и кнопка «назад»Исправлена работа кнопки возврата во всех контекстах (задачи, команды, клиенты, планировщик)6
ФильтрыКорректное применение, сохранение и отображение фильтров на всех страницах5
СортировкаИсправлена сортировка в таблицах команд, задач и при агрегации MongoDB4
JSON-формы и схемыДефолтные значения, валидация, условные поля, allOf-блоки, ui:label6
ПланировщикОднократный запуск, ежегодное расписание, датапикер3
Таблицы и данныеПодсчёт клиентов/Total, рендер таблиц, обновление по WebSocket7
Drawer и модальные окнаПустые панели, закрытие диалогов, ошибки отображения4
Кнопки и иконки«Повторить команду», свичи, отсутствующие иконки, горячие клавиши7
PillarAPI-ошибки создания/просмотра, пустые строки в json-editor3
UI/вёрсткаГоризонтальный скроллбар, отступы, расположение кнопок, сетевые интерфейсы5
Прочее401-авторизация, создание задачи при непринятом мастере, дублирование клиентов в MongoDB, производительность5+

Ссылки