Mise à jour de la configuration de la base de données pour utiliser PostgreSQL et ajout de Redis dans le fichier .env. Modifications du Dockerfile pour installer les dépendances nécessaires. Amélioration des services de stockage pour supporter les opérations asynchrones avec S3 et le stockage local. Refactorisation des pipelines d'images pour une meilleure gestion des tâches asynchrones. Ajout de la gestion des clés API dans l'authentification. Mise à jour de la documentation et des exemples d'utilisation.
This commit is contained in:
@@ -93,7 +93,7 @@ python worker.py # Worker ARQ (requiert Redis)
|
||||
### Avec Docker
|
||||
|
||||
```bash
|
||||
docker-compose up -d # API + Redis + Worker
|
||||
docker-compose up -d # API + Redis + Worker + PostgreSQL
|
||||
```
|
||||
|
||||
### Commandes utiles (Makefile)
|
||||
@@ -201,11 +201,11 @@ Chaque étape est **indépendante** : un échec partiel n'arrête pas le pipelin
|
||||
> Tous les appels (sauf `/health` et `/metrics`) nécessitent une clé API valide passée dans le header `X-API-Key`.
|
||||
|
||||
### Upload d'une image
|
||||
|
||||
### api_key=emH92l92LD4L7cLhl2imidMZANsIUb9x_AlGWiYpVSA client_id=925463e0-27a4-4993-aa3a-f1cb31c19d32 warning=Notez cette clé ! Elle ne sera plus affichée.
|
||||
```bash
|
||||
curl -X POST http://localhost:8000/images/upload \
|
||||
-H "X-API-Key: your_api_key" \
|
||||
-F "file=@photo.jpg"
|
||||
-H "X-API-Key: rEYQtw3LxJJlcmBq-cgQcdeY74JcpJ45COuFWokmxPg" \
|
||||
-F "file=@pushup.gif"
|
||||
```
|
||||
|
||||
Réponse :
|
||||
@@ -222,7 +222,7 @@ Réponse :
|
||||
### Polling du statut
|
||||
|
||||
```bash
|
||||
curl http://localhost:8000/images/1/status -H "X-API-Key: your_api_key"
|
||||
curl http://localhost:8000/images/1/status -H "X-API-Key: rEYQtw3LxJJlcmBq-cgQcdeY74JcpJ45COuFWokmxPg"
|
||||
```
|
||||
|
||||
```json
|
||||
@@ -237,7 +237,7 @@ curl http://localhost:8000/images/1/status -H "X-API-Key: your_api_key"
|
||||
### Détail complet
|
||||
|
||||
```bash
|
||||
curl http://localhost:8000/images/1 -H "X-API-Key: your_api_key"
|
||||
curl http://localhost:8000/images/1 -H "X-API-Key: rEYQtw3LxJJlcmBq-cgQcdeY74JcpJ45COuFWokmxPg"
|
||||
```
|
||||
|
||||
```json
|
||||
@@ -308,7 +308,7 @@ curl -X POST http://localhost:8000/ai/draft-task \
|
||||
| `JWT_SECRET_KEY` | — | Secret pour la signature des tokens |
|
||||
| `AI_PROVIDER` | `gemini` | `gemini` ou `openrouter` |
|
||||
| `GEMINI_API_KEY` | — | Clé API Gemini |
|
||||
| `DATABASE_URL` | SQLite local | URL de connexion (SQLite ou Postgres) |
|
||||
| `DATABASE_URL` | PostgreSQL (Docker) / SQLite (Local) | URL de connexion (Postgres recommandé) |
|
||||
| `REDIS_URL` | `redis://localhost:6379/0` | URL Redis pour ARQ |
|
||||
| `STORAGE_BACKEND` | `local` | `local` ou `s3` |
|
||||
| `S3_BUCKET` | — | Bucket S3/MinIO |
|
||||
@@ -393,7 +393,7 @@ imago/
|
||||
├── .github/workflows/ci.yml # CI/CD pipeline
|
||||
├── pyproject.toml # ruff, mypy, coverage config
|
||||
├── Makefile # Commandes utiles
|
||||
├── docker-compose.yml # API + Redis + Worker
|
||||
├── docker-compose.yml # API + Redis + Worker + PostgreSQL
|
||||
├── Dockerfile
|
||||
├── requirements.txt # Production deps
|
||||
├── requirements-dev.txt # Dev deps (lint, test)
|
||||
|
||||
Reference in New Issue
Block a user