Environment 对象和配置字段结构。
Environment 对象
创建、查询、列表、更新和归档接口都会返回该结构。
| 字段 | 类型 | 说明 |
|---|---|---|
id | string | Environment ID,前缀为 env_ |
type | string | 固定值 "environment" |
name | string | Environment 名称 |
description | string | Environment 描述 |
config | Environment config | Environment 配置 |
metadata | object | Metadata 对象,默认 {} |
archived_at | string | null | UTC 归档时间;未归档时为 null |
created_at | string | UTC 创建时间 |
updated_at | string | UTC 最后更新时间 |
Environment config
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
type | string | 是 | "cloud" 或 "self_hosted" |
packages | Environment packages | 否 | Environment 关联的包声明 |
setup_script | string | 否 | 用户 setup script 文本,详见 Environment setup script |
self_hosted config 可以包含 type 和可选的 setup_script:
self_hosted config 仅支持 type 和可选的 setup_script。
Environment packages
packages 是包管理器到软件包规格字符串数组的映射。请求支持 apt、npm 和 pip。Cloud Environment 响应还会返回若干保留字段;省略的数组会返回为 []。
| key | 类型 | 说明 | 示例 |
|---|---|---|---|
type | string | 响应中固定为 "packages" | "packages" |
apt | string 数组 | Debian/Ubuntu 系统包声明 | ["git", "curl", "build-essential"] |
npm | string 数组 | Node.js package 声明 | ["typescript@5.0.0", "eslint"] |
pip | string 数组 | Python package 声明 | ["pandas", "PyYAML==6.0.1"] |
cargo | string 数组 | 响应中的保留字段;当前不支持通过该字段安装依赖 | [] |
gem | string 数组 | 响应中的保留字段;当前不支持通过该字段安装依赖 | [] |
go | string 数组 | 响应中的保留字段;当前不支持通过该字段安装依赖 | [] |
Environment setup script
setup_script 是 sandbox 准备阶段、packages 安装完成之后执行的一段 shell 脚本,用 /bin/bash -lc 运行。常用于克隆代码、写配置文件、warmup 缓存等无法用 packages 表达的初始化步骤。
| 约束 | 值 |
|---|---|
| 类型 | string |
| 最大长度 | 64 KB |
| 解释器 | /bin/bash -lc |
| 超时 | 10 分钟 |
| 执行时机 | sandbox 准备阶段,packages 安装完成之后 |
setup_script 的 exit code 与 stderr 摘要,便于定位失败原因。

