89 lines
3.1 KiB
Bash
Executable File
89 lines
3.1 KiB
Bash
Executable File
#!/bin/bash
|
|
|
|
echo "🔧 Setting up email configuration for User Auth Service"
|
|
echo "======================================================"
|
|
|
|
# Check if .env file exists
|
|
if [ -f ".env" ]; then
|
|
echo "✅ .env file already exists"
|
|
echo "📧 Current email configuration:"
|
|
grep -E "^(SMTP_|GMAIL_|EMAIL_)" .env 2>/dev/null || echo " No email configuration found"
|
|
else
|
|
echo "📝 Creating .env file from template..."
|
|
cp env.example .env
|
|
echo "✅ .env file created from env.example"
|
|
fi
|
|
|
|
echo ""
|
|
echo "📧 Email Configuration Options:"
|
|
echo "1. Gmail (Recommended for development)"
|
|
echo "2. Custom SMTP Server"
|
|
echo "3. Skip email setup (use mock emails)"
|
|
|
|
read -p "Choose an option (1-3): " choice
|
|
|
|
case $choice in
|
|
1)
|
|
echo ""
|
|
echo "📧 Gmail Configuration"
|
|
echo "====================="
|
|
echo "You'll need to create an App Password for your Gmail account:"
|
|
echo "1. Go to https://myaccount.google.com/security"
|
|
echo "2. Enable 2-Step Verification if not already enabled"
|
|
echo "3. Go to 'App passwords' and generate a new app password"
|
|
echo "4. Use that password below (not your regular Gmail password)"
|
|
echo ""
|
|
|
|
read -p "Enter your Gmail address: " gmail_user
|
|
read -s -p "Enter your Gmail App Password: " gmail_pass
|
|
echo ""
|
|
|
|
# Update .env file
|
|
sed -i.bak "s/GMAIL_USER=.*/GMAIL_USER=$gmail_user/" .env
|
|
sed -i.bak "s/GMAIL_APP_PASSWORD=.*/GMAIL_APP_PASSWORD=$gmail_pass/" .env
|
|
sed -i.bak "s/SMTP_FROM=.*/SMTP_FROM=$gmail_user/" .env
|
|
|
|
echo "✅ Gmail configuration updated in .env file"
|
|
;;
|
|
2)
|
|
echo ""
|
|
echo "📧 Custom SMTP Configuration"
|
|
echo "============================"
|
|
|
|
read -p "Enter SMTP host (e.g., smtp.gmail.com): " smtp_host
|
|
read -p "Enter SMTP port (e.g., 587): " smtp_port
|
|
read -p "Enter SMTP username/email: " smtp_user
|
|
read -s -p "Enter SMTP password: " smtp_pass
|
|
echo ""
|
|
read -p "Enter from email address: " smtp_from
|
|
|
|
# Update .env file
|
|
sed -i.bak "s/SMTP_HOST=.*/SMTP_HOST=$smtp_host/" .env
|
|
sed -i.bak "s/SMTP_PORT=.*/SMTP_PORT=$smtp_port/" .env
|
|
sed -i.bak "s/SMTP_USER=.*/SMTP_USER=$smtp_user/" .env
|
|
sed -i.bak "s/SMTP_PASS=.*/SMTP_PASS=$smtp_pass/" .env
|
|
sed -i.bak "s/SMTP_FROM=.*/SMTP_FROM=$smtp_from/" .env
|
|
|
|
echo "✅ SMTP configuration updated in .env file"
|
|
;;
|
|
3)
|
|
echo ""
|
|
echo "⚠️ Email setup skipped. Mock emails will be used in development."
|
|
echo " Users will still be able to register and login, but verification emails won't be sent."
|
|
;;
|
|
*)
|
|
echo "❌ Invalid option. Email setup skipped."
|
|
;;
|
|
esac
|
|
|
|
echo ""
|
|
echo "🔧 Next steps:"
|
|
echo "1. Review and edit .env file if needed"
|
|
echo "2. Restart the user-auth service: docker-compose restart user-auth"
|
|
echo "3. Check logs for email configuration status"
|
|
echo ""
|
|
echo "📧 To test email configuration:"
|
|
echo " docker-compose logs user-auth | grep -E '(Email|SMTP|Gmail)'"
|
|
echo ""
|
|
echo "✅ Email setup complete!"
|