add tester ui, and restructure folders
This commit is contained in:
@@ -2,9 +2,27 @@ FROM python:3.13-slim
|
||||
|
||||
WORKDIR /app
|
||||
|
||||
# Function-specific deps first. Each function carries its own requirements.txt
|
||||
# (so a real AWS deploy zips the function folder verbatim). Locally, the pod
|
||||
# installs the union of all of them.
|
||||
COPY functions/ ./functions/
|
||||
RUN set -e; \
|
||||
for r in functions/*/requirements.txt; do \
|
||||
[ -f "$r" ] && pip install --no-cache-dir -r "$r"; \
|
||||
done
|
||||
|
||||
# Runner deps (FastAPI + uvicorn). Lives only in the runner pod; NOT bundled
|
||||
# with any function zip for AWS.
|
||||
COPY requirements.txt ./
|
||||
RUN pip install --no-cache-dir -r requirements.txt
|
||||
|
||||
COPY lambda_function.py invoke.py seed.py ./
|
||||
# Shared modules (Lambda-Layer equivalent) and generic tooling.
|
||||
COPY shared/ ./shared/
|
||||
COPY invoke.py runner.py ./
|
||||
|
||||
CMD ["sleep", "infinity"]
|
||||
# uvicorn --reload restarts on .py change → every code edit produces a fresh
|
||||
# cold start, matching how AWS Lambda's container lifecycle works when you
|
||||
# redeploy. Watching the whole /app tree picks up function-folder edits too.
|
||||
CMD ["uvicorn", "runner:app", \
|
||||
"--host", "0.0.0.0", "--port", "8000", \
|
||||
"--reload", "--reload-dir", "/app"]
|
||||
|
||||
Reference in New Issue
Block a user