Guide de Démarrage Rapide

Installation

# Cloner le projet
git clone <repo-url> updo_backend
cd updo_backend

# Créer l'environnement virtuel
python -m venv .venv
source .venv/bin/activate  # Linux/Mac
.venv\Scripts\activate     # Windows

# Installer les dépendances
pip install -r requirements.txt

# Avec les extras optionnels
pip install -e ".[celery,docs]"

Configuration minimale

Dans updo/settings.py, la configuration multi-tenant est définie via le dictionnaire MULTITENANT :

MULTITENANT = {
    'ISOLATION_BACKEND': 'shared_fk',  # 'schema', 'rls', ou 'shared_fk'
    'TENANT_HEADER': 'X-Tenant-ID',
    'ABAC_ENABLED': True,
    'ASYNC_BACKEND': 'auto',
}

Migration et démarrage

python manage.py migrate
python manage.py createsuperuser
python manage.py runserver

Créer un tenant

from src.module.tenant.models import Tenant

tenant = Tenant.objects.create(
    name="Acme Corp",
    slug="acme-corp",
)

Utiliser le contexte tenant

from src.share_kernel.infrastructure.context import tenant_context

with tenant_context(tenant):
    # Toutes les requêtes sont scopées au tenant
    orders = Order.objects.all()  # Filtrées automatiquement