#!/bin/bash
# Deploy a single project to LocalStack

set -e

if [ -z "$1" ]; then
    echo "Usage: $0 <project-name>"
    echo ""
    echo "Available projects:"
    ls -1 terraform/ | grep -v "^_" | sed 's/^/  - /'
    exit 1
fi

PROJECT=$1
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
ROOT_DIR="$(dirname "$SCRIPT_DIR")"

cd "$ROOT_DIR"

# Check if project exists
if [ ! -d "terraform/$PROJECT" ]; then
    echo "Error: Project '$PROJECT' not found"
    echo ""
    echo "Available projects:"
    ls -1 terraform/ | grep -v "^_" | sed 's/^/  - /'
    exit 1
fi

echo "================================"
echo "Deploying: $PROJECT"
echo "================================"
echo ""

# Check if LocalStack is running
if ! aws --endpoint-url=http://localhost:4566 s3 ls >/dev/null 2>&1; then
    echo "LocalStack is not running. Starting..."
    make start
    echo ""
fi

make tf-init tf-apply PROJECT="$PROJECT"

echo ""
echo "Deployment complete for $PROJECT"
