Skip to main content

Python-native infrastructure for the cloud: LaunchFlow provides a Python SDK that automatically creates and connects to production-ready infrastructure (such as Postgres, Redis, etc..) in your own cloud account. LaunchFlow completely removes the need for DevOps allowing you to focus on your application logic.

Project description

Deploy to AWS / GCP with Python

📖 Docs   |   ⚡ Quickstart   |   👋 Slack

LaunchFlow is an open source deployment tool that makes it easy to launch applications to Serverless, VMs, & Kubernetes on AWS and GCP (Azure coming soon).

Use the Python SDK to define your infrastructure in code, then run lf deploy to deploy everything to a dedicated environment in your cloud account.

Fully customizable but configured by default - no messy YAML required.

⚙️ Installation

pip install launchflow

📖 Examples

GCP Cloud Storage Bucket

  1. Define a GCS Bucket
import launchflow as lf

bucket = lf.gcp.GCSBucket("my-bucket")
  1. Create the GCS bucket in your project
launchflow create
  1. Use the Cloud SQL instance in your application
from infra import bucket

bucket.blob("my-file").upload_from_filename("my-file")

GCP Cloud SQL

  1. Define a Cloud SQL instance
import launchflow as lf

db = lf.gcp.CloudSQLPostgres("my-pg-db")
  1. Create the Cloud SQL instance in your project
launchflow create
  1. Use the Cloud SQL instance in your application
from infra import db

engine = db.sqlalchemy_engine()

FastAPI Integration

Built-in dependencies can easily be injected into your FastAPI application.

from fastapi import FastAPI, Depends
import launchflow
from sqlalchemy import text

db = launchflow.gcp.CloudSQLPostgres("my-pg-db")
engine = db.sqlalchemy_engine()
get_db = launchflow.fastapi.sqlalchemy(engine)

app = FastAPI()

@app.get("/")
def read_root(db: Session = Depends(get_db)):
    return db.execute(text("SELECT 1")).scalar_one_or_none()

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

launchflow-0.4.7.dev1.tar.gz (274.6 kB view hashes)

Uploaded Source

Built Distribution

launchflow-0.4.7.dev1-py3-none-any.whl (397.4 kB view hashes)

Uploaded Python 3

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