# Configuration des tenants en production
#
# En production, les tenants peuvent être configurés de deux façons :
# 1. Via la variable d'environnement TENANT_CONFIGS (JSON)
# 2. Via une implémentation DatabaseTenantRegistry (à implémenter)
#
# Pour l'instant, on utilise InMemoryTenantRegistry avec configuration env.
# Si aucun tenant n'est configuré, toutes les requêtes retourneront 404.

parameters:
    # Format JSON attendu: [{"tenantId":"uuid","subdomain":"ecole","databaseUrl":"postgres://..."}]
    tenant.prod_configs_json: '%env(default::TENANT_CONFIGS)%'

services:
    App\Shared\Infrastructure\Tenant\TenantRegistry:
        class: App\Shared\Infrastructure\Tenant\InMemoryTenantRegistry
        factory: ['@App\Shared\Infrastructure\Tenant\TenantRegistryFactory', 'createFromEnv']
        arguments:
            $configsJson: '%tenant.prod_configs_json%'
