tcb config update
把 cloudbaserc.json 中的配置推送到云端,同步本地与云端的资源配置。
语法
tcb config update <module> [name] [options]
<module> 为资源模块:
| 模块 | 说明 |
|---|---|
fn | 推送云函数配置 |
integration | 推送集成配置 |
参数
| 参数 | 必填 | 说明 | 默认值 |
|---|---|---|---|
[name] | 否 | 资源名称,与 --all 二选一 | — |
--all | 否 | 推送配置文件中所有资源的配置 | false |
-e, --env-id <envId> | 否 | 环境 ID | — |
--timeout <timeout> | 否 | 云函数超时时间,单位为秒 | — |
--memory <memory> | 否 | 云函数内存大小,单位为 MB | — |
--runtime <runtime> | 否 | 云函数运行时 | — |
--handler <handler> | 否 | 云函数入口 | — |
--vpc <vpcId/subnetId> | 否 | 云函数 VPC,格式为 vpcId/subnetId | — |
--env <key=value> | 否 | 云函数环境变量,可重复传入 | — |
--env-mode <mode> | 否 | 环境变量更新模式:merge(合并)/ overwrite(覆盖) | 交互询问 |
--yes | 否 | 跳过交互确认 | false |
示例
# 推送单个云函数
tcb config update fn hello
# 批量推送配置文件中所有云函数
tcb config update fn --all
# 推送单个集成
tcb config update integration myPayment
# 批量推送所有集成并跳过确认
tcb config update integration --all --yes
通过 CLI 参数直接改单个配置项,不必先改配置文件:
# 更新超时时间
tcb config update fn myFunc --timeout 60 -e envId --yes
# 更新内存
tcb config update fn myFunc --memory 512 -e envId --yes
# 环境变量合并,保留云端原有变量
tcb config update fn myFunc --env DB_HOST=127.0.0.1 --env-mode merge -e envId --yes
# 环境变量覆盖,替换云端全部变量
tcb config update fn myFunc --env DB_HOST=127.0.0.1 --env-mode overwrite -e envId --yes
# 一次改多项
tcb config update fn myFunc --timeout 30 --memory 256 --env NODE_ENV=production -e envId --yes
推送行为
云函数配置:
- 从
cloudbaserc.json的functions字段读取配置 - 参数优先级:CLI 参数 > 配置文件
- 配置中含环境变量时询问更新方式:覆盖用本地变量整体替换云端,合并则本地同名变量覆盖云端、其余保留
--all推送配置文件中所有函数
集成配置:
- 从
integrations字段读取配置 - 按
keyId匹配云端已有实例 - 可选字段显式设为空字符串
''时清空云端对应字段;必填字段本地未指定时保留云端原值 --all推送所有集成
集成字段的合并规则见更新集成配置。