googleapis/python-ndb

How to install specific version of the cloud datastore emulator by gcloud ?

Huiicat opened this issue · 2 comments

I am running clusterfuzz tool on macOS.
While when excute fuzzy bot by python butler.py run_bot --name fuzzy-mac ./fuzzy-mac, the error logs come:

| Traceback (most recent call last):
|   File "src/python/bot/startup/run_bot.py", line 31, in <module>
|     from clusterfuzz._internal.base import tasks
|   File "/Users/cybersec-lab/Documents/clusterfuzz/fuzzy-mac/clusterfuzz/src/clusterfuzz/_internal/base/tasks.py", line 23, in <module>
|     from clusterfuzz._internal.base import external_tasks
|   File "/Users/cybersec-lab/Documents/clusterfuzz/fuzzy-mac/clusterfuzz/src/clusterfuzz/_internal/base/external_tasks.py", line 16, in <module>
|     from clusterfuzz._internal.datastore import data_handler
|   File "/Users/cybersec-lab/Documents/clusterfuzz/fuzzy-mac/clusterfuzz/src/clusterfuzz/_internal/datastore/data_handler.py", line 23, in <module>
|     from google.cloud import ndb
|   File "/Users/cybersec-lab/.local/share/virtualenvs/clusterfuzz-8KLeoczu/lib/python3.7/site-packages/google/cloud/ndb/__init__.py", line 28, in <module>
|     from google.cloud.ndb.client import Client
|   File "/Users/cybersec-lab/.local/share/virtualenvs/clusterfuzz-8KLeoczu/lib/python3.7/site-packages/google/cloud/ndb/client.py", line 28, in <module>
|     from google.cloud.datastore_v1.services.datastore.transports import (
| ModuleNotFoundError: No module named 'google.cloud.datastore_v1.services'

And after searching the errors, I found google.cloud.ndb should install the version of google.cloud.datastore under 2.0.0.
And what I install from gcloud components install can only install the version 2.3.1.

How should I install the specific version of datastore?
Thank you.

Now I tried to use gcloud components update 201.0.0 to downgrade the version of google.cloud.datastore, then I can't use gcloud because the version dosen't support Python 3.7.
This is not a way to try.