Skip to main content

small (wip) wrapper for rds data api for lambda

Project description

Broly

Small module for managing models with the AWS rds data-api from lambda. Should be set into a lambda layer.

Uses pypika to generate MySQL and boto3's rds-data client.

MVP Features:

  • Generic model class
  • Model manipulation
  • Insert
  • Update
  • Autoincrement option
  • Read by column and parse response
    • Parsing datetimes
  • Table creation
  • Bulk get
  • Take pypika get queries to execute directly
  • Main MySQL column classes
  • Wait for serverless wakeup, boto3 doesn't retry automatically if db is 'asleep'
  • Delete
  • Order results for get queries
  • Tests

To add to lambda layer

mkdir python
pip3 install broly --target python/
zip -r python layer

Then just upload it to your lambda's layer.

Usage

from broly.model import Model
from broly.column import IntColumn, VarChar

class Example(Model):

    table_name = 'example'
    secret_arn = 'secret-arn'
    resource_arn = 'resource-arn'
    database = 'db-name'

    id = IntColumn(primary_key=True)
    name = VarChar(nullable=False)
    description = VarChar(size=1000)

e = Example(name="name")
e.set_value('description', 'desc')
print(e)
e = e.save()
print(e)

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

broly-0.1.1.tar.gz (8.1 kB view details)

Uploaded Source

Built Distribution

broly-0.1.1-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

Details for the file broly-0.1.1.tar.gz.

File metadata

  • Download URL: broly-0.1.1.tar.gz
  • Upload date:
  • Size: 8.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.9.0

File hashes

Hashes for broly-0.1.1.tar.gz
Algorithm Hash digest
SHA256 1d2e1ec43a91e616922e5f2f4b0c4a07cd4371eb4459bc20d0aef4a7c72d6fbf
MD5 10ba490888068f9b945f006b230587d1
BLAKE2b-256 cfee444ddb346fba8dbfa02c4af1629d8c43c5ab03e8ebca15a84028cc89d33b

See more details on using hashes here.

File details

Details for the file broly-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: broly-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 5.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.1 requests/2.25.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.54.1 CPython/3.9.0

File hashes

Hashes for broly-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 a3a50a4dd109b9937d5db4dfb17059a8fa714affb2d8e2adb67f828917e1d5d0
MD5 4f239d292472847c1a099b54ac68869d
BLAKE2b-256 f51879e0f1eefeff9dd19d8f717ec4ee011a4c341d3de9e058877c0ca17d2119

See more details on using hashes here.

Supported by

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