2
我試圖配置一個notification for a Google Cloud Storage bucket object change但是當我嘗試使gsutil使用服務帳戶與此命令時卡住了。從GCloud激活服務帳戶
gcloud auth activate-service-account service-account-email --key-file path/to/key.p12
我在命令行中得到的錯誤是:
ERROR: (gcloud.auth.activate-service-account) PyOpenSSL is not available. If you have already installed PyOpenSSL, you will need to enable site packages by setting the environment variable CLOUDSDK_PYTHON_SITEPACKAGES to 1. If that does not work, See https://developers.google.com/cloud/sdk/crypto for details.
我跟着this instructions to get pyOpenSSL。如果我問PIP有關包裝它告訴我它是安裝
$ pip show pyopenssl
---
Name: pyOpenSSL
Version: 0.14
Location: /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages
Requires: cryptography, six
我也看到了環境變量,如果我叫env命令
$ env
...
CLOUDSDK_PYTHON_SITEPACKAGES=1
難道我做錯了什麼?
你能證實OpenSSL可用嗎?嘗試在python提示符下導入OpenSSL,如果可以,請在該python提示符下嘗試「$ CLOUDSDK_PYTHON_SITEPACKAGES = 1 gcloud interactive」和「導入OpenSSL」。如果它在第一個成功並在第二個失敗,那將有助於縮小問題的範圍。如果第一次失敗,PyOpenSSL安裝不正確。 –
不,它沒有工作。 >>>進口OpenSSL的 回溯(最近通話最後一個): 文件 「」,1號線,在 導入錯誤:沒有模塊名爲OpenSSL的 >>> 。我當然在使用Mac OSX上的pip安裝PyOpenSSL時遇到了問題,但我認爲現在一切正常。 –
我的建議是使用virtualenv,並且只使用pip來安裝virtualenv。當從virtualenv內運行時,不會有任何-S問題(當從virtualenv運行gcloud時,從未提供-S)。 –