.PHONY: up down logs migrate backup-db restore-db dev clean

# Production
up:
	docker compose up -d
	@echo "✓ AgentWatch is running at http://localhost"

down:
	docker compose down

logs:
	docker compose logs -f

migrate:
	docker compose exec agentwatch-api alembic upgrade head

# Development
dev:
	docker compose -f docker-compose.yml up -d postgres redis
	@echo "✓ PostgreSQL and Redis running. Start API with: cd api && uvicorn agentwatch_api.main:app --reload"

# Database management
backup-db:
	@mkdir -p backups
	docker compose exec postgres pg_dump -U agentwatch agentwatch | gzip > backups/agentwatch_$(shell date +%Y%m%d_%H%M%S).sql.gz
	@echo "✓ Backup saved to backups/"

restore-db:
	@test -n "$(FILE)" || (echo "Usage: make restore-db FILE=backups/agentwatch_xxx.sql.gz" && exit 1)
	gunzip -c $(FILE) | docker compose exec -T postgres psql -U agentwatch agentwatch
	@echo "✓ Database restored from $(FILE)"

clean:
	docker compose down -v
	@echo "✓ All containers and volumes removed"
