Add DacMode-based SOS test legs to runtime-diagnostics pipeline by max-charlamb · Pull Request #129859 · dotnet/runtime · GitHub
Skip to content

Add DacMode-based SOS test legs to runtime-diagnostics pipeline#129859

Open
max-charlamb wants to merge 1 commit into
dotnet:mainfrom
max-charlamb:runtime-sos-cdac-legs
Open

Add DacMode-based SOS test legs to runtime-diagnostics pipeline#129859
max-charlamb wants to merge 1 commit into
dotnet:mainfrom
max-charlamb:runtime-sos-cdac-legs

Conversation

@max-charlamb

@max-charlamb max-charlamb commented Jun 25, 2026

Copy link
Copy Markdown
Member

Replaces the useCdac/noFallback booleans in the SOS test legs with a single dacMode parameter and adds a 4th leg. The shared windows_x64 build now uploads the freshly built cDAC (mscordaccore_universal) as a separate artifact for the cdac leg to consume.

SOS legs (windows_x64 Release, testInterpreter):

  • cDAC -- dacMode cdac -- standalone cDAC via SOS (downloads + overlays the built cDAC next to sos.dll)
  • cDAC_fallback -- dacMode cdacfallback -- in-box DAC hosts cDAC, with fallback
  • cDAC_verify -- dacMode cdacverify -- in-box DAC hosts cDAC, no fallback (verifies)
  • DAC -- dacMode dac -- legacy DAC only

Depends on the DacMode support added in dotnet/diagnostics#5901. To exercise it before that merges, queue runtime-diagnostics with diagnosticsBranch pointing at the diagnostics PR's merge ref.

Sample run: https://dev.azure.com/dnceng-public/public/_build/results?buildId=1481626&view=logs&j=d359ac0d-403b-5f4f-9a78-93671d33ea9d

Replace the useCdac/noFallback booleans with a single dacMode parameter and add
a 4th SOS leg. The shared windows_x64 build now uploads the freshly built cDAC
(mscordaccore_universal) as a separate artifact for the cdac leg to consume.

Legs (windows_x64 Release, testInterpreter):
  cDAC          dacMode cdac          standalone cDAC via SOS (downloads+overlays the built cDAC)
  cDAC_fallback dacMode cdacfallback  in-box DAC hosts cDAC, with fallback
  cDAC_verify   dacMode cdacverify    in-box DAC hosts cDAC, no fallback (verifies)
  DAC           dacMode dac           legacy DAC only

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Updates the runtime-diagnostics Azure DevOps pipeline SOS test legs to use a single dacMode selector (instead of useCdac/noFallback), adds an additional SOS leg, and wires up publishing/downloading the freshly-built standalone cDAC so the cdac leg can exercise the runtime-under-test’s own mscordaccore_universal.

Changes:

  • Replace useCdac/noFallback booleans with a single dacMode string parameter through the SOS leg templates.
  • Add a 4th SOS leg (cDAC_verify) and adjust existing leg naming/modes (cDAC_fallback, DAC).
  • Publish the built mscordaccore_universal output as a separate artifact and download it only for the dacMode: cdac leg.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.

File Description
eng/pipelines/runtime-diagnostics.yml Adds the 4th SOS leg, switches legs to dacMode, and uploads the built cDAC as a dedicated artifact.
eng/pipelines/diagnostics/sos-test-leg.yml Replaces boolean toggles with dacMode and conditionally downloads the cDAC artifact for the cdac mode.
eng/pipelines/diagnostics/runtime-diag-job.yml Maps dacMode to the corresponding -dacMode / -cdacPath arguments passed to the diagnostics build/test harness.

Comment thread eng/pipelines/runtime-diagnostics.yml
Comment thread eng/pipelines/runtime-diagnostics.yml
@max-charlamb max-charlamb marked this pull request as ready for review June 25, 2026 18:41
@max-charlamb max-charlamb requested a review from hoyosjs June 25, 2026 20:09
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants