NeahStable/scripts/update-database-url.sh
2026-01-16 21:11:50 +01:00

41 lines
1.4 KiB
Bash

#!/bin/bash
# Script to update DATABASE_URL with connection pool parameters
ENV_FILE=".env"
if [ ! -f "$ENV_FILE" ]; then
echo "❌ Error: .env file not found"
exit 1
fi
# Check if DATABASE_URL already has connection_limit
if grep -q "connection_limit" "$ENV_FILE"; then
echo "⚠️ DATABASE_URL already contains connection_limit parameter"
echo "Current DATABASE_URL:"
grep "DATABASE_URL" "$ENV_FILE"
exit 0
fi
# Backup the file
cp "$ENV_FILE" "$ENV_FILE.bak"
echo "✅ Created backup: $ENV_FILE.bak"
# Update DATABASE_URL
# This will add connection_limit=10&pool_timeout=20&connect_timeout=10 to the URL
if [[ "$OSTYPE" == "darwin"* ]]; then
# macOS
sed -i '' 's|DATABASE_URL="\(.*\)"|DATABASE_URL="\1\&connection_limit=10\&pool_timeout=20\&connect_timeout=10"|' "$ENV_FILE"
sed -i '' 's|DATABASE_URL="\(.*\)?\(.*\)"|DATABASE_URL="\1?\2\&connection_limit=10\&pool_timeout=20\&connect_timeout=10"|' "$ENV_FILE"
else
# Linux
sed -i 's|DATABASE_URL="\(.*\)"|DATABASE_URL="\1\&connection_limit=10\&pool_timeout=20\&connect_timeout=10"|' "$ENV_FILE"
sed -i 's|DATABASE_URL="\(.*\)?\(.*\)"|DATABASE_URL="\1?\2\&connection_limit=10\&pool_timeout=20\&connect_timeout=10"|' "$ENV_FILE"
fi
echo "✅ Updated DATABASE_URL with connection pool parameters"
echo ""
echo "New DATABASE_URL:"
grep "DATABASE_URL" "$ENV_FILE"
echo ""
echo "⚠️ Please review the changes and test the connection"