Repository navigation
Migration/step 07a - #9
Merged
Merged
Conversation
…ectly (R1) Point api's and query-tool's compose files at ../../stack and ../../examples instead of the recipes and neurobagel_examples symlinks, remove the recipes symlinks, and add the init_data service and neurobagel_data volume missing from query-tool's test profile. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…st profile stack/local_nb_nodes.json is git-ignored and does not exist, so docker compose created an empty directory and the federation API saw no local node. The committed template defines the profile's own api service. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
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.
Title:
chore(migration): step 07a compose files use stack/ and examples/ directly (R1)Branch:
migration/step-07aCan be squash-merged or merged; it imports no history.
Summary
tools/api/docker-compose.ymlandtools/query-tool/docker-compose.yml:extends.filechanged fromrecipes/docker-compose.ymlto../../stack/docker-compose.yml, bind mounts from./recipes/...to../../stack/...and from./neurobagel_examples/...to../../examples/..., secret files from./recipes/secrets/...to../../stack/secrets/....tools/api/recipesandtools/query-tool/recipesdeleted. Theneurobagel_examplessymlinks stay (test code imports through them; R6 not approved).testprofile fixed (maintainer decision in Step 5): newinit_dataservice extending the stack's, with thetestprofile,../../examples/data-upload/pheno-bids-derivatives-outputas/input_dataand theneurobagel_datavolume as/data;neurobagel_datadeclared undervolumes:(the extendedapiservice mounts it). The federation API now mounts the committedstack/local_nb_nodes.template.json(one local node,http://api:8000, the profile's own node API) instead of the git-ignored, non-existentstack/local_nb_nodes.json(maintainer decision).stack//examples/paths; query-tool's known-issue note replaced by the working commands, the readiness log line, anddown -v. Root README: R1 row.Checks run
find tools -maxdepth 2 -name recipesdocker compose configintools/apirecipesdocker compose --profile test configintools/query-toolrecipes; every bind mount and secret resolves insidestack/orexamples/just test api)docker compose --profile test up -dintools/query-toolinit_dataexits 0;api,graph,federationup; graph log reachesFinished setting up the Neurobagel graph backend.(~21 s); node APIGET /200 andPOST /datasets200; federation APIGET /200,/nodeslistsLocal graph 1(http://api:8000/), andPOST /datasetsfederated to it returnsnodes_response_status: successwith no errors; nostack/local_nb_nodes.jsondirectory is createdscripts/check-unchanged.shOKmkdocs build --strictformat:checkand codespell (cover the edited compose file and README)just lintDocumentation check: in a fresh clone of this branch, run verbatim in bash: query-tool
docker compose --profile test pull && docker compose --profile test up -d(OK, graph ready in 21 s, ports 8000 and 8080 answer 200),docker compose --profile test down -v; apidocker compose up -d test_graph export_datasets_metadata,uv run pytest -m "integration or not integration"(188 passed),docker compose down -v.Deviations and findings
init_datafix needed one more piece than the plan named: theneurobagel_datavolume declaration. Plan updated.federationservice mounted../../stack/local_nb_nodes.json, which does not exist (git-ignored in recipes; upstream's submodule had none either), so docker compose created an empty directory and the federation API logged "No local Neurobagel nodes defined" and used only public nodes. It now mounts the committed template, so the test profile federates over its own node API.🤖 Generated with Claude Code