Files
TestingWebApp/flask_app/README.md
T

55 lines
3.0 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.
# Flask-контур тестирования (тот же стек, отдельный деплой)
Здесь — **новое** приложение на **Python / Flask** в духе `HR_TG_Bot/tgFlaskForm` (шаблоны + серверный рендер, без React). Старый стек (`backend/` + `frontend/`) пока не удаляется: оба контура могут существовать параллельно, пока не зафиксирована политика «один источник записи» и cutover.
## Запуск в Docker (рекомендуется)
Из **корня** репозитория TestingWebApp. Сервис **не** зависит от `testing-backend` и **не** требует внешней сети Postgres для старта (только внутренняя сеть compose).
```bash
docker compose -f docker-compose.dev.yml up -d --build testing-flask
```
Когда подключите БД из контейнера к `hr_postgres_dev` / `clinic_tests`, в `docker-compose.dev.yml` у сервиса `testing-flask` добавьте сеть `postgres` (как у `testing-backend`).
- **URL:** http://localhost:3108
- **Проверка:** http://localhost:3108/health
Вместе со старым UI и API:
```bash
docker compose -f docker-compose.dev.yml up -d --build
```
Тогда Node-интерфейс остаётся на **http://localhost:3107**, Flask — на **3108**.
## Запуск локально (без Docker)
```bash
cd flask_app
python3 -m venv .venv
source .venv/bin/activate # Windows: .venv\Scripts\activate
pip install -r requirements.txt
cp .env.example .env # при необходимости поправьте PORT
python run.py
```
По умолчанию: **http://127.0.0.1:3108** , проверка: **http://127.0.0.1:3108/health**
Для режима как в Docker (waitress): в `.env` задайте `WEB_USE_WAITRESS=1`.
## Зачем отдельная папка
- Один **стек** с кабинетом / мини-приложением — проще переносить экраны и запросы из `HR_TG_Bot/tgFlaskForm/webApp/interfaces/testing/`.
- **Отдельный** процесс и порт — без риска сломать текущий `docker-compose.dev.yml` с Node до готовности.
## Дальнейшие шаги (код)
1. Подключить БД (`clinic_tests` **или** `hr_bot_test` + `testing_*` — одно из двух, см. [docs/migration-to-tgflaskform.md](../docs/migration-to-tgflaskform.md) §0).
2. Переносить маршруты и шаблоны по образцу `tgFlaskForm` (blueprint `testing`, `db/queries/testing_queries.py`, шаблоны `cabinet/testing/`).
3. ETL при переходе на HR-БД: `HR_TG_Bot/tgFlaskForm/tools/migrate_clinic_tests_to_hr.py`.
## Связанные документы
- [docs/migration-to-tgflaskform.md](../docs/migration-to-tgflaskform.md)
- [README корня репозитория](../README.md)