HSM Workflow Guide: Единый процесс управления стеком
Этот документ является точкой входа для понимания того, как Hyper Stack Manager (hsm) оркестрирует разработку сложных систем, объединяя миры Python и Docker.
1. Концепция: Intent vs Artifacts
hsm разделяет "желаемое состояние" и "техническую реализацию":
- Intent (Намерение): Описывается в
hsm.yaml. Вы указываете компоненты, их версии и режимы (dev/prod). - Artifacts (Артефакты): Результат
hsm sync. Это конфигиpyproject.toml(для Python) иdocker-compose.hsm.yml(для Docker), которые HSM генерирует автоматически.
2. Основные сценарии (Deep Dives)
Для детального изучения каждого направления используйте специализированные руководства:
- Python Workflow — управление зависимостями через
uv, editable-режимы и замена Git Submodules. - Docker Workflow — динамическое управление контейнерами, использование Profiles и генерация Override-файлов.
- VES Workflow — работа с изолированными сервисами через рантайм
uv.
3. Гибридный воркфлоу (Hybrid Stack)
Главная сила HSM — в одновременном управлении кодом и инфраструктурой.
Пример из жизни: Вы разрабатываете RAG-систему и хотите заменить Qdrant на Milvus.
- Команда:
hsm group add vector-db --option milvus. - Действие HSM:
- В
pyproject.tomlпрописывается клиент для Milvus. - В
docker-compose.hsm.ymlпрописывается запуск контейнера Milvus вместо Qdrant.
- В
- Sync: Один вызов
hsm syncперестраивает весь стек.
4. Жизненный цикл проекта с HSM
| Этап | Команда | Результат |
|---|---|---|
| Инициализация | hsm init | Создание hsm.yaml и структуры реестра. |
| Добавление | hsm library add <name> | Поиск в Реестре и добавление в манифест. |
| Разработка | hsm library mode <name> dev | Переключение компонента на локальные исходники. |
| Валидация | hsm check | Проверка целостности стека (dry-run). |
| Синхронизация | hsm sync | Атомарное обновление конфигов uv и docker. |
5. Почему это удобно?
- Транзакционность: Если
uv syncне прошел, ваш проект не "развалится" — HSM откатит изменения вpyproject.toml. - Чистота: Все временные пути разработки (
/home/user/...) живут только в генерируемых файлах и не попадают в Git. - Скорость: HSM берет на себя всю рутину по связыванию компонентов, позволяя вам фокусироваться на логике.