Files
ChatMock/docker/entrypoint.sh
Magniquick 13b1dddf75 feat: improve compatiblity with certain apps (#72)
* feat: enable modern packaging via pyproject.toml

uvx --from (...) chatmock should just work !

* feat(ollama): add version endpoint

* feat(logging): improve verbose diagnostics

* fix(stream): always send stop chunk
2025-11-19 15:02:20 +05:00

42 lines
874 B
Bash

#!/usr/bin/env bash
set -euo pipefail
export CHATGPT_LOCAL_HOME="${CHATGPT_LOCAL_HOME:-/data}"
cmd="${1:-serve}"
shift || true
bool() {
case "${1:-}" in
1|true|TRUE|yes|YES|on|ON) return 0;;
*) return 1;;
esac
}
if [[ "$cmd" == "serve" ]]; then
PORT="${PORT:-8000}"
ARGS=(serve --host 0.0.0.0 --port "${PORT}")
if bool "${VERBOSE:-}" || bool "${CHATGPT_LOCAL_VERBOSE:-}"; then
ARGS+=(--verbose)
fi
if bool "${VERBOSE_OBFUSCATION:-}" || bool "${CHATGPT_LOCAL_VERBOSE_OBFUSCATION:-}"; then
ARGS+=(--verbose-obfuscation)
fi
if [[ "$#" -gt 0 ]]; then
ARGS+=("$@")
fi
exec python chatmock.py "${ARGS[@]}"
elif [[ "$cmd" == "login" ]]; then
ARGS=(login --no-browser)
if bool "${VERBOSE:-}" || bool "${CHATGPT_LOCAL_VERBOSE:-}"; then
ARGS+=(--verbose)
fi
exec python chatmock.py "${ARGS[@]}"
else
exec "$cmd" "$@"
fi