Lfx Object Store Design

Central explainer for adding object storage capability to an LFX V2 service. Covers the S3-compatible storage decision, hard requirements (no presigned uploads, private buckets only, 20 MB cap, per-service bucket ownership, metadata/payload separation), Go AWS SDK v2 code patterns, the singleton and collection API shapes, the Helm chart credential-mode contract (static creds for local, IRSA for deployed), the nats-s3 sidecar local backend, the nginx-s3-gateway local CDN model, and the S3_BUCKET/AWS_REGION/S3_ENDPOINT_URL/S3_CREATE_MISSING_BUCKET/ CDN_URL_PREFIX env var contract. Fires on prompts like "object storage", "S3", "file upload", "upload endpoint", "attachments", "logo upload", "bucket", "nats-s3", "nginx-s3-gateway", "CDN_URL_PREFIX", "presigned URL", "PutObject", "IRSA S3", "S3_ENDPOINT_URL", "public_url", "download endpoint", "multipart upload". Read-only; routes implementation work to the owning service repo and provisioning to `/lfx-skills:lfx-object-store-ops`.

linuxfoundation a78675e 27.7 KB Updated

File contents

linuxfoundation/lfx-skills/tree/main/skills/lfx-object-store-design commit a78675eb2e

Frequently asked questions

npx skillmds@latest add linuxfoundation/lfx-object-store-design