| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- .PHONY: dev prod deploy logs stop clean restart ps help test test-backend test-frontend migrate migrate-down
- dev: ## Запустить локальную разработку
- docker compose up -d
- cd backend && go run ./cmd/api &
- cd frontend && npm run dev
- prod: ## Запустить продакшен (сборка + деплой)
- bash deploy/deploy.sh
- deploy: prod ## Алиас для prod
- logs: ## Логи продакшена
- docker compose -f deploy/docker-compose.prod.yml logs -f
- stop: ## Остановить всё
- docker compose down
- docker compose -f deploy/docker-compose.prod.yml down
- clean: ## Остановить + удалить volume
- docker compose down -v
- docker compose -f deploy/docker-compose.prod.yml down -v
- restart: ## Перезапустить продакшен
- docker compose -f deploy/docker-compose.prod.yml restart
- ps: ## Статус контейнеров
- docker compose -f deploy/docker-compose.prod.yml ps
- test: ## Запустить все тесты
- $(MAKE) test-backend
- $(MAKE) test-frontend
- test-backend: ## Запустить тесты бэкенда
- cd backend && go test ./... -v -race
- test-frontend: ## Запустить тесты фронтенда
- cd frontend && npm run test 2>/dev/null || echo "No test script configured yet"
- migrate: ## Накатить миграции (локально)
- docker compose run --rm migrate
- migrate-down: ## Откатить последнюю миграцию (локально)
- docker compose run --rm migrate migrate -path=/migrations -database "postgres://photoplaces:photoplaces_dev@postgres:5432/photoplaces?sslmode=disable" down 1
- help: ## Показать помощь
- @grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-15s\033[0m %s\n", $$1, $$2}'
|