vibego 0.2.10__py3-none-any.whl → 0.2.11__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of vibego might be problematic. Click here for more details.
- scripts/start.sh +47 -7
- scripts/test_deps_check.sh +66 -0
- {vibego-0.2.10.dist-info → vibego-0.2.11.dist-info}/METADATA +1 -1
- {vibego-0.2.10.dist-info → vibego-0.2.11.dist-info}/RECORD +7 -6
- {vibego-0.2.10.dist-info → vibego-0.2.11.dist-info}/WHEEL +0 -0
- {vibego-0.2.10.dist-info → vibego-0.2.11.dist-info}/entry_points.txt +0 -0
- {vibego-0.2.10.dist-info → vibego-0.2.11.dist-info}/top_level.txt +0 -0
scripts/start.sh
CHANGED
|
@@ -153,6 +153,33 @@ select_python_binary() {
|
|
|
153
153
|
printf '%s' "$chosen"
|
|
154
154
|
}
|
|
155
155
|
|
|
156
|
+
# 检查Python依赖是否已安装完整
|
|
157
|
+
check_deps_installed() {
|
|
158
|
+
# 检查虚拟环境是否存在
|
|
159
|
+
if [[ ! -d "$ROOT_DIR/.venv" ]]; then
|
|
160
|
+
log_info "虚拟环境不存在,需要初始化"
|
|
161
|
+
return 1
|
|
162
|
+
fi
|
|
163
|
+
|
|
164
|
+
# 检查虚拟环境的Python解释器
|
|
165
|
+
if [[ ! -x "$ROOT_DIR/.venv/bin/python" ]]; then
|
|
166
|
+
log_info "虚拟环境Python解释器缺失"
|
|
167
|
+
return 1
|
|
168
|
+
fi
|
|
169
|
+
|
|
170
|
+
# 激活虚拟环境并检查关键依赖包
|
|
171
|
+
# aiogram: Telegram Bot框架
|
|
172
|
+
# aiohttp: 异步HTTP客户端
|
|
173
|
+
# aiosqlite: 异步SQLite数据库
|
|
174
|
+
if ! "$ROOT_DIR/.venv/bin/python" -c "import aiogram, aiohttp, aiosqlite" 2>/dev/null; then
|
|
175
|
+
log_info "关键依赖包缺失或损坏"
|
|
176
|
+
return 1
|
|
177
|
+
fi
|
|
178
|
+
|
|
179
|
+
log_info "依赖检查通过,虚拟环境完整"
|
|
180
|
+
return 0
|
|
181
|
+
}
|
|
182
|
+
|
|
156
183
|
if pgrep -f "python.*master.py" >/dev/null 2>&1; then
|
|
157
184
|
log_info "检测到历史 master 实例,正在终止..."
|
|
158
185
|
pkill -f "python.*master.py" || true
|
|
@@ -169,18 +196,31 @@ if pgrep -f "python.*master.py" >/dev/null 2>&1; then
|
|
|
169
196
|
log_info "历史 master 实例已清理"
|
|
170
197
|
fi
|
|
171
198
|
|
|
172
|
-
#
|
|
173
|
-
PYTHON_BIN="$(select_python_binary)"
|
|
174
|
-
"$PYTHON_BIN" -m venv .venv
|
|
175
|
-
source .venv/bin/activate
|
|
176
|
-
|
|
177
|
-
# 安装依赖
|
|
199
|
+
# 智能依赖管理:仅在必要时安装
|
|
178
200
|
REQUIREMENTS_FILE="${VIBEGO_REQUIREMENTS_PATH:-$ROOT_DIR/scripts/requirements.txt}"
|
|
179
201
|
if [[ ! -f "$REQUIREMENTS_FILE" ]]; then
|
|
180
202
|
log_error "依赖文件缺失: $REQUIREMENTS_FILE"
|
|
181
203
|
exit 1
|
|
182
204
|
fi
|
|
183
|
-
|
|
205
|
+
|
|
206
|
+
PYTHON_BIN="$(select_python_binary)"
|
|
207
|
+
|
|
208
|
+
# 检查是否需要安装依赖
|
|
209
|
+
if check_deps_installed; then
|
|
210
|
+
log_info "依赖已安装且完整,跳过pip install(加速重启)"
|
|
211
|
+
source .venv/bin/activate
|
|
212
|
+
else
|
|
213
|
+
log_info "首次启动或依赖缺失,正在安装依赖..."
|
|
214
|
+
|
|
215
|
+
# 创建或重建虚拟环境
|
|
216
|
+
"$PYTHON_BIN" -m venv .venv
|
|
217
|
+
source .venv/bin/activate
|
|
218
|
+
|
|
219
|
+
# 安装依赖
|
|
220
|
+
log_info "开始执行 pip install -r $REQUIREMENTS_FILE"
|
|
221
|
+
pip install -r "$REQUIREMENTS_FILE"
|
|
222
|
+
log_info "依赖安装完成"
|
|
223
|
+
fi
|
|
184
224
|
|
|
185
225
|
# 后台启动 master,日志落在 vibe.log
|
|
186
226
|
nohup python master.py >> /dev/null 2>&1 &
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
#!/usr/bin/env bash
|
|
2
|
+
# 测试依赖检查函数的逻辑
|
|
3
|
+
set -euo pipefail
|
|
4
|
+
|
|
5
|
+
ROOT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)"
|
|
6
|
+
|
|
7
|
+
echo "=== 测试依赖检查函数 ==="
|
|
8
|
+
echo "ROOT_DIR: $ROOT_DIR"
|
|
9
|
+
echo ""
|
|
10
|
+
|
|
11
|
+
# 从start.sh提取check_deps_installed函数进行测试
|
|
12
|
+
check_deps_installed() {
|
|
13
|
+
if [[ ! -d "$ROOT_DIR/.venv" ]]; then
|
|
14
|
+
echo "❌ 虚拟环境不存在"
|
|
15
|
+
return 1
|
|
16
|
+
fi
|
|
17
|
+
|
|
18
|
+
if [[ ! -x "$ROOT_DIR/.venv/bin/python" ]]; then
|
|
19
|
+
echo "❌ 虚拟环境Python解释器缺失"
|
|
20
|
+
return 1
|
|
21
|
+
fi
|
|
22
|
+
|
|
23
|
+
if ! "$ROOT_DIR/.venv/bin/python" -c "import aiogram, aiohttp, aiosqlite" 2>/dev/null; then
|
|
24
|
+
echo "❌ 关键依赖包缺失或损坏"
|
|
25
|
+
return 1
|
|
26
|
+
fi
|
|
27
|
+
|
|
28
|
+
echo "✅ 依赖检查通过"
|
|
29
|
+
return 0
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
# 测试1:检查当前环境
|
|
33
|
+
echo "【测试1】检查当前虚拟环境状态:"
|
|
34
|
+
if check_deps_installed; then
|
|
35
|
+
echo "结果:依赖完整,重启时将跳过pip install"
|
|
36
|
+
else
|
|
37
|
+
echo "结果:依赖缺失,重启时将执行pip install"
|
|
38
|
+
fi
|
|
39
|
+
echo ""
|
|
40
|
+
|
|
41
|
+
# 测试2:检查虚拟环境目录
|
|
42
|
+
echo "【测试2】虚拟环境目录检查:"
|
|
43
|
+
if [[ -d "$ROOT_DIR/.venv" ]]; then
|
|
44
|
+
echo "✅ .venv 目录存在"
|
|
45
|
+
ls -lh "$ROOT_DIR/.venv/bin/python" 2>/dev/null || echo "❌ Python解释器不存在"
|
|
46
|
+
else
|
|
47
|
+
echo "❌ .venv 目录不存在"
|
|
48
|
+
fi
|
|
49
|
+
echo ""
|
|
50
|
+
|
|
51
|
+
# 测试3:检查关键依赖
|
|
52
|
+
echo "【测试3】关键依赖包检查:"
|
|
53
|
+
if [[ -x "$ROOT_DIR/.venv/bin/python" ]]; then
|
|
54
|
+
for pkg in aiogram aiohttp aiosqlite; do
|
|
55
|
+
if "$ROOT_DIR/.venv/bin/python" -c "import $pkg" 2>/dev/null; then
|
|
56
|
+
echo "✅ $pkg 已安装"
|
|
57
|
+
else
|
|
58
|
+
echo "❌ $pkg 未安装"
|
|
59
|
+
fi
|
|
60
|
+
done
|
|
61
|
+
else
|
|
62
|
+
echo "⚠️ 无法检查(Python解释器不可用)"
|
|
63
|
+
fi
|
|
64
|
+
echo ""
|
|
65
|
+
|
|
66
|
+
echo "=== 测试完成 ==="
|
|
@@ -7,10 +7,11 @@ scripts/log_writer.py,sha256=8euoMlRo7cbtHApbcEoJnwzLABxti-ovJWFLRN1oDQw,3843
|
|
|
7
7
|
scripts/master_healthcheck.py,sha256=-X0VVsZ0AXaOb7izxTO_oyu23g_1jsirNdGIcP8nrSI,8321
|
|
8
8
|
scripts/requirements.txt,sha256=QSt30DSSSHtfucTFPpc7twk9kLS5rVLNTcvDiagxrZg,62
|
|
9
9
|
scripts/run_bot.sh,sha256=rM2Op_l4mP9asT3VoTwGQuHocwaxiGyQp2l1PLegsY4,4481
|
|
10
|
-
scripts/start.sh,sha256=
|
|
10
|
+
scripts/start.sh,sha256=IsNjFWXX3qmFxx_7iiVEidTj9VHBUTkNNbsCPoNSL0E,6782
|
|
11
11
|
scripts/start_tmux_codex.sh,sha256=4ko72SK7EDJmzXVuLBOz1_S1lLEmgIpLAVuD7mZhpdk,4018
|
|
12
12
|
scripts/stop_all.sh,sha256=FOz07gi2CI9sMHxBb8XkqHtxRYs3jt1RYgGrEi-htVg,4086
|
|
13
13
|
scripts/stop_bot.sh,sha256=b9vvrke5jeyO18SEBFZxQD09Gf65BgGzeKtpM8sa60Y,3677
|
|
14
|
+
scripts/test_deps_check.sh,sha256=AeSTucbNuNdOPSGvqVp0m31TVFDb0DmU8gSKg-Y5z2I,1696
|
|
14
15
|
scripts/.venv/lib/python3.14/site-packages/pip/__init__.py,sha256=_lgs5Mfp0t7AGtI7sTVwxKWquz_vahWWH9kKO1cJusA,353
|
|
15
16
|
scripts/.venv/lib/python3.14/site-packages/pip/__main__.py,sha256=WzbhHXTbSE6gBY19mNN9m4s5o_365LOvTYSgqgbdBhE,854
|
|
16
17
|
scripts/.venv/lib/python3.14/site-packages/pip/__pip-runner__.py,sha256=JOoEZTwrtv7jRaXBkgSQKAE04yNyfFmGHxqpHiGHvL0,1450
|
|
@@ -429,8 +430,8 @@ vibego_cli/config.py,sha256=33WSORCfUIxrDtgASPEbVqVLBVNHh-RSFLpNy7tfc0s,2992
|
|
|
429
430
|
vibego_cli/deps.py,sha256=1nRXI7Dd-S1hYE8DligzK5fIluQWETRUj4_OKL0DikQ,1419
|
|
430
431
|
vibego_cli/main.py,sha256=e2W5Pb9U9rfmF-jNX9uIA3222lhM0GgcvSdFTDBZd2s,12086
|
|
431
432
|
vibego_cli/data/worker_requirements.txt,sha256=QSt30DSSSHtfucTFPpc7twk9kLS5rVLNTcvDiagxrZg,62
|
|
432
|
-
vibego-0.2.
|
|
433
|
-
vibego-0.2.
|
|
434
|
-
vibego-0.2.
|
|
435
|
-
vibego-0.2.
|
|
436
|
-
vibego-0.2.
|
|
433
|
+
vibego-0.2.11.dist-info/METADATA,sha256=qdYmMPXO440tHnQCLv6SojrTvBsPqj2Pbi1sUrKp9KI,10475
|
|
434
|
+
vibego-0.2.11.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
435
|
+
vibego-0.2.11.dist-info/entry_points.txt,sha256=Lsy_zm-dlyxt8-9DL9blBReIwU2k22c8-kifr46ND1M,48
|
|
436
|
+
vibego-0.2.11.dist-info/top_level.txt,sha256=R56CT3nW5H5v3ce0l3QDN4-C4qxTrNWzRTwrxnkDX4U,69
|
|
437
|
+
vibego-0.2.11.dist-info/RECORD,,
|
|
File without changes
|
|
File without changes
|
|
File without changes
|