#!/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." mkdir -p "${STATIC_DATASET_INCOMING_DIR:-${SNAPSHOT_INCOMING_DIR:-/app/snapshots/incoming}}" \ "${STATIC_DATASET_ARCHIVE_DIR:-${SNAPSHOT_ARCHIVE_DIR:-/app/snapshots/archive}}" \ "${STATIC_DATASET_FAILED_DIR:-${SNAPSHOT_FAILED_DIR:-/app/snapshots/failed}}" 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 echo "Collecting static files..." python manage.py collectstatic --noinput fi exec "$@"