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:
ahp
2026-07-15 11:31:12 +03:30
parent 4da9accabf
commit 782a193667
5 changed files with 500 additions and 18 deletions
+27
View File
@@ -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"]