Files
spotlightcam/backend/docker-entrypoint.sh

34 lines
952 B
Bash
Raw Normal View History

#!/bin/sh
set -e
echo "🔧 Checking dependencies..."
# Install dependencies if node_modules doesn't exist or package.json changed
if [ ! -d "node_modules" ] || [ "package.json" -nt "node_modules" ]; then
echo "📦 Installing npm dependencies..."
npm install
else
echo "✅ Dependencies already installed"
fi
# Generate Prisma Client if not exists or schema changed
if [ ! -d "node_modules/.prisma/client" ] || [ "prisma/schema.prisma" -nt "node_modules/.prisma/client" ]; then
echo "🔨 Generating Prisma Client..."
npx prisma generate
else
echo "✅ Prisma Client already generated"
fi
# Run pending database migrations
echo "🔄 Applying database migrations..."
npx prisma migrate deploy
# Regenerate Prisma Client after migrations to ensure sync
echo "🔨 Regenerating Prisma Client after migrations..."
npx prisma generate
echo "✅ Ready to start!"
# Execute the main command (passed as arguments to this script)
exec "$@"