Repository navigation
node-repo-module-pack: publish with the same reference set as the build (-p:MeshWeaverRefs) - #2715
Conversation
…ld (-p:MeshWeaverRefs) `dotnet publish --no-build` re-evaluates the project. With platform-image inputs the BUILD drops the platform ProjectReferences in favour of the image's assemblies (Directory.PlatformRefs.targets, Plugins #926), but the publish step did not pass -p:MeshWeaverRefs, so the references came back and publish copied their outputs — which the build had never produced: "MSB3030: Could not copy meshweaver/src/MeshWeaver.Graph/bin/Release/net10.0/MeshWeaver.Graph.dll" (Plugins #940, run 33288360783, every module that publishes). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
Ensures the node-repo-module-pack workflow publishes modules using the same platform reference set as the earlier build step when platform-image/platform-image-digest is provided, preventing dotnet publish --no-build from reintroducing dropped ProjectReferences and failing on missing outputs.
Changes:
- Pass
-p:MeshWeaverRefs=$REFSto thedotnet publishstep, matching thedotnet buildstep’s reference set. - Add the
REFSenvironment setup to the publish step, keyed offinputs.platform-image-digest.
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Test Results (shard 3)693 tests 501 ✅ 4m 28s ⏱️ Results for commit 23731e3. |
Test Results (shard 5)1 528 tests 1 528 ✅ 5m 35s ⏱️ Results for commit 23731e3. |
Test Results (shard 2)941 tests 941 ✅ 5m 13s ⏱️ Results for commit 23731e3. |
Test Results (shard 0)913 tests 913 ✅ 5m 19s ⏱️ Results for commit 23731e3. |
Test Results (shard 4) 10 files 10 suites 6m 13s ⏱️ Results for commit 23731e3. |
Test Results (shard 1)818 tests 814 ✅ 7m 48s ⏱️ Results for commit 23731e3. |
Test Results 41 files 41 suites 34m 39s ⏱️ Results for commit 23731e3. |
Why
With
platform-image/platform-image-digestset, the build step drops the platformProjectReferences in favour of the image's/appassemblies (-p:MeshWeaverRefs, Plugins #926'sDirectory.PlatformRefs.targets). The publish step (dotnet publish --no-build) re-evaluates the project without that property, so the references come back and publish copies their outputs — which were never built:Plugins #940, run 33288360783 — every module that reached publish.
What
The publish step gets the same
REFSenv and${REFS:+-p:MeshWeaverRefs=$REFS}as the build step. No-op for callers that pass no platform image.🤖 Generated with Claude Code