Files
fission-console/doc/progress-2026-04-30-archive-upload.md
T

37 lines
2.2 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# План интеграции загрузки функций из архивов в 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
- Документировать пайплайн и типовые ошибки