Skip to main content

AWS CDK based lambda layer including Twilio SDK.

Project description

B.TwilioSdkLayer

An AWS CDK based lambda layer containing Twilio SDK for python.

Description

This library is intended to simplify Twilio SDK dependency management in AWS architectures where Twilio logic is being handled with lambda functions. Simply include this layer when creating a lambda function to enable Twilio functionality.

NOTE! In order to use this layer, a docker command must be available on your machine. It is because the CDK runs a bundling command on a docker container to create the Twilio dependency.

Remarks

Biomapas aims to modernise life-science industry by sharing its IT knowledge with other companies and the community. This is an open source library intended to be used by anyone. Improvements and pull requests are welcome.

Related technology

  • Python 3
  • AWS CDK
  • Twilio

Assumptions

The project assumes the following:

  • You have basic-good knowledge in python programming.
  • You have basic-good knowledge in AWS and AWS CDK.
  • You have basic knowledge in Twilio.

Useful sources

Install

The project is built and uploaded to PyPi. Install it by using pip.

pip install b_twilio_sdk_layer

Or directly install it through source.

pip install .

Usage & Examples

Create a lambda function with this layer:

from aws_cdk.aws_lambda import Function, Code, Runtime
from b_twilio_sdk_layer.layer import Layer as TwilioLayer
from b_cfn_lambda_layer.package_version import PackageVersion

Function(
    scope=stack,
    id='MyCoolFunction',
    function_name='MyCoolFunction',
    code=Code.from_asset('/path/to/your/code'),
    handler='index.handler',
    runtime=Runtime.PYTHON_3_8,
    layers=[TwilioLayer(
        stack,
        'MyCoolTwilioLayer',
        twilio_sdk_version=PackageVersion.from_string_version('7.4.0')
    )],
)

Testing

This package has integration tests based on pytest. To run tests simply run:

pytest b_twilio_sdk_layer_test/integration/tests

Contribution

Found a bug? Want to add or suggest a new feature?
Contributions of any kind are gladly welcome. You may contact us directly, create a pull-request or an issue in github platform. Lets modernize the world together.

Release history

1.0.1

1.0.0

  • Restructure project. Start using the new b-cfn-lambda-layer Layer implementation.
  • Add Twilio layer test.
  • Add support for Twilio Python SDK version parameter.

0.0.8

  • Ensure consistent builds.

0.0.7

  • Add -R option for better debugging.

0.0.6

  • Add latest boto version to tests.

0.0.5

  • Add ability to bundle boto3 library. Simply specify version in the constructor.

0.0.4

0.0.3

  • Add disclaimer that docker is required.

0.0.2

  • Ensure that cdk application works by running cdk synth command.

0.0.1

  • Initial build.
  • Twilio SDK 6.46.0.
  • Docker image for asset building: python:3.9.

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

b_twilio_sdk_layer-1.0.1.tar.gz (7.9 kB view hashes)

Uploaded source

Built Distribution

b_twilio_sdk_layer-1.0.1-py3-none-any.whl (7.8 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Huawei Huawei PSF Sponsor Microsoft Microsoft PSF Sponsor NVIDIA NVIDIA PSF Sponsor Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page