#!/bin/sh set -e echo "Waiting for PostgreSQL at ${POSTGRES_HOST}:${POSTGRES_PORT}..." until pg_isready -h "${POSTGRES_HOST}" -p "${POSTGRES_PORT}" -U "${POSTGRES_USER}"; do sleep 1 done echo "PostgreSQL is available." if [ "${DJANGO_SETTINGS_MODULE:-}" = "config.settings.production" ] && [ "$1" = "gunicorn" ]; then echo "Running Django deployment checks..." python manage.py check --deploy --fail-level WARNING fi if [ "${AUTO_APPLY_MIGRATIONS:-0}" = "1" ] && [ "$1" = "gunicorn" ]; then echo "Applying database migrations..." python manage.py migrate --noinput fi if [ "${AUTO_COLLECTSTATIC:-0}" = "1" ] && [ "$1" = "gunicorn" ]; then if [ "${AUTO_BUILD_TAILWIND:-1}" = "1" ] && [ -f /app/package.json ]; then if [ -x /app/node_modules/.bin/tailwindcss ]; then echo "Building Tailwind assets..." npm run build else echo "Tailwind dependencies missing; skipping AUTO_BUILD_TAILWIND." fi fi echo "Collecting static files..." python manage.py collectstatic --noinput fi exec "$@"