Blame view

activate.sh 1.55 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
07cf5a93   tangwang   START_EMBEDDING=...
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
      while IFS= read -r line || [ -n "${line}" ]; do
          line="${line%$'\r'}"
          [[ -z "${line//[[:space:]]/}" ]] && continue
          [[ "${line}" =~ ^[[:space:]]*# ]] && continue
          [[ "${line}" != *=* ]] && continue
  
          key="${line%%=*}"
          value="${line#*=}"
          key="${key#"${key%%[![:space:]]*}"}"
          key="${key%"${key##*[![:space:]]}"}"
          value="${value#"${value%%[![:space:]]*}"}"
  
          if [[ ${#value} -ge 2 ]]; then
              first="${value:0:1}"
              last="${value: -1}"
              if [[ ("${first}" == '"' && "${last}" == '"') || ("${first}" == "'" && "${last}" == "'") ]]; then
                  value="${value:1:${#value}-2}"
              fi
          fi
  
          export "${key}=${value}"
      done < "${ENV_FILE}"
13320ac6   tangwang   分面接口修改:
55
56
  fi
  
484adbfe   tangwang   adapt ubuntu; con...
57
  echo "Environment activated (${ENV_KIND}): ${VIRTUAL_ENV:-${CONDA_DEFAULT_ENV:-unknown}}"