4 Commits

Author SHA1 Message Date
Ran Shem Tov d07c058b33 chore(strands): drop langgraph naming from docker smoke stack
Previous commit wired LANGGRAPH_DEPLOYMENT_URL into the strands route.ts
to satisfy the verbatim langgraph-python docker-compose.test.yml — that
leaks the wrong runtime's name into a strands-only file.

Instead, mark docker-compose.test.yml as allowed-divergence for strands
(parity manifest) and give strands its own compose stack:
  - agent on port 8000 (matches `npm run dev:agent` locally)
  - healthcheck on /health (already exposed by main.py)
  - app reads AGENT_URL (strands-native), no LANGGRAPH_DEPLOYMENT_URL

Reverts:
  - Dockerfile.agent: EXPOSE/uvicorn back to 8000
  - main.py: drop the /ok endpoint added in 2994b3a96
  - route.ts: drop the LANGGRAPH_DEPLOYMENT_URL fallback

Keeps:
  - Dockerfile.agent: COPY src/ ./src/ (needed for db.csv + a2ui schemas)
2026-05-19 11:06:47 -05:00
Ran Shem Tov 4341880dec chore(strands): align agent with verbatim docker smoke stack
The smoke-test docker-compose.test.yml is a verbatim copy of the canonical
langgraph-python stack, which expects:
  - agent listening on port 8123
  - readiness probe at /ok
  - app reading LANGGRAPH_DEPLOYMENT_URL for the agent URL

Bring the strands agent in line:
  - Dockerfile.agent: COPY src/ so main.py can find db.csv +
    a2ui/schemas/flight_schema.json; expose 8123 and bind uvicorn to it
  - main.py: add /ok alongside existing /health endpoint
  - route.ts: read LANGGRAPH_DEPLOYMENT_URL as a fallback so the verbatim
    compose env wires through; AGENT_URL / STRANDS_AGENT_URL still win
    for local dev overrides
2026-05-19 11:06:47 -05:00
Jordan Ritter 0d9ead7556 fix(starters): replace curl|sh uv install with COPY from uv image
Replace `RUN curl -LsSf https://astral.sh/uv/install.sh | sh` across all
starter Dockerfiles with `COPY --from=ghcr.io/astral-sh/uv:latest /uv /uvx
/usr/local/bin/`. The curl|sh form has a pipe-swallow latent bug: when
astral.sh returns a 5xx, curl fails but `sh` gets no stdin and exits 0,
so the layer "succeeds" with no uv binary. A later `RUN uv sync` then
crashes with `uv: not found` (exit 127). This already bit the agno
starter today (run 24809910399) when astral.sh had a transient outage;
upstream recovered on its own so this is latent-bug cleanup, not a
hotfix.

Using the official uv image is uv's own recommended pattern: it's
cache-friendly, network-free at build time, and sidesteps the pipe
failure mode entirely.

Scope: all 20 Dockerfiles under examples/integrations/*/Dockerfile,
examples/integrations/*/docker/Dockerfile.agent, and
examples/showcases/scene-creator/agent/Dockerfile.

Verified locally: `docker build -f docker/Dockerfile.agent ./agent`
for agno succeeds against the new pattern.
2026-04-22 17:44:02 -07:00
Jordan Ritter 7ddc0d8b2e feat: add Docker test infrastructure for all 12 starters 2026-04-09 08:33:21 -07:00