docs, ci, test: README for gRPC, Dockerfile, CI pipeline, HTTP sink tests
- README: updated for gRPC API, Docker deployment, project structure - Dockerfile: multi-stage build for containerized deployment - CI: GitHub Actions workflow for ruff lint + pytest on push/PR - tests: HTTP sink end-to-end tests (forwarding, 404, delivery) - tests: comprehensive smoke test exercising all 10 gRPC endpoints
This commit is contained in:
+27
@@ -0,0 +1,27 @@
|
||||
FROM python:3.13-slim AS builder
|
||||
|
||||
RUN pip install uv --no-cache-dir
|
||||
|
||||
WORKDIR /app
|
||||
COPY pyproject.toml .
|
||||
RUN uv sync --no-dev --frozen
|
||||
|
||||
FROM python:3.13-slim
|
||||
|
||||
RUN apt-get update && apt-get install -y --no-install-recommends \
|
||||
liblmdb0 \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN groupadd -r daena && useradd -r -g daena -d /var/lib/daena daena
|
||||
|
||||
COPY --from=builder /app /app
|
||||
COPY src/ /app/src/
|
||||
COPY proto/ /app/proto/
|
||||
|
||||
ENV PATH="/app/.venv/bin:$PATH" \
|
||||
DAENA_CONFIG_PATH=/etc/daena/daena.yaml
|
||||
|
||||
EXPOSE 8642
|
||||
|
||||
USER daena
|
||||
ENTRYPOINT ["daena-serve"]
|
||||
Reference in New Issue
Block a user