Cloud ML エンジンで実行されるトレーナー アプリケーションで次のコードを使用しています。
credentials, project = google.auth.default(scopes=['https://www.googleapis.com/auth/cloudkms'])
kms_client = googleapiclient.discovery.build('cloudkms', 'v1', credentials=credentials)
そして、次のエラーが発生します。
File "/root/.local/lib/python2.7/site-packages/trainer/kms.py", line 110, in decrypt
kms_client = googleapiclient.discovery.build('cloudkms', 'v1', credentials=credentials)
File "/usr/local/lib/python2.7/dist-packages/oauth2client/util.py", line 135, in positional_wrapper
return wrapped(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/googleapiclient/discovery.py", line 210, in build
credentials=credentials)
File "/usr/local/lib/python2.7/dist-packages/oauth2client/util.py", line 135, in positional_wrapper
return wrapped(*args, **kwargs)
File "/usr/local/lib/python2.7/dist-packages/googleapiclient/discovery.py", line 341, in build_from_document
http = credentials.authorize(http)
AttributeError: 'Credentials' object has no attribute 'authorize'
Google クラウド SDK がインストールされているローカル マシンから同じコードを問題なく実行できます。ここで何か不足している場合はお知らせください。