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/helix-platforms.yml b/eng/pipelines/helix-platforms.yml index e1ddcef6681bd8..3eacd890f6bc49 100644 --- a/eng/pipelines/helix-platforms.yml +++ b/eng/pipelines/helix-platforms.yml @@ -257,6 +257,10 @@ variables: - name: helix_windows_arm64_oldest_internal value: Windows.10.Arm64 + # Windows x86 (runs on x64 machines via WoW64) + - name: helix_windows_x86 + value: Windows.10.Amd64.Open + # =========================================== # Browser/WASM Platforms # =========================================== diff --git a/eng/pipelines/runtime-diagnostics.yml b/eng/pipelines/runtime-diagnostics.yml index ceed70726cd270..87f93adfb62a85 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. @@ -216,11 +218,18 @@ extends: - template: /eng/pipelines/common/templates/runtimes/send-to-helix-inner-step.yml parameters: displayName: 'Send cDAC Dump Tests to Helix' - sendParams: $(Build.SourcesDirectory)/src/native/managed/cdac/tests/DumpTests/cdac-dump-helix.proj /t:Test /p:TargetOS=$(osGroup) /p:TargetArchitecture=$(archType) /p:HelixTargetQueues=$(CdacHelixQueue) /p:TestHostPayload=$(TestHostPayloadDir) /p:DumpTestsPayload=$(Build.SourcesDirectory)/artifacts/helixPayload/cdac /bl:$(Build.SourcesDirectory)/artifacts/log/SendToHelix.binlog + sendParams: $(Build.SourcesDirectory)/src/native/managed/cdac/tests/DumpTests/cdac-dump-helix.proj /t:Test /p:TargetOS=$(osGroup) /p:TargetArchitecture=$(archType) "/p:HelixTargetQueues=$(CdacHelixQueue)" /p:TestHostPayload=$(TestHostPayloadDir) /p:DumpTestsPayload=$(Build.SourcesDirectory)/artifacts/helixPayload/cdac /bl:$(Build.SourcesDirectory)/artifacts/log/SendToHelix.binlog environment: _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." @@ -253,7 +262,7 @@ extends: - template: /eng/pipelines/common/templates/runtimes/send-to-helix-inner-step.yml parameters: displayName: 'Send cDAC Dump Gen to Helix' - sendParams: $(Build.SourcesDirectory)/src/native/managed/cdac/tests/DumpTests/cdac-dump-helix.proj /t:Test /p:DumpOnly=true /p:TargetOS=$(osGroup) /p:TargetArchitecture=$(archType) /p:HelixTargetQueues=$(CdacHelixQueue) /p:TestHostPayload=$(TestHostPayloadDir) /p:DumpTestsPayload=$(Build.SourcesDirectory)/artifacts/helixPayload/cdac /bl:$(Build.SourcesDirectory)/artifacts/log/SendDumpGenToHelix.binlog + sendParams: $(Build.SourcesDirectory)/src/native/managed/cdac/tests/DumpTests/cdac-dump-helix.proj /t:Test /p:DumpOnly=true /p:TargetOS=$(osGroup) /p:TargetArchitecture=$(archType) "/p:HelixTargetQueues=$(CdacHelixQueue)" /p:TestHostPayload=$(TestHostPayloadDir) /p:DumpTestsPayload=$(Build.SourcesDirectory)/artifacts/helixPayload/cdac /bl:$(Build.SourcesDirectory)/artifacts/log/SendDumpGenToHelix.binlog environment: _Creator: dotnet-bot SYSTEM_ACCESSTOKEN: $(System.AccessToken) @@ -329,7 +338,7 @@ extends: - template: /eng/pipelines/common/templates/runtimes/send-to-helix-inner-step.yml parameters: displayName: 'Send cDAC X-Plat Dump Tests to Helix' - sendParams: $(Build.SourcesDirectory)/src/native/managed/cdac/tests/DumpTests/cdac-dump-xplat-test-helix.proj /t:Test /p:TargetOS=$(osGroup) /p:TargetArchitecture=$(archType) /p:HelixTargetQueues=$(CdacHelixQueue) /p:TestHostPayload=$(TestHostPayloadDir) /p:DumpTestsPayload=$(Build.SourcesDirectory)/artifacts/helixPayload/cdac /bl:$(Build.SourcesDirectory)/artifacts/log/SendXPlatTestToHelix.binlog + sendParams: $(Build.SourcesDirectory)/src/native/managed/cdac/tests/DumpTests/cdac-dump-xplat-test-helix.proj /t:Test /p:TargetOS=$(osGroup) /p:TargetArchitecture=$(archType) "/p:HelixTargetQueues=$(CdacHelixQueue)" /p:TestHostPayload=$(TestHostPayloadDir) /p:DumpTestsPayload=$(Build.SourcesDirectory)/artifacts/helixPayload/cdac /bl:$(Build.SourcesDirectory)/artifacts/log/SendXPlatTestToHelix.binlog environment: _Creator: dotnet-bot SYSTEM_ACCESSTOKEN: $(System.AccessToken) diff --git a/src/native/managed/cdac/tests/DumpTests/DumpTests.targets b/src/native/managed/cdac/tests/DumpTests/DumpTests.targets index 5ee2d6b3b0db04..3962b1f38d1f69 100644 --- a/src/native/managed/cdac/tests/DumpTests/DumpTests.targets +++ b/src/native/managed/cdac/tests/DumpTests/DumpTests.targets @@ -62,23 +62,8 @@ - - - - - + + 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..2ebdfd8a95da5c --- /dev/null +++ b/src/native/managed/cdac/tests/DumpTests/EnableUnsignedDac.props @@ -0,0 +1,33 @@ + + + + + + <_DacRegKey>HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\MiniDumpSettings + <_DacRegAdd>reg add "$(_DacRegKey)" /v DisableAuxProviderSignatureCheck /t REG_DWORD /d 1 /f + <_DacRegAdd32>$(_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..8254b909449ae6 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) & $(_TarCommand) @@ -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) ; $(_TarCommand) @@ -113,7 +116,9 @@ - + + + @@ -133,12 +138,13 @@ @(HelixPreCommand) - + $(DumpTestsPayload) $(_FullCommand) $(WorkItemTimeout) + dumps.tar.gz