Skip to content

datastructsro/parqcast-lambda

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

parqcast-lambda

AWS Lambda handler and S3 transport for parqcast.

Runs the parqcast export pipeline as a Lambda function, connecting directly to an Odoo PostgreSQL database and uploading Parquet files to S3.

Packages

Package Description
parqcast-lambda Lambda entry point, direct psycopg2 adapter
parqcast-transport-s3 S3/MinIO/LocalStack upload transport

Dependencies

parqcast-collectors and parqcast-core (transitively) are not published to PyPI. Install from the latest main of datastructsro/parqcast:

pip install "parqcast-collectors @ git+https://github.com/datastructsro/parqcast.git@main#subdirectory=packages/parqcast-collectors"

Or pin it via [tool.uv.sources] in your own pyproject.toml:

[tool.uv.sources]
parqcast-collectors = { git = "https://github.com/datastructsro/parqcast.git", subdirectory = "packages/parqcast-collectors", branch = "main" }

Quick start

Deploy as Lambda

  1. Set environment variables on the Lambda function:

    Variable Required Description
    DATABASE_URL yes PostgreSQL connection string
    COMPANY yes Odoo company name
    COMPANY_ID yes Odoo company ID
    S3_BUCKET yes Target S3 bucket
    S3_PREFIX no Key prefix (default: parqcast)
    S3_ENDPOINT_URL no For S3-compatible stores
    TIME_BUDGET no Seconds per tick (default: 270)
  2. Set the handler to parqcast.lambda_handler.handler.

Local development with SAM

cd demo-lambda
sam build && sam local invoke -e event.json

Using the S3 transport standalone

from parqcast.transport_s3 import S3Transport

transport = S3Transport(
    bucket="my-bucket",
    prefix="parqcast",
    endpoint_url="http://localhost:9000",  # MinIO
)
transport.upload_file("run-uuid", "products.parquet", file_obj)

About

Built and maintained by DataStruct s.r.o. — an Odoo Official Partner based in the Czech Republic, specialising in demand forecasting and ERP implementation for manufacturing, retail, and logistics in the Czech–German–Polish triangle.

License

Apache-2.0

About

AWS Lambda handler and S3/MinIO transport for the parqcast Odoo → Parquet pipeline. Deploy the exporter serverlessly.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages