首页 > 解决方案 > 使用 Cloud Build 部署 App Engine 失败,出现“操作已在进行中”错误

问题描述

我尝试通过以下步骤使用谷歌云构建部署新版本的应用引擎服务:

  1. 部署维护 dispatch.yml 以将所有请求路由到维护页面
  2. 升级数据库
  3. 部署新版本
  4. 部署 dispatch.yml 将请求路由回默认服务

前三个步骤有效,但第 4 步导致以下错误:

操作已在进行中

错误信息截图

正在运行的 GAE 进程是停止先前版本的进程。那么在部署 dispatch.yml 之前,如何找到正在运行的进程并等到它停止?

标签: google-app-enginegoogle-cloud-build

解决方案


我可以通过以下语句自己解决问题:

gcloud app operations wait $(gcloud app operations list --format="value(id)" --pending --limit=1) || true

这将等待正在运行的操作。就我而言,我不得不两次添加这一行,因为在那里运行操作要等待。


推荐阅读