Memegoat LogoMemegoat

Déploiement & Tests

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

Environnement

Node.js >= 20, pnpm >= 10.

Base de données

PostgreSQL >= 15 + pgcrypto et Redis.

Stockage

MinIO ou S3 Compatible.

Services

ClamAV (clamd) et FFmpeg.

Procédure de Déploiement

Configuration de l'environnement

Copiez le fichier .env.example vers .env et configurez les variables essentielles (clés PGP, secrets JWT, accès S3).

Installation des dépendances

Utilisez pnpm pour installer les packages dans le monorepo :

pnpm install

Initialisation de la base de données

Exécutez les migrations Drizzle pour créer les tables et les types nécessaires.

pnpm --filter backend db:migrate

Lancement des services

Utilisez Docker Compose pour lancer l'infrastructure complète ou démarrez les services individuellement.

docker-compose up -d

🧪 Tests & Qualité

Exécutez la suite de tests unitaires avec Jest :

pnpm test

Vérifiez la conformité du code avec Biome :

pnpm lint

Validez la compilation de tous les modules :

pnpm build