GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — GitHub - Miserlou/lambda-packages: Various popular python libraries, pre-compiled to be compatible with AWS Lambda

BranchesTags
Open more actions menu

Latest commit

 

History

189 Commits
189 Commits

Folders and files

NameName
Last commit message
Last commit date
lambda_packages
lambda_packages
 
 
.gitignore
.gitignore
 
 
.travis.yml
.travis.yml
 
 
MANIFEST.in
MANIFEST.in
 
 
README.md
README.md
 
 
setup.py
setup.py
 
 
test.py
test.py
 
 
test.sh
test.sh
 
 

Repository files navigation

Logo

lambda-packages

Build Status PyPI Slack

Various popular libraries, pre-compiled to be compatible with AWS Lambda.

Currently includes (at least Python 2.7) support for:

  • bcrypt
  • cffi
  • cryptography
  • datrie_extended
  • LXML
  • misaka
  • MySQL-Python
  • mysqlclient
  • numpy
  • OpenCV
  • Pillow (PIL)
  • psycopg2
  • PyCrypto
  • PyNaCl
  • pyproj
  • python-ldap
  • python-Levenshtein
  • regex
  • SQLite
  • xmlsec

This project is intended for use by Zappa, but could also be used by any Python/Lambda project.

Installation

pip install lambda-packages

Usage

The best way to use these packages is with Zappa, which will automatically install the right packages during deployment, and do a million other useful things. Whatever you're currently trying to do on Lambda, it'll be way easier for you if you just use Zappa right now. Trust me. It's awesome. As a bonus, Zappa now also provides support for manylinux wheels, which adds support for hundreds of other packages.

But, if you want to use this project the other (wrong) way, just put the contents of the .tar.gz archive into your lambda .zip.

lambda-packages also includes a manifest with information about the included packages and the paths to their binaries.

from lambda_packages import lambda_packages

print lambda_packages['psycopg2']

#{
#    'python2.7': {
#        'version': '2.6.1',
#        'path': '<absolute-local-path>/lambda_packages/psycopg2/python2.7-psycopg2-2.6.1.tar.gz'
#    }
#}

Contributing

To add support for more packages, send a pull request containing a gzipped tarball (tar -zcvf <package-name>.tar.gz <list-of-files>) of the package (built on Amazon Linux and tested on AWS Lambda) in the appropriate directory, an updated manifest, and deterministic build instructions for creating the archive.

You may find the build.sh script useful as a starting point.

Before contributing, you should also make sure that there is no manylinux wheel on PyPI for your package, as Zappa will automatically use those in addition to lambda-packages.

You may also be interested in this guide on deploying with Zappa and Docker.

Useful targets which don't have manylinux wheels versions include:

  • MongoEngine

Support / Development / Training / Consulting

Do you need help with..

  • Porting existing Python applications to AWS Lambda?
  • Building new applications and services that scale infinitely?
  • Reducing your operations and hosting costs?
  • Training your team to use AWS and other server-less paradigms?

Good news! We're currently available for remote and on-site consulting for small, large and enterprise teams. Please contact [email protected] with your needs and let's work together!


Made by Gun.io

About

Various popular python libraries, pre-compiled to be compatible with AWS Lambda

blog.zappa.io

Topics

awsaws-lambdabinarylambdapackagepythonserverlesszappa

Resources

Readme
Activity

Stars

728 stars

Watchers

34 watching

Forks

157 forks
Report repository

Releases

Packages

Used by

Contributors

Languages

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.