36 lines
1.4 KiB
Bash
36 lines
1.4 KiB
Bash
#!/bin/bash
|
||
set -e
|
||
|
||
# Initialize Supabase if needed and ensure default admin user exists
|
||
# Requires environment variables:
|
||
# SUPABASE_URL – base URL of Supabase instance (e.g., http://192.168.1.132:8000)
|
||
# SUPABASE_SERVICE_ROLE_KEY – service role secret key with admin privileges
|
||
# DEFAULT_USER_EMAIL – email for the default user (default: info@hephex.de)
|
||
# DEFAULT_USER_PASSWORD – password for the default user (default: Kathi2022!)
|
||
|
||
DEFAULT_EMAIL="${DEFAULT_USER_EMAIL:-info@hephex.de}"
|
||
DEFAULT_PASSWORD="${DEFAULT_USER_PASSWORD:-Kathi2022!}"
|
||
|
||
if [[ -z "$SUPABASE_URL" || -z "$SUPABASE_SERVICE_ROLE_KEY" ]]; then
|
||
echo "Supabase URL or Service Role Key not set – skipping user creation."
|
||
exit 0
|
||
fi
|
||
|
||
# Check if the user already exists
|
||
EXISTING=$(curl -s "${SUPABASE_URL}/auth/v1/admin/users?apikey=${SUPABASE_SERVICE_ROLE_KEY}" \
|
||
-H "Authorization: Bearer ${SUPABASE_SERVICE_ROLE_KEY}" \
|
||
-H "Content-Type: application/json" | grep -i "${DEFAULT_EMAIL}")
|
||
|
||
if [[ -n "$EXISTING" ]]; then
|
||
echo "Default user ${DEFAULT_EMAIL} already exists."
|
||
else
|
||
echo "Creating default user ${DEFAULT_EMAIL}..."
|
||
curl -s -X POST "${SUPABASE_URL}/auth/v1/admin/users?apikey=${SUPABASE_SERVICE_ROLE_KEY}" \
|
||
-H "Authorization: Bearer ${SUPABASE_SERVICE_ROLE_KEY}" \
|
||
-H "Content-Type: application/json" \
|
||
-d "{\"email\": \"${DEFAULT_EMAIL}\", \"password\": \"${DEFAULT_PASSWORD}\", \"email_confirmed\": true}"
|
||
echo "User created."
|
||
fi
|
||
|
||
exec "$@"
|