Comments (3)
The obvious fix:
--- /usr/lib/node_modules/serverless-wsgi/requirements.py.orig 2018-01-16 10:47:10.838897311 +0000
+++ /usr/lib/node_modules/serverless-wsgi/requirements.py 2018-01-16 10:47:23.895182233 +0000
@@ -78,7 +78,7 @@
blacklist = [
'pip', 'pip-*', 'wheel', 'wheel-*', 'setuptools',
- 'setuptools-*', 'easy_install.*', '__pycache__']
+ 'setuptools-*', 'easy_install.*', '__pycache__', '*.dist-info']
shutil.copytree(deps_dir, tmp_dir, symlinks=False,
ignore=shutil.ignore_patterns(*blacklist))
And now:
$ sls deploy
...
$ sha256sum .serverless/foo.zip
e8913553128240523296fef083163dbd9241c8dc513c81cc655770b2b4bc79e2 .serverless/foo.zip
$ sls deploy
...
$ sha256sum .serverless/foo.zip
e8913553128240523296fef083163dbd9241c8dc513c81cc655770b2b4bc79e2 .serverless/foo.zip
from serverless-wsgi.
I agree, let's add *.dist-info
to the blacklist
from serverless-wsgi.
There is a problem.
Some python packages, e.g. jira, are using a thingy called pbr that I hadn't come across before.
When pbr starts up, it reads the package's PKG-INFO or METADATA files. Those are stored under the <pkg>-<version>.dist-info
directory.
When this directory is missing, the whole lambda barfs at startup with this error:
module initialization error
Versioning for this project requires either an sdist tarball, or access to an upstream git repository. It's also possible that there is a mismatch between the package name in setup.cfg and the argument given to pbr.version.VersionInfo. Project name jira was given, but was not able to be found.
Only solution I have found is to remove *.dist-info
from the blacklist, which involves manually patching serverless-wsgi.
Maybe we should leave the *.dist-info
directory, and just blacklist the RECORD
file, as that's the only one which seems to change between deployments?
from serverless-wsgi.
Related Issues (20)
- Error: ENOTDIR: not a directory HOT 2
- Serverless wsgi application and aws http api fail to integrate HOT 1
- empty header in event HOT 1
- Any reason why we are raising an exception here?
- Cannot deploy Hello World
- Unable to link dependency 'click' because a file by the same name exists in this service
- Attempting to run sls wsgi serve locally is freezing
- -c no longer works but --command does HOT 1
- Question: http/1.1 chunked transfer encoding
- hasbin dependency
- tag 3.0.1 does not contain some fixes from master. HOT 2
- Response contain status code and headers HOT 2
- I got error when I deploy Flask app on AWS lambda HOT 1
- AWS Custom Authorizer via django (drf)
- Provide function to execute when calling sls wsgi command
- Alternative directory structure does not seem to work
- replace calls to werkzeug.urls with urllib.parse HOT 6
- Request for new release based on latest master branch HOT 2
- Finalize Deploy Hook not working HOT 2
- Command fails, but shows as succeeded
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from serverless-wsgi.