diff --git a/eng/pipelines/cdac/prepare-cdac-helix-steps.yml b/eng/pipelines/cdac/prepare-cdac-helix-steps.yml index 1661d4eb2d1198..ce8e01605987ae 100644 --- a/eng/pipelines/cdac/prepare-cdac-helix-steps.yml +++ b/eng/pipelines/cdac/prepare-cdac-helix-steps.yml @@ -38,9 +38,11 @@ steps: $queue = switch ("$(osGroup)_$(archType)") { "windows_x64" { "$(helix_windows_x64)" } + "windows_x86" { "$(helix_windows_x64)" } "windows_arm64" { "$(helix_windows_arm64)" } "linux_x64" { "$(helix_linux_x64_oldest)" } "linux_arm64" { "$(helix_linux_arm64_oldest)" } + "linux_arm" { "$(helix_linux_arm32_oldest)" } "osx_x64" { "$(helix_macos_x64)" } "osx_arm64" { "$(helix_macos_arm64)" } default { Write-Error "Unsupported platform: $(osGroup)_$(archType)"; exit 1 } diff --git a/eng/pipelines/runtime-diagnostics.yml b/eng/pipelines/runtime-diagnostics.yml index 745b0237df9c77..bf55b91ac49bc5 100644 --- a/eng/pipelines/runtime-diagnostics.yml +++ b/eng/pipelines/runtime-diagnostics.yml @@ -10,9 +10,11 @@ parameters: type: object default: - windows_x64 + - windows_x86 - linux_x64 - windows_arm64 - linux_arm64 + - linux_arm # TODO: Re-enable osx once disk space issue is resolved. # macOS full dumps are ~5.7GB each; with 8+ full-dump debuggees the Helix # machines run out of disk space (~45GB total). See PR #124782 for details. @@ -221,6 +223,13 @@ extends: _Creator: dotnet-bot SYSTEM_ACCESSTOKEN: $(System.AccessToken) NUGET_PACKAGES: $(Build.SourcesDirectory)$(dir).packages + - task: PublishPipelineArtifact@1 + inputs: + targetPath: $(Build.SourcesDirectory)/artifacts/helixresults + artifactName: CdacDumps_$(osGroup)_$(archType) + displayName: 'Publish Dump Artifacts' + condition: and(always(), ne(variables['Agent.JobStatus'], 'Succeeded')) + continueOnError: true - pwsh: | if ("$(Agent.JobStatus)" -ne "Succeeded") { Write-Error "One or more cDAC dump test failures were detected. Failing the job." diff --git a/src/native/managed/cdac/tests/DumpTests/DumpTests.targets b/src/native/managed/cdac/tests/DumpTests/DumpTests.targets index 5ee2d6b3b0db04..55a35856f398f4 100644 --- a/src/native/managed/cdac/tests/DumpTests/DumpTests.targets +++ b/src/native/managed/cdac/tests/DumpTests/DumpTests.targets @@ -62,21 +62,22 @@ - + - This is opt-in via /p:SetDisableAuxProviderSignatureCheck=true to avoid surprising - machine-wide registry changes during a normal build. + - - + + + diff --git a/src/native/managed/cdac/tests/DumpTests/EnableUnsignedDac.props b/src/native/managed/cdac/tests/DumpTests/EnableUnsignedDac.props new file mode 100644 index 00000000000000..7113634e8667d7 --- /dev/null +++ b/src/native/managed/cdac/tests/DumpTests/EnableUnsignedDac.props @@ -0,0 +1,19 @@ + + + + + + HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\MiniDumpSettings + reg add "$(DacRegKey)" /v DisableAuxProviderSignatureCheck /t REG_DWORD /d 1 /f + $(DacRegAdd) /reg:32 + + + diff --git a/src/native/managed/cdac/tests/DumpTests/cdac-dump-helix.proj b/src/native/managed/cdac/tests/DumpTests/cdac-dump-helix.proj index 9b89de9084d17e..9def584915c05e 100644 --- a/src/native/managed/cdac/tests/DumpTests/cdac-dump-helix.proj +++ b/src/native/managed/cdac/tests/DumpTests/cdac-dump-helix.proj @@ -63,6 +63,7 @@ derived from each debuggee's DumpTypes property (Heap->heap/2, Full->full/4). --> + <_TestCommand>%HELIX_CORRELATION_PAYLOAD%\dotnet.exe exec --runtimeconfig %HELIX_WORKITEM_PAYLOAD%\tests\Microsoft.Diagnostics.DataContractReader.DumpTests.runtimeconfig.json --depsfile %HELIX_WORKITEM_PAYLOAD%\tests\Microsoft.Diagnostics.DataContractReader.DumpTests.deps.json %HELIX_WORKITEM_PAYLOAD%\tests\xunit.console.dll %HELIX_WORKITEM_PAYLOAD%\tests\Microsoft.Diagnostics.DataContractReader.DumpTests.dll -xml testResults.xml -nologo - <_FullCommand>$(_DumpGenCommands) & $(_DumpInfoCommand) & $(_TestCommand) + <_TarCommand>tar -czf %HELIX_WORKITEM_UPLOAD_ROOT%\dumps.tar.gz -C %HELIX_WORKITEM_PAYLOAD%\dumps . + <_FullCommand>$(_DumpGenCommands) & $(_DumpInfoCommand) & $(_TestCommand) & if errorlevel 1 set _FAIL=1 & $(_TarCommand) & if defined _FAIL exit /b 1 @@ -101,7 +103,8 @@ <_TestCommand>$HELIX_CORRELATION_PAYLOAD/dotnet exec --runtimeconfig $HELIX_WORKITEM_PAYLOAD/tests/Microsoft.Diagnostics.DataContractReader.DumpTests.runtimeconfig.json --depsfile $HELIX_WORKITEM_PAYLOAD/tests/Microsoft.Diagnostics.DataContractReader.DumpTests.deps.json $HELIX_WORKITEM_PAYLOAD/tests/xunit.console.dll $HELIX_WORKITEM_PAYLOAD/tests/Microsoft.Diagnostics.DataContractReader.DumpTests.dll -xml testResults.xml -nologo - <_FullCommand>$(_DumpGenCommands) && $(_DumpInfoCommand) && $(_TestCommand) + <_TarCommand>tar -czf $HELIX_WORKITEM_UPLOAD_ROOT/dumps.tar.gz -C $HELIX_WORKITEM_PAYLOAD/dumps . + <_FullCommand>$(_DumpGenCommands) && $(_DumpInfoCommand) && $(_TestCommand); _rc=$?; $(_TarCommand); exit $_rc @@ -113,7 +116,9 @@ - + + + @@ -133,12 +138,13 @@ @(HelixPreCommand) - + $(DumpTestsPayload) $(_FullCommand) $(WorkItemTimeout) + dumps.tar.gz