Blame view

activate.sh 1.03 KB
13320ac6   tangwang   分面接口修改:
1
  #!/bin/bash
484adbfe   tangwang   adapt ubuntu; con...
2
  #
484adbfe   tangwang   adapt ubuntu; con...
3
4
5
  # Usage:
  #   source activate.sh
  #
ed948666   tangwang   tidy
6
  # Required:
484adbfe   tangwang   adapt ubuntu; con...
7
  #   1) ./.venv (Python venv)
484adbfe   tangwang   adapt ubuntu; con...
8
9
10
11
12
13
14
15
16
17
  #
  
  # Must be sourced
  if [[ "${BASH_SOURCE[0]}" == "${0}" ]]; then
    echo "ERROR: Please source this script: source activate.sh" >&2
    exit 1
  fi
  
  PROJECT_ROOT="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
  
ed948666   tangwang   tidy
18
  # 1) venv (required)
484adbfe   tangwang   adapt ubuntu; con...
19
20
21
22
23
24
  VENV_ACTIVATE="${PROJECT_ROOT}/.venv/bin/activate"
  if [[ -f "${VENV_ACTIVATE}" ]]; then
    # shellcheck disable=SC1090
    source "${VENV_ACTIVATE}"
    ENV_KIND="venv"
  else
ed948666   tangwang   tidy
25
26
27
    echo "ERROR: No .venv found at ${VENV_ACTIVATE}" >&2
    echo "  - Create venv: ./scripts/create_venv.sh" >&2
    return 1
484adbfe   tangwang   adapt ubuntu; con...
28
  fi
13320ac6   tangwang   分面接口修改:
29
30
  
  # 如果需要加载 .env 中的环境变量
484adbfe   tangwang   adapt ubuntu; con...
31
32
  ENV_FILE="${PROJECT_ROOT}/.env"
  if [ -f "${ENV_FILE}" ]; then
13320ac6   tangwang   分面接口修改:
33
      set -a  # 自动导出所有变量
484adbfe   tangwang   adapt ubuntu; con...
34
35
      # NOTE: This loader tolerates comments/blank lines and strips inline comments.
      source <(grep -v '^#' "${ENV_FILE}" | grep -v '^$' | sed 's/#.*$//' | sed 's/\r$//')
13320ac6   tangwang   分面接口修改:
36
37
38
      set +a  # 关闭自动导出
  fi
  
484adbfe   tangwang   adapt ubuntu; con...
39
  echo "Environment activated (${ENV_KIND}): ${VIRTUAL_ENV:-${CONDA_DEFAULT_ENV:-unknown}}"