2025-04-24 10:19:08 +08:00
|
|
|
#!/bin/bash
|
|
|
|
|
2025-04-25 03:28:24 +08:00
|
|
|
# Determine the script and project directories
|
|
|
|
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|
|
|
PROJECT_ROOT="$SCRIPT_DIR"
|
|
|
|
if [[ "$SCRIPT_DIR" == */scripts ]]; then
|
|
|
|
PROJECT_ROOT="$(dirname "$SCRIPT_DIR")"
|
|
|
|
fi
|
|
|
|
|
2025-04-24 10:19:08 +08:00
|
|
|
# Create necessary directories
|
2025-04-25 03:28:24 +08:00
|
|
|
mkdir -p "$PROJECT_ROOT/docker"
|
2025-04-24 10:19:08 +08:00
|
|
|
|
|
|
|
# Fix any spacing issues in the JWT tokens using macOS compatible sed
|
2025-04-25 03:28:24 +08:00
|
|
|
if [ -f "$PROJECT_ROOT/.env" ]; then
|
|
|
|
sed -i '' 's/ey AgC/eyAgC/g' "$PROJECT_ROOT/.env"
|
2025-04-24 10:19:08 +08:00
|
|
|
fi
|
|
|
|
|
2025-04-25 03:28:24 +08:00
|
|
|
if [ -f "$PROJECT_ROOT/docker-compose.yml" ]; then
|
|
|
|
sed -i '' 's/ey AgC/eyAgC/g' "$PROJECT_ROOT/docker-compose.yml"
|
2025-04-24 10:19:08 +08:00
|
|
|
fi
|
|
|
|
|
|
|
|
# Create a symbolic link for .env.local in frontend
|
2025-04-25 03:28:24 +08:00
|
|
|
if [ -f "$PROJECT_ROOT/.env" ]; then
|
|
|
|
cp "$PROJECT_ROOT/.env" "$PROJECT_ROOT/frontend/.env.local"
|
2025-04-24 10:19:08 +08:00
|
|
|
fi
|
|
|
|
|
|
|
|
# Create a symbolic link for Kong configuration if it doesn't exist
|
2025-04-25 03:28:24 +08:00
|
|
|
if [ ! -f "$PROJECT_ROOT/backend/supabase/kong.yml" ]; then
|
2025-04-24 10:19:08 +08:00
|
|
|
echo "Creating Kong configuration file"
|
2025-04-25 03:28:24 +08:00
|
|
|
mkdir -p "$PROJECT_ROOT/backend/supabase"
|
|
|
|
cat > "$PROJECT_ROOT/backend/supabase/kong.yml" << EOL
|
2025-04-24 10:19:08 +08:00
|
|
|
_format_version: "2.1"
|
|
|
|
|
|
|
|
_transform: true
|
|
|
|
|
|
|
|
services:
|
|
|
|
- name: postgrest
|
|
|
|
url: http://supabase-db:5432
|
|
|
|
routes:
|
|
|
|
- name: postgrest-route
|
|
|
|
paths:
|
|
|
|
- /rest/v1
|
|
|
|
plugins:
|
|
|
|
- name: cors
|
|
|
|
- name: key-auth
|
|
|
|
config:
|
|
|
|
hide_credentials: true
|
|
|
|
|
|
|
|
- name: auth
|
|
|
|
url: http://supabase-db:5432
|
|
|
|
routes:
|
|
|
|
- name: auth-route
|
|
|
|
paths:
|
|
|
|
- /auth/v1
|
|
|
|
plugins:
|
|
|
|
- name: cors
|
|
|
|
- name: key-auth
|
|
|
|
config:
|
|
|
|
hide_credentials: true
|
|
|
|
|
|
|
|
- name: storage
|
|
|
|
url: http://supabase-db:5432
|
|
|
|
routes:
|
|
|
|
- name: storage-route
|
|
|
|
paths:
|
|
|
|
- /storage/v1
|
|
|
|
plugins:
|
|
|
|
- name: cors
|
|
|
|
- name: key-auth
|
|
|
|
config:
|
|
|
|
hide_credentials: true
|
|
|
|
|
|
|
|
EOL
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Fix any spacing issues in the Kong configuration
|
2025-04-25 03:28:24 +08:00
|
|
|
if [ -f "$PROJECT_ROOT/backend/supabase/kong.yml" ]; then
|
|
|
|
sed -i '' 's/ey AgC/eyAgC/g' "$PROJECT_ROOT/backend/supabase/kong.yml"
|
2025-04-24 10:19:08 +08:00
|
|
|
fi
|
|
|
|
|
|
|
|
echo "Initialization complete. Run 'docker compose up -d' to start the application."
|