#!/bin/bash # Quick SES Bounce Test - One-liner to test bounce handling echo "🚀 Testing SES Bounce Handling" echo "================================" echo "" # Check if API and Postfix are running if ! sudo docker compose ps | grep -q "maillist-api.*Up"; then echo "❌ API container not running. Start with: sudo docker compose up -d" exit 1 fi if ! sudo docker compose ps | grep -q "maillist-postfix.*Up"; then echo "❌ Postfix container not running. Start with: sudo docker compose up -d" exit 1 fi echo "✅ Containers are running" echo "" # Start watching logs in background echo "📋 Opening log viewer (press Ctrl+C to stop)..." echo "" sleep 2 # Show the command they can run echo "Run this command to send a test bounce:" echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━" echo "echo 'Test bounce' | sudo docker compose exec -T postfix mail -s 'Bounce Test' bounce@simulator.amazonses.com" echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━" echo "" echo "Then wait 30-60 seconds and check:" echo "" echo "1. API logs (in this window)" echo "2. Database: sudo docker compose exec mysql mysql -u maillist -pmaillist maillist -e 'SELECT * FROM bounce_logs ORDER BY created_at DESC LIMIT 5;'" echo "3. Web UI: http://localhost:3000 → Members tab" echo "" echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━" echo "Watching API logs now..." echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━" echo "" # Follow logs sudo docker compose logs api -f --tail 20