【问题标题】:google-cloud-sdk "gcloud projects list" is no longer showing projects listgoogle-cloud-sdk“gcloud 项目列表”不再显示项目列表
【发布时间】:2020-01-24 21:00:52
【问题描述】:

“gcloud 项目列表”命令不再显示我的项目。相反,它返回“列出的 0 个项目”。 .我在我的机器上本地运行的 google-cloud-sdk 以及“云外壳”就是这种情况。如果我登录到 console.cloud.google.com ,我可以看到我确实有活动项目。

如果我运行“gcloud init”,它有时会显示我的项目,有时会显示我没有项目。

昨天还好好的。有什么想法吗?

【问题讨论】:

  • 评论已删除。以为它现在可以工作了……但事实并非如此。

标签: gcloud google-cloud-sdk


【解决方案1】:

主要是猜测。

此命令将列出当前活动的gcloud 用户:

ACCOUNT=$(\
  gcloud auth list \
  --format="yaml" --filter="status=ACTIVE" \
  --format="value(account)"\
) && echo ${ACCOUNT}

这与您在浏览器中使用的帐户相同吗?我怀疑不是。

由于${ACCOUNT} 是默认设置,以下是确保您列出此${ACCOUNT} 有权访问的项目的更明确的方法:

echo ${ACCOUNT} && gcloud projects list --account=${ACCOUNT}

如果帐户匹配并且gcloud 无法正常工作,则问题一定是您的gcloud 安装存在问题。

一个不太可能的问题可能是 Google 没有(正确)规范化 Gmail(所有 Google?)帐户。如果您的 Google Cloud Platform 项目引用的 Gmail 帐户包含句点 (.),则在尝试访问这些项目时必须使用这些句点。

就 Gmail 而言,your.name@gmail.com == yourname@gmail.com。期间不重要。您可以发送电子邮件至y.o.u.r.n.a.m.e@gmail.com,这将起作用。但是,就 GCP 而言,句点很重要,您必须使用相同的地址。

【讨论】:

  • 它自己解决了。我向谷歌提交了一张票,他们很快就有人在处理它。没有关于为什么的答案,但它现在有效。我还注意到我的 console.cloud.google.com 网站随机显示/不显示我的项目,所以我怀疑他们正在解决某种服务器端问题
  • 请原谅我的无知,echo ${ACCOUNT) 是这样写的,因为它是一个字符串文字?
  • 命令显示环境变量ACCOUNT的值
  • 如果您不想运行完整的 Bash 脚本,直接运行 gcloud auth list 将显示机器的所有凭据帐户,以及当前活动帐户。这通常足以确定您的活动帐户是否正确。
猜你喜欢
  • 2019-02-15
  • 2012-01-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-10-14
  • 1970-01-01
  • 2017-01-05
  • 2016-03-08
相关资源
最近更新 更多