.PHONY: help up down restart rebuild logs ps test lint phpstan arch cs-fix warmup frontend-lint frontend-test e2e clean shell bash console # Default target help: @echo "Classeo - Commandes disponibles" @echo "" @echo "Docker:" @echo " make up - Lancer tous les services" @echo " make down - Arreter tous les services" @echo " make restart - Redemarrer tous les services" @echo " make rebuild - Reconstruire et relancer les services" @echo " make build - Reconstruire les images" @echo " make logs - Voir les logs (Ctrl+C pour quitter)" @echo " make ps - Statut des services" @echo " make clean - Supprimer volumes et images" @echo "" @echo "Shell:" @echo " make shell - Shell bash dans le container PHP" @echo " make bash - Alias pour make shell" @echo " make console - Console Symfony (ex: make console c='debug:router')" @echo " make shell-frontend - Shell dans le container frontend" @echo "" @echo "Backend:" @echo " make phpstan - Analyse statique PHPStan" @echo " make arch - Tests d'architecture (PHPat)" @echo " make cs-fix - Correction code style PHP" @echo " make test-php - Tests PHPUnit" @echo " make warmup - Warmup du cache Symfony" @echo "" @echo "Frontend:" @echo " make lint - ESLint frontend" @echo " make test-js - Tests Vitest" @echo " make e2e - Tests Playwright" @echo "" @echo "All:" @echo " make test - Tous les tests" @echo " make check - Tous les linters" # ============================================================================= # Docker # ============================================================================= up: docker compose up -d down: docker compose down restart: docker compose down docker compose up -d rebuild: docker compose down docker compose build --no-cache docker compose up -d build: docker compose build --no-cache logs: docker compose logs -f ps: docker compose ps clean: docker compose down -v --rmi local # ============================================================================= # Shell # ============================================================================= shell: docker compose exec php sh bash: shell console: docker compose exec php php bin/console $(c) shell-frontend: docker compose exec frontend sh # ============================================================================= # Backend # ============================================================================= phpstan: docker compose exec php composer phpstan arch: docker compose exec php composer arch cs-fix: docker compose exec php composer cs-fix cs-check: docker compose exec php composer cs-check test-php: docker compose exec php composer test warmup: docker compose exec php php bin/console cache:warmup # ============================================================================= # Frontend # ============================================================================= lint: docker compose exec frontend pnpm run lint check-types: docker compose exec frontend pnpm run check test-js: docker compose exec frontend pnpm run test e2e: docker compose exec frontend pnpm run test:e2e # ============================================================================= # All # ============================================================================= test: test-php test-js check: phpstan cs-check lint check-types # ============================================================================= # Scripts # ============================================================================= check-bc: ./scripts/check-bc-isolation.sh check-naming: ./scripts/check-naming.sh check-tenants: ./scripts/check-tenants.sh # ============================================================================= # Dev helpers # ============================================================================= # Creer un token d'activation de test # Usage: make token [email=user@test.com] [role=PARENT] [minor=1] token: docker compose exec php php bin/console app:dev:create-test-activation-token \ $(if $(email),--email=$(email),) \ $(if $(role),--role=$(role),) \ $(if $(minor),--minor,) \ --base-url=http://localhost:5174