Cloud Build无法构建App Engine Python 3.8应用程序由于pip错误?

问题描述

我在Google App Engine标准上有许多Python 3.7应用程序,都可以正常构建和部署。我正在尝试将其中一些升级到new Python 3.8 runtime,但是当我尝试进行部署时,它们在Cloud Build中失败。

看起来他们正在击中this open pip bugmore background)。奇怪的是,只有Python 3.8运行时会触发此错误,而3.7可以很好地构建。

完整日志如下。 (请注意,这是在Cloud Build中发生的,而不是在本地计算机中发生的,因此我无法升级pip或更改任何命令或环境。)有人知道我可以如何解决或解决此问题?

File upload done.
Updating service [default]...failed.
ERROR: (gcloud.beta.app.deploy) Error Response: [9] Cloud build 83e346a0-7e88-43dd-b89c-a4820526e4a1 status: FAILURE
Error ID: f8df99ad
Error type: INTERNAL
Error message: ... (setup.py): started
  Building wheel for webapp2 (setup.py): finished with status 'done'
  Created wheel for webapp2: filename=webapp2-3.0.0b1-py3-none-any.whl size=68362 sha256=9dd9f3ab6a55404492a88eb9a6bacb00faa37efafbc41f21a24d21cfba0eaea3
  Stored in directory: /layers/google.python.pip/pipcache/wheels/55/e9/4d/76b030f418cac0bef4a3dcc15ca95c9671f1e826731ce2bc0f
  Building wheel for tlslite-ng (setup.py): started
  Building wheel for tlslite-ng (setup.py): finished with status 'done'
  Created wheel for tlslite-ng: filename=tlslite_ng-0.7.5-py3-none-any.whl size=199869 sha256=b9ead00f0832041fba1e9d3883e57847995c2d6f83ecb7ea87d09cf82c730e8b
  Stored in directory: /layers/google.python.pip/pipcache/wheels/a6/e1/a6/09610854c3405202d0b71d8f869811781e40cd26ffb85eacf8
Successfully built gdata humanize mf2py mf2util python-tumblpy ujson webapp2 tlslite-ng
Installing collected packages: six,ecdsa,tlslite-ng,lxml,gdata,certifi,urllib3,chardet,idna,requests,setuptools,protobuf,googleapis-common-protos,pyasn1,pyasn1-modules,rsa,cachetools,google-auth,pytz,grpcio,google-api-core,google-cloud-core,google-cloud-logging,gunicorn,pbr,extras,linecache2,traceback2,python-mimeparse,argparse,unittest2,testtools,fixtures,mox3,soupsieve,beautifulsoup4,gdata-python3,redis,google-cloud-datastore,google-cloud-ndb,humanize,MarkupSafe,jinja2,webencodings,html5lib,mf2py,mf2util,oauthlib,prawcore,websocket-client,update-checker,praw,requests-oauthlib,python-tumblpy,tweepy,ujson,webob,webapp2,oauth-dropins
  Running setup.py develop for oauth-dropins
    ERROR: Command errored out with exit status 1:
     command: /opt/python3.8/bin/python3 -c 'import sys,tokenize; sys.argv[0] = '"'"'/workspace/setup.py'"'"'; __file__='"'"'/workspace/setup.py'"'"';f=getattr(tokenize,'"'"'open'"'"',open)(__file__);code=f.read().replace('"'"'\r\n'"'"','"'"'\n'"'"');f.close();exec(compile(code,__file__,'"'"'exec'"'"'))' develop --no-deps --home /tmp/pip-target-zp53suvg
         cwd: /workspace/
    Complete output (6 lines):
    usage: setup.py [global_opts] cmd1 [cmd1_opts] [cmd2 [cmd2_opts] ...]
       or: setup.py --help [cmd1 cmd2 ...]
       or: setup.py --help-commands
       or: setup.py cmd --help
    
    error: option --home not recognized
    ----------------------------------------
ERROR: Command errored out with exit status 1: /opt/python3.8/bin/python3 -c 'import sys,'"'"'exec'"'"'))' develop --no-deps --home /tmp/pip-target-zp53suvg Check the logs for full command output.
WARNING: You are using pip version 20.1.1; however,version 20.2.2 is available.
You should consider upgrading via the '/opt/python3.8/bin/python3 -m pip install --upgrade pip' command.
Full build logs: https://console.cloud.google.com/cloud-build/builds/83e346a0-7e88-43dd-b89c-a4820526e4a1?project=216076569502

这是我的requirements.txt文件。我怀疑-e .可能是问题所在...但是它在Python 3.7中有效,因此,如果这样,那真令人失望。

git+https://github.com/dvska/gdata-python3.git#egg=gdata
google-cloud-logging~=1.14
gunicorn~=20.0
mox3~=0.28

# this includes everything in setup.py's install_requires.
# https://caremad.io/posts/2013/07/setup-vs-requirement/#developing-reusable-things-or-how-not-to-repeat-yourself
-e .

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)