每次我在Cloud Compute实例上使用bq
时,我都会这样:
/usr/local/share/google/google-cloud-sdk/platform/bq/third_party/oauth2client/contrib/gce.py:73: UserWarning: You have requested explicit scopes to be used with a GCE service account.
Using this argument will have no effect on the actual scopes for tokens
requested. These scopes are set at VM instance creation time and
can't be overridden in the request.
warnings.warn(_SCOPES_WARNING)
这是micro
中Debian 8的默认f1
。我将此实例授予所有Cloud API,并且其服务帐户也是项目的所有者。我跑gcloud init
。但是这个错误仍然存在。
有什么不对吗?
答案 0 :(得分:4)
我注意到这个警告没有出现在运行SDK版本0.9.85的旧实例上,但我现在在创建新实例或升级最新的Gcloud SDK时得到它。
可以安全地忽略作用域警告,因为它只是告诉您将使用的唯一作用域是在实例创建时指定的作用域,这是默认GCE服务帐户的预期行为。
似乎'bq'工具不区分GCE上的默认服务帐户和常规服务帐户,并且总是尝试显式设置范围。警告来自oauth2client,看起来它在v2.0.0之前的版本中没有显示此警告。
我已创建公开问题来跟踪此问题,您可以加注星标以获取更新: https://code.google.com/p/google-bigquery/issues/detail?id=557