【发布时间】:2018-10-25 14:41:42
【问题描述】:
我有一个项目 A,它是一个 App Engine 标准 nodejs8 应用程序。我有一个项目 B,它有一个带有 Jenkins 的 VM GCE 机器——这是我们的构建器,应该在提交发生时部署所有其他项目。
我可以使用 appcfg.py update . 从 B 部署到 A 但如果我尝试使用 gcloud deploy app 进行部署,我会收到此错误:
Permissions error fetching application [apps/my-project]. Please make sure you are using the correct project ID and that you have permission to view applications on the project.
我已将与 Jenkins 机器关联的服务帐户添加到项目 A 中,并为其授予所有者权限。我还在这两个项目上启用了 App Engine API。
我缺少哪个权限?
【问题讨论】:
-
那是哪个
appcfg.py(可以有几个)?这些是确切的命令还是您还有其他参数?两个命令是否在应用程序源中执行,使用相同的用户 ID/凭据(jenkins 用户?)并以相同的方式(即手动或脚本,交互与否)? -
我建议先运行“$gcloud init [service account]”(其中 [service account] 是您在项目 A 中添加的服务帐户),然后尝试部署应用程序。尝试将应用部署到项目 A 时,您可能没有启动正确的帐户。
-
@DanCornilescu
appcfg.py update .没有其他参数。它是google_appengine文件夹中的appcfg.py。这两个命令都是从 Jenkins 执行的(我也从 cmd 尝试过,它们的行为相同) -
@Jason 我执行了
gcloud init account例程,我将服务帐户视为活动帐户(左侧有一个星号)
标签: google-app-engine google-compute-engine