refactor(agentgateway-mcp): build only from this lab's own directory - #10
Open
JonZeolla wants to merge 1 commit into
Open
refactor(agentgateway-mcp): build only from this lab's own directory#10JonZeolla wants to merge 1 commit into
JonZeolla wants to merge 1 commit into
Conversation
The compose file built its `mcp-get-started` service from `context: ../mcp-get-started`, so editing that lab changed what this one runs. It had already drifted: the other lab's Dockerfile grew a HEALTHCHECK, which puts a health status in the `docker compose ps` STATUS column this workshop shows. Ship this lab's own `server.py` and a Dockerfile for it, and give tickets an explicitly named one. Every lab now builds from its own directory, so a reader can clone one lab and have everything it needs. Ran 01-passthrough, 03-multiplexed and 04-controlled end to end: image names, `docker compose ps`, the tool listings and the refusal all match the captured output in the workshop unchanged. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Y5qAfTpr6kEW1Yo4WqGor9
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
What
labs/agentgateway-mcp/compose.yamlbuilt itsmcp-get-startedservice fromcontext: ../mcp-get-started. Editing the mcp-get-started lab therefore changed what the agentgateway lab runs, and a reader could not clone one lab on its own.This lab now ships its own
server.pyandDockerfile.get-started, andDockerfileis renamed to the explicitDockerfile.tickets. Both services build fromcontext: ..Why
The two labs had already drifted. mcp-get-started's Dockerfile grew a
HEALTHCHECKfordocker compose up --wait; the agentgateway lab does not use--wait, and the healthcheck puts a health status in thedocker compose psSTATUS column that workshop shows, so its captured output no longer matched what a reader saw.The copy is deliberate and is commented as such in
compose.yaml. Independence between labs is worth one duplicated 30-line file.Testing
Ran the stack end to end on this branch:
docker compose up -d --buildthendocker compose ps— image names (agentgateway-mcp-mcp-get-started,agentgateway-mcp-tickets), COMMAND and STATUS columns match the workshop's captured output exactly.01-passthrough.yaml—client.pylistsaddandshout;add 20260825 101 -> 20260926.03-multiplexed.yaml— all four prefixed tools list;tickets_list_ticketsreturns both tickets.04-controlled.yaml—tickets_close_ticketabsent from the listing and refused with 400 when called by name.docker compose downclean.No workshop prose or captured output needs to change for this.
🤖 Generated with Claude Code
https://claude.ai/code/session_01Y5qAfTpr6kEW1Yo4WqGor9
PR Description from Zenable
Makes the
agentgateway-mcplab fully self-contained by copyingserver.pyand adding a newDockerfile.get-startedlocally, rather than building from../mcp-get-started. The existingDockerfileis renamed toDockerfile.tickets, and both services incompose.yamlnow build fromcontext: ..mcp-get-startedgained aHEALTHCHECKthat pollutesdocker compose psSTATUS output in the workshop's captured screenshotscompose.yaml; lab independence is worth one duplicated 30-line file