SHELL := /bin/bash
PY ?= .venv/bin/python
SLUG := video-ia-veo-ugc
-include .env
export

.DEFAULT_GOAL := help
help: ## Liste les commandes
	@grep -E '^[a-z0-9-]+:.*## ' $(MAKEFILE_LIST) | awk -F':.*## ' '{printf "  make %-13s %s\n", $$1, $$2}'

setup: ## Crée .venv et installe les dépendances (ffmpeg doit être installé)
	@command -v ffmpeg >/dev/null || { echo "ffmpeg introuvable : sudo apt install ffmpeg / brew install ffmpeg"; exit 1; }
	@test -d .venv || python3 -m venv .venv
	@.venv/bin/pip install -q -r requirements.txt
	@test -f .env || cp .env.example .env
	@echo "Prêt. Renseignez .env puis : make test"

test: ## Tests sans clé ni réseau (ffmpeg requis)
	@$(PY) -m pytest -q

run: ## Démo hors ligne : devis + montage complet sur médias synthétiques (0 $)
	@$(PY) run.py

e2e: ## Génération réelle : 2 clips Veo Lite 4 s + image + voix + Lyria (~0,60 $)
	@$(PY) run.py --e2e

clean: ## Supprime les artefacts locaux (sorties, cache des médias générés, caches Python)
	@rm -rf sorties/ .pytest_cache __pycache__ pubcourte/__pycache__ tests/__pycache__
	@echo "Artefacts supprimés."

reset: clean ## clean + suppression de .venv (.env conservé)
	@rm -rf .venv
	@echo "Environnement supprimé (.env conservé)."

cloud-up: ## Sans objet : aucune ressource Google Cloud n'est créée
	@echo "Ce projet ne crée aucune ressource Google Cloud (appels d'API uniquement)."

cloud-down: ## Sans objet : vérifie qu'il n'y a rien à supprimer
	@echo "Aucune ressource Google Cloud créée par ce projet. Les vidéos Veo sont effacées côté serveur après 2 jours."

cloud-status: ## Sans objet
	@echo "Aucune ressource Google Cloud à lister pour $(SLUG)."
