Laravel 13 в laravel-app/, Breeze (Blade) для сессионного логина + Sanctum для API-токенов (задел под Vue/Flutter на этапе 3). Схема Postgres перенесена из сырого SQL в Laravel-миграции (владелец схемы теперь Laravel, Go-сервисы как читали/писали эти таблицы, так и продолжают). Роли/категории/ операторы условий — закрытые PHP-enum'ы (UserRole, DeviceCategory, ConditionOperator); action_type правил намеренно остаётся строкой — открытый, управляемый данными список, а не код. Сидер device_types с growbox-типами как пример данных, не бизнес-логика. Docker: один контейнер (php-fpm + nginx через supervisord, multi-stage сборка vendor/assets). Образ пока не --no-dev — сидер использует fake() для демо-аккаунта. Проверено: миграции применяются на реальном Postgres (в докере и локально), дефолтные тесты Breeze проходят (25/25), Breeze-логин подтверждён вживую через браузер, Sanctum корректно отдаёт 401 на защищённый /api/user без токена.
25 lines
498 B
Plaintext
25 lines
498 B
Plaintext
# Go
|
|
services/**/bin/
|
|
services/**/*.exe
|
|
*.test
|
|
*.out
|
|
services/ingest-service/ingest-service
|
|
services/device-control-service/device-control-service
|
|
services/rule-engine-service/rule-engine-service
|
|
services/health-check-service/health-check-service
|
|
services/esp32-emulator/esp32-emulator
|
|
|
|
# Laravel: laravel-app/ has its own .gitignore (vendor, node_modules, .env, etc.)
|
|
|
|
# Env / secrets
|
|
.env
|
|
.env.local
|
|
|
|
# Docker volumes data (if bind-mounted locally)
|
|
volumes/
|
|
|
|
# IDE / OS
|
|
.idea/
|
|
.vscode/
|
|
.DS_Store
|