Google Cloud App Engine: сбой сборки облака на "python setup.py egg_info"

Я пытаюсь развернуть приложение движка облачных приложений Google, написанное на python3.6, с помощью flask.

Это ошибка:

Step #1: Collecting pip==10.0.1 (from -r requirements.txt (line 1))
Step #1: Downloading https://files.pythonhosted.org/packages/0f/74/ecd13431bcc456ed390b44c8a6e917c1820365cbebcb6a8974d1cd045ab4/pip-10.0.1-py2.py3-none-any.whl (1.3MB)
Step #1: Collecting Flask==0.12.2 (from -r requirements.txt (line 2))
Step #1: Downloading https://files.pythonhosted.org/packages/77/32/e3597cb19ffffe724ad4bf0beca4153419918e7fa4ba6a34b04ee4da3371/Flask-0.12.2-py2.py3-none-any.whl (83kB)
Step #1: Collecting gunicorn==19.7.1 (from -r requirements.txt (line 3))
Step #1: Downloading https://files.pythonhosted.org/packages/64/32/becbd4089a4c06f0f9f538a76e9fe0b19a08f010bcb47dcdbfbc640cdf7d/gunicorn-19.7.1-py2.py3-none-any.whl (111kB)
Step #1: Collecting oauth2client==4.1.2 (from -r requirements.txt (line 4))
Step #1: Downloading https://files.pythonhosted.org/packages/82/d8/3eab58811282ac7271a081ba5c0d4b875ce786ca68ce43e2a62ade32e9a8/oauth2client-4.1.2-py2.py3-none-any.whl (99kB)
Step #1: Collecting google-cloud (from -r requirements.txt (line 5))
Step #1: Downloading https://files.pythonhosted.org/packages/49/9a/943f0e217990c37e119101bbb739d86201ec1fdf59152ecc2dba93c5a8ad/google-cloud-0.33.0.tar.gz
Step #1: Complete output from command python setup.py egg_info:
Step #1: Traceback (most recent call last):
Step #1: File "<string>", line 1, in <module>
Step #1: File "/tmp/pip-build-agnydxp0/google-cloud/setup.py", line 22, in <module>
Step #1: with open(os.path.join(PACKAGE_ROOT, 'setup-README.rst')) as file_obj:
Step #1: FileNotFoundError: [Errno 2] No such file or directory: '/tmp/pip-build-agnydxp0/google-cloud/setup-README.rst'
Step #1: 
Step #1: ----------------------------------------
Step #1: [91mCommand "python setup.py egg_info" failed with error code 1 in /tmp/pip-build-agnydxp0/google-cloud/
Step #1: [0m[91mYou are using pip version 9.0.3, however version 10.0.1 is available.
Step #1: You should consider upgrading via the 'pip install --upgrade pip' command.[0m[91m
Step #1: The command '/bin/sh -c pip install -r requirements.txt' returned a non-zero code: 1
Finished Step #1
ERROR
ERROR: build step 1 "gcr.io/cloud-builders/docker@sha256:2357779cf996af7c1538a7035ab26073274de0d03e9eaf156e33083f5a90280a" failed: exit status 1
Step #1: [0m

Я поискал и обнаружил, что ошибка возникает из-за устаревшей версии pip. Однако я поместил pip==10.0.1 в свой файл requirements.txt, но он по-прежнему не работает.

Есть ли способ запустить pip install --upgrade pip удаленно? Если да, то как я могу это сделать?

Обновлено:

Вот мой файл манифеста app.yaml:

runtime: python
env: flex
entrypoint: gunicorn -b :$PORT main:app

runtime_config:
  python_version: 3

manual_scaling:
  instances: 1
resources:
  cpu: 1
  memory_gb: 0.5
  disk_size_gb: 10

Не могли бы вы показать свой файл манифеста?

Dries De Rydt 22.05.2018 16:03

@DriesDeRydt отредактировал манифест в: D

Arhire Ionut 22.05.2018 16:06

Мне никогда не приходилось указывать версию pip, я думаю, что у времени выполнения движка приложения есть свои собственные. Если вы готовы к этому, вы можете попробовать указать настраиваемую среду выполнения вместо python, а затем использовать Dockerfile. cloud.google.com/appengine/docs/f flexible/custom-runtimes/… Таким образом, у вас будет больше контроля над процессом сборки.

Dries De Rydt 22.05.2018 16:10

Если в вашей системе установлены обе версии python 2 и 3, убедитесь, что у вас запущен pip для python 3 - в моем случае pip по умолчанию установлен на python2. В качестве альтернативы используйте pip3 вместо pip, что гарантирует, что вы используете версию 3, независимо от того, какая версия python является версией по умолчанию в вашей системе.

Dan Cornilescu 22.05.2018 16:51

@DanCornilescu проблема связана с платформой gcloud, поэтому мои локальные настройки здесь не имеют значения. В любом случае спасибо: D

Arhire Ionut 22.05.2018 17:07
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
2
5
944
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

У меня была эта проблема ранее сегодня, и я исправил ее, установив только нужные мне пакеты google-cloud (google-cloud-pubsub и google-cloud-storage в моем случае). Похоже, что зонтичный пакет google-cloud в любом случае устарел. Источник: https://pypi.org/project/google-cloud/

WARNING: The google-cloud Python package is deprecated. On June 18, 2018, this package will no longer install any other packages. Please install the product-specific google-cloud-* packages needed for your application.

Я сбросил virtualenv и добавил только необходимое, как вы сказали. Теперь это работает. Спасибо! : D

Arhire Ionut 23.05.2018 12:20

Другие вопросы по теме