#!/usr/bin/env sh set -e ROLE="${APP_ROLE:-api}" if [ "$ROLE" = "api" ]; then exec uvicorn app.main:app \ --host "${APP_HOST:-0.0.0.0}" \ --port "${APP_PORT:-8000}" \ --proxy-headers elif [ "$ROLE" = "worker" ]; then exec celery -A app.celery_app.celery worker \ --loglevel="${CELERY_LOGLEVEL:-INFO}" \ --queues="${CELERY_QUEUES:-send_email,append_sent,default}" \ --concurrency="${CELERY_CONCURRENCY:-4}" \ --prefetch-multiplier="${CELERY_PREFETCH_MULTIPLIER:-1}" \ --max-tasks-per-child="${CELERY_MAX_TASKS_PER_CHILD:-200}" else echo "Unknown APP_ROLE=$ROLE (expected api|worker)" exit 1 fi