Skip to main content

Integrate your python applications with AWS Lambda and https://pythondeploy.co/.

This project has been archived.

The maintainers of this project have marked this project as archived. No new releases are expected.

Project description

https://badge.fury.io/py/pd-aws-lambda.svg https://img.shields.io/badge/code%20style-black-000000.svg

Handle AWS Lambda events.

Events are passed to handlers for processing. Each event is passed to the handler in this order:

  • Handler defined in the event

  • HTTP events handler (for WSGI applications)

  • SQS events handler (if configured)

  • Default handler (if configured)

  • Logger handler (if no default is defined)

Provided Handlers

  • pd_aws_lambda.handlers.wsgi.handler: convert HttpAPI requests to WSGI environs.

  • pd_aws_lambda.handlers.shell.handler: Run shell commands.

  • pd_aws_lambda.handlers.logger.handler: log the received event and context.

Usage

  1. Add pd_aws_lambda to your application dependencies.

    poetry add pd_aws_lambda
  2. Set the required environment variables according to your needs in your Python Deploy application configuration.

    # Python path to the WSGI application that will handle HTTP requests.
    PD_WSGI_APPLICATION=my_django_project.wsgi.application
    
    # Python path to the handler for SQS events.
    PD_SQS_HANDLER=my_custom_handlers.sqs_handler
    
    # Python path to the default fallback handler.
    PD_DEFAULT_HANDLER=my_custom_handlers.default_handler

Custom handlers

A handler is a python function that receives an event and a context and does something with them. It can return a value if it makes sense for the type of event. For example, HttpAPI handlers like the one we use to call your wsgi application (pd_aws_lambda.handlers.wsgi.handler) should return a dictionary compatible with the AWS HttpAPI to form an HTTP response.

def handler(event, context):
    """
    I handle AWS Lambda invocations.

    I print the received event and context.
    """
    print("The event:", event)
    print("The context:", context)

Python Deploy

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pd_aws_lambda-2.0.0.tar.gz (5.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pd_aws_lambda-2.0.0-py3-none-any.whl (6.4 kB view details)

Uploaded Python 3

File details

Details for the file pd_aws_lambda-2.0.0.tar.gz.

File metadata

  • Download URL: pd_aws_lambda-2.0.0.tar.gz
  • Upload date:
  • Size: 5.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.10 CPython/3.9.7 Darwin/20.6.0

File hashes

Hashes for pd_aws_lambda-2.0.0.tar.gz
Algorithm Hash digest
SHA256 ca56223d267a3f2d6e20d74b6bab808ae6cd995b23d7930cf44287b2a9a5cb3e
MD5 abfd890ccf7f8fae2a4fb7c588c95caf
BLAKE2b-256 f1875ca33fea895167e5758b3550f3e7034b79cb0b6f3f7edaec867a4edd0019

See more details on using hashes here.

File details

Details for the file pd_aws_lambda-2.0.0-py3-none-any.whl.

File metadata

  • Download URL: pd_aws_lambda-2.0.0-py3-none-any.whl
  • Upload date:
  • Size: 6.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.1.10 CPython/3.9.7 Darwin/20.6.0

File hashes

Hashes for pd_aws_lambda-2.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 b4933a29a1b1c002b5679ab90c2d07d3040e910df1a5948f10f4d84e841d7974
MD5 448c903e7f30eb73e86277a3b474cb7d
BLAKE2b-256 3fda095e61aad9ad1c3fe74b74b49478bb5bc45d40c4e86c29229db87531ae48

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page