forked from baron/baron-sso
45 lines
1.1 KiB
Bash
45 lines
1.1 KiB
Bash
#!/usr/bin/env sh
|
|
set -eu
|
|
|
|
app_env="$(printf '%s' "${APP_ENV:-development}" | tr '[:upper:]' '[:lower:]')"
|
|
|
|
if [ -z "${VITE_DEVFRONT_PUBLIC_URL:-}" ] && [ -n "${DEVFRONT_URL:-}" ]; then
|
|
export VITE_DEVFRONT_PUBLIC_URL="$DEVFRONT_URL"
|
|
fi
|
|
|
|
if [ -z "${VITE_DEVFRONT_PUBLIC_URL:-}" ] && [ -n "${DEVFRONT_CALLBACK_URLS:-}" ]; then
|
|
first_devfront_callback="${DEVFRONT_CALLBACK_URLS%%,*}"
|
|
case "$first_devfront_callback" in
|
|
http://*/auth/callback | https://*/auth/callback)
|
|
export VITE_DEVFRONT_PUBLIC_URL="${first_devfront_callback%/auth/callback}"
|
|
;;
|
|
esac
|
|
fi
|
|
|
|
case "$app_env" in
|
|
production|prod|stage|staging)
|
|
mode="production"
|
|
;;
|
|
*)
|
|
mode="development"
|
|
;;
|
|
esac
|
|
|
|
if [ "${1:-}" = "--print-public-url" ]; then
|
|
printf '%s\n' "${VITE_DEVFRONT_PUBLIC_URL:-}"
|
|
exit 0
|
|
fi
|
|
|
|
if [ "${1:-}" = "--print-mode" ]; then
|
|
printf '%s\n' "$mode"
|
|
exit 0
|
|
fi
|
|
|
|
if [ "$mode" = "production" ]; then
|
|
echo "Running in production mode with Vite preview..."
|
|
exec sh -c "npm run build && npm run preview -- --host 0.0.0.0"
|
|
fi
|
|
|
|
echo "Running in development mode..."
|
|
exec npm run dev -- --host 0.0.0.0
|