8

已知问题:

安装 google-cloud-sdk(linux 包或来自 tarball)有一个怪癖,您无法在接受服务条款之前从命令行创建项目。

重现步骤:

  1. 下载 sdk,解压缩,将文件夹移动到主目录并使用 install.sh 将 google sdk 根目录添加到 PATH
  2. 初始化并登录: $ google init
  3. 从 CL 创建一个项目: $ gcloud projects create --set-as-default

这将吐出一个错误,如:

错误:(gcloud.projects.create)操作[cp.5641973328385684887]失败:9:调用者必须接受服务条款

我猜测接受服务条款尚未内置到命令行初始化中。在安装过程中省略这样一个基本步骤应该是非法的,其后果从一千次按键死亡,到“建立一个操蛋的操作系统”......但这只是我......

4

3 回答 3

13

我们在最不圣洁的地方找到了解决方案:谷歌云控制界面(云控制台)。

  • 转到您的云控制台
  • 通过选择“选择一个项目”(“Google Cloud Platform”旁边的左上角,然后选择“创建项目”(弹出窗口的右上角)来创建一个项目。

这将提示服务条款协议,您可以在同意服务条款后进行。

我希望这可以帮助那些偶然发现这个最令人愤怒的错误的人。

健康长寿·繁荣昌盛

位移

于 2019-07-22T11:49:16.140 回答
2

让我们不要对“一千次击键而死”那么戏剧化。这是应该实施的安全措施。安全性并不总是很方便,但可以为您的支票/信用账户节省很多麻烦。

想象一下这个理论场景。您为我提供了一个服务帐户,该帐户具有创建项目的角色。我创建了一个新项目。此项目是在您的 Google 结算帐户下创建的。我知道我在使用 Google IAM 做什么,因此我将您从新项目中移除,并让自己成为项目所有者。现在您无法访问新项目,但您的信用卡正在为我的项目支付账单。我想你会尖叫“一百万次击键死亡”。

有两种类型的项目:

  • 不属于组织的独立项目。
  • 属于组织的项目。

如果您是 Google Cloud 组织的一员,则可以轻松创建项目,直至达到配额限制(默认为 5 个)。无需提示,接受 TOS 等。使用 CLI 创建新项目毫不费力。

如果您不是 Google Cloud 组织的一部分,那么您基本上是在创建一个新帐户,您需要设置帐户结算、接受服务条款等。这意味着您不应该使用 CLI 创建新项目作为CLI 不会提示您输入新项目所需的项目。为什么,CLI 应该使用服务帐户。服务账户不是拥有该账户的 IAM 成员。这会强制您使用用户凭据登录 Google Cloud Console 以创建新项目。

于 2019-07-22T19:24:06.257 回答
0

对于尝试创建对话流代理时收到此消息的任何人:

转到https://console.cloud.google.com,登录并​​接受显示的条款和条件。

后来它对我有用...

于 2021-06-15T08:17:47.130 回答