You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何列出Cloud Run的非活跃修订版本?

如何列出Cloud Run服务的非活跃修订版本

要筛选出Cloud Run服务的非活跃修订版本,不能直接用active字段过滤,因为该状态嵌套在修订版本的status.conditions结构中,需要针对嵌套字段编写过滤规则:

1. 列出非活跃修订版本

使用以下命令可以直接筛选出所有非活跃的修订版本:

gcloud run revisions list --region europe-west1 --service service-name --filter="conditions.type=Active AND conditions.status!=True"

过滤逻辑说明:

  • conditions.type=Active:定位到代表活跃状态的条件项
  • conditions.status!=True:筛选出该状态不为True的修订版本(也就是非活跃的)

2. 仅输出修订版本名称(方便后续删除)

如果只需要获取非活跃版本的名称,可添加--format参数简化输出:

gcloud run revisions list --region europe-west1 --service service-name --filter="conditions.type=Active AND conditions.status!=True" --format="value(name)"

3. 批量删除非活跃修订版本

如果你的目标是删除这些非活跃版本,可以将上述命令的结果直接传入删除命令:

# 使用子命令方式
gcloud run revisions delete --region europe-west1 --service service-name $(gcloud run revisions list --region europe-west1 --service service-name --filter="conditions.type=Active AND conditions.status!=True" --format="value(name)")

# 或用xargs更稳妥(避免名称过多时的参数长度问题)
gcloud run revisions list --region europe-west1 --service service-name --filter="conditions.type=Active AND conditions.status!=True" --format="value(name)" | xargs gcloud run revisions delete --region europe-west1 --service service-name

为什么之前的过滤方式无效?

你之前尝试的--filter='-active:*'无法生效,是因为active并非gcloud命令识别的顶层过滤字段,修订版本的活跃状态实际存储在嵌套的status.conditions数组中,必须通过嵌套字段的过滤语法才能正确匹配。

内容的提问来源于stack exchange,提问作者Suma

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 03:01:11