This commit introduces several new analysis documents, including Auto-Match Load Performance Analysis, Folder Picker Analysis, Monorepo Migration Summary, and various performance analysis documents. Additionally, the installation scripts are updated to reflect changes in backend service paths, ensuring proper integration with the new backend structure. These enhancements provide better documentation and streamline the setup process for users.
70 lines
1.9 KiB
Bash
Executable File
70 lines
1.9 KiB
Bash
Executable File
#!/bin/bash
|
|
# Setup script for PostgreSQL database for PunimTag
|
|
|
|
set -e
|
|
|
|
echo "🔧 Setting up PostgreSQL for PunimTag..."
|
|
|
|
# Check if PostgreSQL is installed
|
|
if ! command -v psql &> /dev/null; then
|
|
echo "📦 Installing PostgreSQL..."
|
|
sudo apt update
|
|
sudo apt install -y postgresql postgresql-contrib
|
|
echo "✅ PostgreSQL installed"
|
|
else
|
|
echo "✅ PostgreSQL is already installed"
|
|
fi
|
|
|
|
# Start PostgreSQL service
|
|
echo "🚀 Starting PostgreSQL service..."
|
|
sudo systemctl start postgresql
|
|
sudo systemctl enable postgresql
|
|
|
|
# Create database and user
|
|
echo "📝 Creating database and user..."
|
|
sudo -u postgres psql << EOF
|
|
-- Create user if it doesn't exist
|
|
DO \$\$
|
|
BEGIN
|
|
IF NOT EXISTS (SELECT FROM pg_user WHERE usename = 'punimtag') THEN
|
|
CREATE USER punimtag WITH PASSWORD 'punimtag_password';
|
|
END IF;
|
|
END
|
|
\$\$;
|
|
|
|
-- Create main database if it doesn't exist
|
|
SELECT 'CREATE DATABASE punimtag OWNER punimtag'
|
|
WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'punimtag')\gexec
|
|
|
|
-- Create auth database if it doesn't exist
|
|
SELECT 'CREATE DATABASE punimtag_auth OWNER punimtag'
|
|
WHERE NOT EXISTS (SELECT FROM pg_database WHERE datname = 'punimtag_auth')\gexec
|
|
|
|
-- Grant privileges
|
|
GRANT ALL PRIVILEGES ON DATABASE punimtag TO punimtag;
|
|
GRANT ALL PRIVILEGES ON DATABASE punimtag_auth TO punimtag;
|
|
\q
|
|
EOF
|
|
|
|
echo "✅ Database and user created"
|
|
echo ""
|
|
echo "📋 Database connection details:"
|
|
echo " Host: localhost"
|
|
echo " Port: 5432"
|
|
echo " Main Database: punimtag"
|
|
echo " Auth Database: punimtag_auth"
|
|
echo " User: punimtag"
|
|
echo " Password: punimtag_password"
|
|
echo ""
|
|
echo "✅ PostgreSQL setup complete!"
|
|
echo ""
|
|
echo "Next steps:"
|
|
echo "1. Install python-dotenv: pip install python-dotenv"
|
|
echo "2. The .env file is already configured with the connection string"
|
|
echo "3. Run your application - it will connect to PostgreSQL automatically"
|
|
|
|
|
|
|
|
|
|
|