docs: план интеграции загрузки функций из архивов в UI (2026-04-30)
This commit is contained in:
@@ -0,0 +1,36 @@
|
|||||||
|
# План интеграции загрузки функций из архивов в UI Fission Console
|
||||||
|
|
||||||
|
## Цель
|
||||||
|
Добавить в web-интерфейс Fission Console возможность загружать функцию в виде архива (zip/tar), аналогично `fission function create --deploy ...`.
|
||||||
|
|
||||||
|
## Основные шаги
|
||||||
|
1. UI: добавить компонент для выбора и загрузки архива (drag&drop или file input).
|
||||||
|
2. Backend: реализовать обработку архива, валидацию структуры, запуск линтеров и (опционально) AI-проверку.
|
||||||
|
3. Интеграция с Fission API: отправка архива через REST (multipart/form-data) для создания/обновления функции.
|
||||||
|
4. UI: отображение статуса загрузки, ошибок, логов билда.
|
||||||
|
|
||||||
|
## Валидация архива
|
||||||
|
- Проверка наличия entrypoint-файла (main.py/handler.js и т.д.)
|
||||||
|
- Проверка структуры (отсутствие мусора, секретов)
|
||||||
|
- Линтеры (flake8/pylint/go vet и т.д.)
|
||||||
|
- (Опционально) AI-проверка через облачный LLM
|
||||||
|
|
||||||
|
## Безопасность
|
||||||
|
- Ограничить размер архива
|
||||||
|
- Фильтрация запрещённых файлов
|
||||||
|
- Логирование действий
|
||||||
|
|
||||||
|
## Синхронизация с Terraform/CLI
|
||||||
|
- Архивы, деплоенные через UI, CLI, Terraform — одинакового формата
|
||||||
|
- UI всегда отображает актуальный список функций из Fission API
|
||||||
|
|
||||||
|
## Возможные сложности
|
||||||
|
- Ошибки структуры архива (нет entrypoint)
|
||||||
|
- Долгая сборка/деплой больших архивов
|
||||||
|
- Drift при одновременном управлении через Terraform и UI
|
||||||
|
|
||||||
|
## Следующие шаги
|
||||||
|
- Реализовать UI-компонент для загрузки архива
|
||||||
|
- Прототип backend-валидации
|
||||||
|
- Интеграция с Fission API
|
||||||
|
- Документировать пайплайн и типовые ошибки
|
||||||
Reference in New Issue
Block a user