- Introduced new interaction and community features, including comments and private messaging. - Added technical diagrams for critical workflows: authentication, content publication, and messaging. - Enhanced data model documentation with support for comments and messaging tables. - Updated API references with endpoints for comments, messaging, and user search. - Integrated post-quantum cryptography for improved data protection.
76 lines
1.8 KiB
Plaintext
76 lines
1.8 KiB
Plaintext
---
|
|
title: Déploiement & Tests
|
|
description: Procédures de déploiement et stratégie de tests
|
|
---
|
|
|
|
## 🚀 Déploiement
|
|
|
|
### Architecture de service
|
|
|
|
Un conteneur **Caddy** est utilisé en tant que reverse proxy pour fournir le TLS et la gestion du FQDN.
|
|
|
|
### Pré-requis Système
|
|
|
|
<Cards>
|
|
<Card title="Environnement" description="Node.js >= 22 (recommandé pour NestJS 11), pnpm >= 10." />
|
|
<Card title="Base de données" description="PostgreSQL >= 16 + pgcrypto et Redis 7+." />
|
|
<Card title="Stockage" description="MinIO ou S3 Compatible." />
|
|
<Card title="Services" description="ClamAV (clamd), FFmpeg 6+ et Serveur SMTP." />
|
|
</Cards>
|
|
|
|
### Procédure de Déploiement
|
|
|
|
<Steps>
|
|
<Step>
|
|
### Configuration de l'environnement
|
|
Copiez le fichier `.env.example` vers `.env` et configurez les variables essentielles (clés PGP, secrets JWT, accès S3).
|
|
</Step>
|
|
|
|
<Step>
|
|
### Installation des dépendances
|
|
Utilisez pnpm pour installer les packages dans le monorepo :
|
|
```bash
|
|
pnpm install
|
|
```
|
|
</Step>
|
|
|
|
<Step>
|
|
### Initialisation de la base de données
|
|
Exécutez les migrations Drizzle pour créer les tables et les types nécessaires.
|
|
```bash
|
|
pnpm --filter backend db:migrate
|
|
```
|
|
</Step>
|
|
|
|
<Step>
|
|
### Lancement des services
|
|
Utilisez Docker Compose pour lancer l'infrastructure complète ou démarrez les services individuellement.
|
|
```bash
|
|
docker-compose up -d
|
|
```
|
|
</Step>
|
|
</Steps>
|
|
|
|
## 🧪 Tests & Qualité
|
|
|
|
<Tabs items={['Tests', 'Linting', 'Build']}>
|
|
<Tab value="Tests">
|
|
Exécutez la suite de tests unitaires avec Jest :
|
|
```bash
|
|
pnpm test
|
|
```
|
|
</Tab>
|
|
<Tab value="Linting">
|
|
Vérifiez la conformité du code avec Biome :
|
|
```bash
|
|
pnpm lint
|
|
```
|
|
</Tab>
|
|
<Tab value="Build">
|
|
Validez la compilation de tous les modules :
|
|
```bash
|
|
pnpm build
|
|
```
|
|
</Tab>
|
|
</Tabs>
|