.PHONY: up down logs test audit reset migrate revision prod cpanel backup restore

up:            ## Démarrer la pile (build inclus)
	docker compose up --build -d

down:
	docker compose down

logs:
	docker compose logs -f api web

test:
	docker compose exec api python -m pytest -q

audit:
	docker compose exec api sh -c "pip install -q bandit pip-audit && bandit -r app -ll && pip-audit -r requirements.txt"

reset:         ## Efface la base (données de test uniquement)
	docker compose down -v

migrate:       ## Appliquer les migrations
	docker compose exec api alembic upgrade head

revision:      ## Générer une migration (make revision m="ajout table x")
	docker compose exec api alembic revision --autogenerate -m "$(m)"

prod:          ## Démarrer avec TLS (domaine + Stripe requis dans .env)
	docker compose -f docker-compose.yml -f docker-compose.prod.yml up --build -d

backup:        ## Sauvegarde chiffrée (BACKUP_AGE_RECIPIENT recommandé)
	./scripts/backup.sh ./backups

restore:       ## Restauration (make restore f=backups/ama-....sql.age)
	./scripts/restore.sh "$(f)"

cpanel:        ## Démarrer derrière Apache/cPanel (voir deploy/DEPLOIEMENT-CPANEL.md)
	docker compose -f docker-compose.yml -f docker-compose.cpanel.yml up --build -d
