35 lines
939 B
Bash
Executable File
35 lines
939 B
Bash
Executable File
#!/usr/bin/env bash
|
|
set -euo pipefail
|
|
|
|
ROOT="$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" && pwd)"
|
|
DEV_ID="$(printf '%s' "$ROOT" | cksum | awk '{print $1}')"
|
|
NAME="${BU_NAME:-default}"
|
|
|
|
case "$NAME" in
|
|
""|*[!A-Za-z0-9_-]*)
|
|
echo "invalid BU_NAME: $NAME" >&2
|
|
exit 2
|
|
;;
|
|
esac
|
|
|
|
export BH_HOME="${BH_HOME:-$ROOT/.browser-harness-dev}"
|
|
if [ -z "${BH_RUNTIME_DIR:-}" ]; then
|
|
export BH_RUNTIME_DIR="/tmp/bh-dev-$DEV_ID/runtime"
|
|
export BH_RUNTIME_DIR_SHARED="${BH_RUNTIME_DIR_SHARED:-1}"
|
|
fi
|
|
if [ -z "${BH_TMP_DIR:-}" ]; then
|
|
export BH_TMP_DIR="$BH_HOME/tmp"
|
|
export BH_TMP_DIR_SHARED="${BH_TMP_DIR_SHARED:-1}"
|
|
fi
|
|
|
|
if [ -x "$ROOT/.venv/bin/python" ]; then
|
|
exec "$ROOT/.venv/bin/python" -m browser_harness.run "$@"
|
|
fi
|
|
|
|
if command -v uv >/dev/null 2>&1; then
|
|
exec uv --directory "$ROOT" run python -m browser_harness.run "$@"
|
|
fi
|
|
|
|
export PYTHONPATH="$ROOT/src${PYTHONPATH:+:$PYTHONPATH}"
|
|
exec python3 -m browser_harness.run "$@"
|