#!/usr/bin/env bash
set -euo pipefail

SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
PROJECT_ROOT="$(cd "${SCRIPT_DIR}/.." && pwd)"
VENV_PATH="${AOS_VENV:-$PROJECT_ROOT/.venv}"

if [[ ! -d "$VENV_PATH" ]]; then
  echo "[aos-doctor] Virtualenv missing. Creating one..." >&2
  python3 -m venv "$VENV_PATH"
  "$VENV_PATH/bin/pip" install --upgrade pip
  if [[ -f "$PROJECT_ROOT/requirements.txt" ]]; then
    "$VENV_PATH/bin/pip" install -r "$PROJECT_ROOT/requirements.txt"
  fi
fi

export VIRTUAL_ENV="$VENV_PATH"
export PATH="$VENV_PATH/bin:$PATH"
export AOS_PROJECT_ROOT="$PROJECT_ROOT"

exec "$VENV_PATH/bin/python" -m architectos.doctor "$@"
