feat: Tests et scripts utilitaires - Ajout des tests e2e, scripts de configuration de base de données et scripts de test API
This commit is contained in:
61
setup-database.sh
Normal file
61
setup-database.sh
Normal file
@@ -0,0 +1,61 @@
|
||||
#!/bin/bash
|
||||
|
||||
echo "🚀 Configuration de la base de données PostgreSQL pour l'inventaire industriel"
|
||||
|
||||
# Vérifier si PostgreSQL est installé
|
||||
if ! command -v psql &> /dev/null; then
|
||||
echo "📦 Installation de PostgreSQL..."
|
||||
sudo dnf install -y postgresql postgresql-server postgresql-contrib
|
||||
|
||||
# Initialiser la base de données PostgreSQL
|
||||
sudo postgresql-setup --initdb
|
||||
|
||||
# Démarrer et activer PostgreSQL
|
||||
sudo systemctl start postgresql
|
||||
sudo systemctl enable postgresql
|
||||
|
||||
echo "✅ PostgreSQL installé et démarré"
|
||||
else
|
||||
echo "✅ PostgreSQL déjà installé"
|
||||
fi
|
||||
|
||||
# Créer l'utilisateur et la base de données
|
||||
echo "🔧 Configuration de la base de données..."
|
||||
|
||||
# Se connecter en tant qu'utilisateur postgres
|
||||
sudo -u postgres psql << EOF
|
||||
-- Créer l'utilisateur postgres avec mot de passe
|
||||
ALTER USER postgres PASSWORD 'password';
|
||||
|
||||
-- Créer la base de données
|
||||
CREATE DATABASE inventory_db;
|
||||
|
||||
-- Donner les privilèges
|
||||
GRANT ALL PRIVILEGES ON DATABASE inventory_db TO postgres;
|
||||
|
||||
-- Se connecter à la base de données
|
||||
\c inventory_db;
|
||||
|
||||
-- Créer le schéma public si nécessaire
|
||||
CREATE SCHEMA IF NOT EXISTS public;
|
||||
|
||||
-- Donner les privilèges sur le schéma
|
||||
GRANT ALL ON SCHEMA public TO postgres;
|
||||
|
||||
\q
|
||||
EOF
|
||||
|
||||
echo "✅ Base de données configurée"
|
||||
|
||||
# Générer le client Prisma
|
||||
echo "🔧 Génération du client Prisma..."
|
||||
npx prisma generate
|
||||
|
||||
# Créer et appliquer les migrations
|
||||
echo "🔧 Création des migrations..."
|
||||
npx prisma migrate dev --name init
|
||||
|
||||
echo "🎉 Configuration terminée !"
|
||||
echo "📊 Base de données: inventory_db"
|
||||
echo "🔗 URL: postgresql://postgres:password@localhost:5432/inventory_db"
|
||||
echo "🚀 Pour démarrer l'API: npm run start:dev"
|
||||
Reference in New Issue
Block a user