# DrHider Obfuscator Чистая deploy-копия Flask-приложения DrHider без документации, истории, тестов и временных файлов. ## Репозиторий и деплой - репозиторий: `https://gitea.services.ngcloud.ru/forcloud/obfuscator.git` - entrypoint: `site/app.py`, глобальный Flask `app` - зависимости: `requirements.txt` - публичное приложение: `https://drhider.pythonk8s.dev.nubes.ru/` - платформа: Managed Flask / Штурвал Порядок публикации: 1. Push в `master`. 2. В Штурвале выбрать приложение DrHider, подключённое к этой репе. 3. Нажать **Redeploy**. 4. Проверить `GET /health` и поле `version`. ## Структура - `site/` — Flask-приложение, маршруты, шаблоны и статика. - `drhider/` — ядро извлечения, сканирования, замены и сборки ZIP. - `upload/` — runtime-часть загрузки файлов и WebDAV-транзита. ## Внешний upload-буфер DrHider использует WebDAV-буфер на VM213 `5.172.178.213`: ```text https://upload.sinefo.ru/drhider-upload/ ``` Поток: браузер делает `PUT`, Flask получает ссылки через `/api/upload_refs`, забирает файлы с VM213 и удаляет их после обработки. Nginx, DNS и TLS буфера находятся на VM213 и не управляются этим Git-репозиторием. Старый `contracts.kube5s.ru` не использовать. ## Отдельный upload-platform `forcloud/upload-platform` — отдельная репа и отдельный сервис `vmfiles.service` на VM213. Push в этот репозиторий не обновляет данный Flask-деплой, и наоборот.