Google Cloud SDK — нет модуля с именем ipaddr

Сегодня наши контейнеры для разработки начали выдавать ошибки и ошибки при запуске стандартной среды разработки App Engine (GAE) из Google Cloud SDK.

ERROR    2017-12-15 09:38:37,766 http_runtime.py:396] bad runtime process port ['']
Traceback (most recent call last):
File "/opt/google-cloud-sdk/platform/google_appengine/_php_runtime.py", line 103, in <module>
_run_file(__file__, globals())
File "/opt/google-cloud-sdk/platform/google_appengine/_php_runtime.py", line 97, in _run_file
execfile(_PATHS.script_file(script_name), globals_)
File "/opt/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/php/runtime/runtime.py", line 39, in <module>
from google.appengine.tools.devappserver2 import wsgi_server
File "/opt/google-cloud-sdk/platform/google_appengine/google/appengine/tools/devappserver2/wsgi_server.py", line 34, in <module>
import ipaddr
ImportError: No module named ipaddr

Похоже, что это было вызвано обновлением до последней версии SDK, которое произошло автоматически.

5

Решение

Временное решение для MacOS, скопируйте ipaddr.py подать в <google-cloud-sdk>/platform/google_appengine

7

Другие решения

В Ubuntu 14.04, которую мы используем для соответствия версии GAE PHP 5.5, модуль python, который они пытаются использовать, по умолчанию не установлен.

Мы установили его с:

# apt install python-ipaddr

Похоже, это связано с функцией, которую они ввели для проверки узлов, чтобы предотвратить атаки повторного связывания DNS.

2

В Windows 10 я скопировал файл ipaddr.py от https://github.com/google/ipaddr-py в Google\Cloud SDK\google-cloud-sdk\platform\bundledpython\Lib\ папка и все заработало.

Не опытный программист Python, так что я не уверен, что это лучшее место, где можно найти пропавших без вести ipaddr.py файл, но это работает.

1

Это произошло после обновления GoogleAppEngine-1.9.65 в моей Windows 7, и, похоже, в папке C: \ Program Files (x86) \ Google \ google_appengine \ lib \ ipaddr \ ipaddr отсутствует файл ipaddr.py.

Мне пришлось скачать IPADDR-2.2.0.tar.gz затем распакуйте его и выполните следующую команду, чтобы установить его.

python setup.py install

Надеюсь это поможет.

0
По вопросам рекламы [email protected]