Search code examples
pythonflaskamazon-elastic-beanstalk

Python in AWS Elastic Beanstalk: Private package dependencies


I would like to deploy a Python Flask application on beanstalk.

The application depends on external packages (e.g. geopy) and internal packages (e.g. adam_geography).

The manual

Create a requirements.txt file and place it in the top-level directory of your source bundle.

This would probably fetch geopy and its dependencies, but would not fetch adam_geography which is available from a custom repo inside my VPC.

How do I specify/upload private, internal Python package dependencies in a Beanstalk application?


Solution

  • 1) copy internal Python package to server

    2) use Pip's "editable installs" feature to install the private package:

    pip install -e path/to/SomeProject
    

    http://pip.readthedocs.org/en/latest/reference/pip_install.html#editable-installs