edgeone
Version:
Command-line interface for TencentCloud Pages Functions
39 lines (26 loc) • 1.5 kB
Markdown
# libs-pages-blob-python
这个目录存放随 `@tencent/edgeone` npm 包一起发布的 `pages-blob-python` wheel 文件。
## 为什么要打进 CLI?
`pages-blob-python` 发布在公司内部 PyPI 镜像上,外网用户的 pip/uv 默认 index
解析不到。把 wheel 随 CLI 发货,用户执行 `npm install -g @tencent/edgeone`
时就已经拿到了 wheel;`edgeone pages build` 构建 agent-python 项目时,CLI
会用 PEP 508 `pages-blob-python @ file://...` 语法把这个本地 wheel 注入到
`.edgeone/agent-python/lib/`,整个过程不需要联到内网 PyPI。
## 目录内容
- `pages_blob_python-<version>-py3-none-any.whl`:随构建打入的 pure-Python wheel
- `README.md`:本说明
## 如何更新 wheel?
不要手动把 wheel 放到这里。统一通过 CI 脚本拉取:
```bash
cd packages/tef-cli
node scripts/prepare-pages-blob-wheel.js
```
脚本会从内网 artifactory 下载指定版本的 wheel 覆盖写入当前目录。本地开发时
若脚本无法访问源(例如外网),脚本会检测已有 wheel 是否满足版本约束,满足
则跳过;不满足则报错退出。
## 运行时行为
参见 `src/pages/builder/impls/agent-python.ts` 的 `getPagesBlobWheelPath()`
和 `AGENT_PLATFORM_DEPS` 装配逻辑。两种 CLI 形态都要覆盖:
- **bundled**(`edgeone-dist/cli.js`):wheel 随 npm 包发货,在 CLI 根目录下
的 `libs-pages-blob-python/`
- **source**(ts-node/vitest):同一路径,仓库自带