diff --git a/eng/pipelines/coreclr/hardware-intrinsics.yml b/eng/pipelines/coreclr/hardware-intrinsics.yml index b54f33da29e830..83e1842b9a1e86 100644 --- a/eng/pipelines/coreclr/hardware-intrinsics.yml +++ b/eng/pipelines/coreclr/hardware-intrinsics.yml @@ -1,14 +1,16 @@ trigger: none -pr: - branches: - include: - - main - paths: - include: - - eng/pipelines/** - - src/coreclr/jit/** - - src/tests/Common/GenerateHWIntrinsicTests/** - - src/tests/JIT/HardwareIntrinsics/** +# TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) +pr: none +# pr: +# branches: +# include: +# - main +# paths: +# include: +# - eng/pipelines/** +# - src/coreclr/jit/** +# - src/tests/Common/GenerateHWIntrinsicTests/** +# - src/tests/JIT/HardwareIntrinsics/** variables: - template: /eng/pipelines/common/variables.yml diff --git a/eng/pipelines/global-build.yml b/eng/pipelines/global-build.yml index f1a62719914144..5f00eae749a923 100644 --- a/eng/pipelines/global-build.yml +++ b/eng/pipelines/global-build.yml @@ -4,25 +4,27 @@ trigger: none -pr: - branches: - include: - - main - - release/*.* - paths: - include: - - '*' - - eng/pipelines/global-build.yml - exclude: - - '**.md' - - .devcontainer/* - - .github/* - - docs/* - - eng/pipelines/coreclr/*.* - - eng/pipelines/libraries/*.* - - eng/pipelines/installer/*.* - - PATENTS.TXT - - THIRD-PARTY-NOTICES.TXT +# TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) +pr: none +# pr: +# branches: +# include: +# - main +# - release/*.* +# paths: +# include: +# - '*' +# - eng/pipelines/global-build.yml +# exclude: +# - '**.md' +# - .devcontainer/* +# - .github/* +# - docs/* +# - eng/pipelines/coreclr/*.* +# - eng/pipelines/libraries/*.* +# - eng/pipelines/installer/*.* +# - PATENTS.TXT +# - THIRD-PARTY-NOTICES.TXT variables: - template: /eng/pipelines/common/variables.yml diff --git a/eng/pipelines/runtime-diagnostics.yml b/eng/pipelines/runtime-diagnostics.yml index 3fde402abd2009..26a73eca7011b2 100644 --- a/eng/pipelines/runtime-diagnostics.yml +++ b/eng/pipelines/runtime-diagnostics.yml @@ -25,15 +25,17 @@ schedules: - main always: true -pr: - branches: - include: - - main - paths: - include: - - eng/pipelines/** - - src/native/managed/cdac/** - - src/coreclr/debug/runtimeinfo/** +# TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) +pr: none +# pr: +# branches: +# include: +# - main +# paths: +# include: +# - eng/pipelines/** +# - src/native/managed/cdac/** +# - src/coreclr/debug/runtimeinfo/** extends: template: /eng/pipelines/common/templates/pipeline-with-resources.yml diff --git a/eng/pipelines/runtime-linker-tests.yml b/eng/pipelines/runtime-linker-tests.yml index e5fe67fbc0b595..e9a06cfebb0832 100644 --- a/eng/pipelines/runtime-linker-tests.yml +++ b/eng/pipelines/runtime-linker-tests.yml @@ -29,23 +29,25 @@ schedules: - main always: false # run only if there were changes since the last successful scheduled run. -pr: - branches: - include: - - main - - release/*.* - paths: - include: - - '*' - exclude: - - '**.md' - - eng/Version.Details.xml - - .devcontainer/* - - .github/* - - docs/* - - LICENSE.TXT - - PATENTS.TXT - - THIRD-PARTY-NOTICES.TXT +# TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) +pr: none +# pr: +# branches: +# include: +# - main +# - release/*.* +# paths: +# include: +# - '*' +# exclude: +# - '**.md' +# - eng/Version.Details.xml +# - .devcontainer/* +# - .github/* +# - docs/* +# - LICENSE.TXT +# - PATENTS.TXT +# - THIRD-PARTY-NOTICES.TXT variables: - template: /eng/pipelines/common/variables.yml diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml index 6acc029e186a13..e7a997ab35b651 100644 --- a/eng/pipelines/runtime.yml +++ b/eng/pipelines/runtime.yml @@ -82,10 +82,8 @@ extends: nameSuffix: AllSubsets_CoreCLR_ReleaseRuntimeLibs buildArgs: -s clr+libs+host+packs -rc Release -lc Release -c $(_BuildConfig) timeoutInMinutes: 120 - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_non_mono_and_wasm.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false - template: /eng/pipelines/common/platform-matrix.yml parameters: @@ -98,10 +96,8 @@ extends: nameSuffix: AllSubsets_CoreCLR buildArgs: -s clr+libs+host+packs -rc Release -c Release -lc $(_BuildConfig) timeoutInMinutes: 120 - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_non_mono_and_wasm.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # Release build of browser wasm for WBT - template: /eng/pipelines/common/platform-matrix.yml @@ -125,12 +121,8 @@ extends: parameters: testGroup: innerloop liveLibrariesBuildConfig: Release - condition: >- - or( - eq(variables['wasmDarcDependenciesChanged'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_wasm_coreclr_runtimetests.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false - template: /eng/pipelines/common/platform-matrix.yml parameters: @@ -175,12 +167,8 @@ extends: - template: /eng/pipelines/common/templates/runtimes/native-test-assets-variables.yml parameters: testGroup: innerloop - condition: >- - or( - eq(variables['wasmDarcDependenciesChanged'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_wasm_coreclr_runtimetests.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false - template: /eng/pipelines/common/platform-matrix.yml parameters: @@ -219,16 +207,14 @@ extends: parameters: testGroup: innerloop liveLibrariesBuildConfig: Release - condition: >- - or( - eq(variables['wasmDarcDependenciesChanged'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_wasm_coreclr_runtimetests.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # Browser Wasm.Build.Tests - template: /eng/pipelines/common/templates/browser-wasm-coreclr-build-tests.yml parameters: + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false platforms: - browser_wasm - browser_wasm_win @@ -270,11 +256,8 @@ extends: archiveExtension: $(archiveExtension) tarCompression: $(tarCompression) artifactName: CoreCLR_Libraries_TestArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(_BuildConfig) - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_non_mono_and_wasm.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false - template: /eng/pipelines/common/platform-matrix.yml parameters: @@ -304,11 +287,8 @@ extends: archiveExtension: $(archiveExtension) tarCompression: $(tarCompression) artifactName: CoreCLR_Libraries_TestArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(_BuildConfig) - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_non_mono_and_wasm.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # # Build CoreCLR and Libraries @@ -334,11 +314,8 @@ extends: tarCompression: $(tarCompression) artifactName: CoreCLR_Libraries_BuildArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(_BuildConfig) displayName: Build Assets - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_non_mono_and_wasm.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # # Build CoreCLR and Libraries with the respective tests @@ -350,7 +327,6 @@ extends: buildConfig: ${{ variables.debugOnPrReleaseOnRolling }} platforms: - linux_arm64 - - osx_arm64 jobParameters: nameSuffix: Libraries_CheckedCoreCLR buildArgs: -s clr+libs+libs.tests -c $(_BuildConfig) -rc Checked /p:ArchiveTests=true @@ -391,8 +367,8 @@ extends: jobTemplate: /eng/pipelines/common/global-build-job.yml buildConfig: ${{ variables.debugOnPrReleaseOnRolling }} platforms: + # TEMPORARY: narrowed to linux_x64 only for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442), was also windows_x64 - linux_x64 - - windows_x64 jobParameters: nameSuffix: Libraries_CheckedCoreCLR buildArgs: -s clr+clr.wasmjit+libs -c $(_BuildConfig) -rc Checked @@ -448,10 +424,8 @@ extends: archiveExtension: $(archiveExtension) tarCompression: $(tarCompression) artifactName: Libraries_CheckedCoreCLR_TestArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(_BuildConfig) - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false - template: /eng/pipelines/common/platform-matrix.yml parameters: @@ -479,11 +453,8 @@ extends: parameters: testGroup: innerloop configOverride: Checked - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false - template: /eng/pipelines/common/platform-matrix.yml parameters: @@ -512,11 +483,8 @@ extends: - template: /eng/pipelines/common/templates/runtimes/native-test-assets-variables.yml parameters: testGroup: innerloop - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false - template: /eng/pipelines/common/platform-matrix.yml parameters: @@ -549,10 +517,8 @@ extends: archiveExtension: $(archiveExtension) tarCompression: $(tarCompression) artifactName: CoreCLR_ReleaseLibraries_TestArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(_BuildConfig) - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # # Build the whole product using GNU compiler toolchain @@ -572,14 +538,8 @@ extends: - template: /eng/pipelines/common/templates/runtimes/build-runtime-tests.yml parameters: testBuildArgs: skipmanaged skipgeneratelayout skiprestorepackages -gcc - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # # Build CoreCLR and run crossgen on S.P.CoreLib @@ -597,10 +557,8 @@ extends: nameSuffix: CoreCLR buildArgs: -s clr.runtime+clr.jit+clr.iltools+clr.spmi+clr.corelib+clr.nativecorelib -c $(_BuildConfig) timeoutInMinutes: 120 - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # # Build CoreCLR as a non-portable build @@ -618,10 +576,8 @@ extends: nameSuffix: CoreCLR_NonPortable buildArgs: -s clr.native+clr.tools+clr.corelib+clr.nativecorelib+clr.aot+clr.packages --targetrid tizen.9.0.0-armel -c $(_BuildConfig) /p:PortableBuild=false timeoutInMinutes: 120 - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # # Build CoreCLR + Libs + Host @@ -641,11 +597,8 @@ extends: nameSuffix: CoreCLR_Bootstrapped buildArgs: -s clr+libs+host+packs+tools.cdac -c $(_BuildConfig) -rc Checked --bootstrap timeoutInMinutes: 120 - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # # CoreCLR NativeAOT debug build and smoke tests @@ -680,12 +633,8 @@ extends: parameters: testGroup: innerloop liveLibrariesBuildConfig: Release - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # # CoreCLR NativeAOT checked build and smoke tests @@ -719,12 +668,8 @@ extends: parameters: testGroup: innerloop liveLibrariesBuildConfig: Release - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # # CoreCLR NativeAOT release build and smoke tests @@ -763,12 +708,8 @@ extends: parameters: testGroup: innerloop liveLibrariesBuildConfig: Release - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # # CoreCLR NativeAOT release build and libraries tests @@ -795,12 +736,8 @@ extends: parameters: creator: dotnet-bot testRunNamePrefixSuffix: NativeAOT_$(_BuildConfig) - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # Build and test clr tools - template: /eng/pipelines/common/platform-matrix.yml @@ -816,12 +753,8 @@ extends: enablePublishTestResults: true testResultsFormat: 'xunit' # We want to run AOT tests when illink changes because there's share code and tests from illink which are used by AOT - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_cdac.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # # Build CrossDacs # @@ -843,10 +776,8 @@ extends: - publish: $(Build.SourcesDirectory)/artifacts/bin/coreclr displayName: Publish CrossDacs for diagnostics artifact: CoreCLRCrossDacArtifacts - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_non_mono_and_wasm.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # Build Mono AOT offset headers once, for validation # Only when mono changed @@ -883,11 +814,8 @@ extends: condition: failed() artifact: MonoAOTOffsets_$(osGroup)$(osSubGroup) displayName: Upload offset files - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # Build the whole product using Mono runtime # Only when libraries, mono or installer are changed @@ -906,12 +834,8 @@ extends: testGroup: innerloop nameSuffix: AllSubsets_Mono buildArgs: -s mono+libs+host+packs -c $(_BuildConfig) - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false - template: /eng/pipelines/common/platform-matrix.yml parameters: @@ -925,18 +849,16 @@ extends: testGroup: innerloop nameSuffix: AllSubsets_Mono buildArgs: -s mono+libs+host+packs -c $(_BuildConfig) - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # # WebAssembly legs # - template: /eng/pipelines/common/templates/wasm-library-tests.yml parameters: + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false platforms: - browser_wasm alwaysRun: ${{ variables.isRollingBuild }} @@ -947,6 +869,8 @@ extends: - template: /eng/pipelines/common/templates/wasm-library-tests.yml parameters: + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false platforms: - browser_wasm_win alwaysRun: ${{ variables.isRollingBuild }} @@ -957,6 +881,8 @@ extends: # WebAssembly CoreCLR - template: /eng/pipelines/common/templates/wasm-coreclr-library-tests.yml parameters: + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false platforms: - browser_wasm alwaysRun: ${{ variables.isRollingBuild }} @@ -969,6 +895,8 @@ extends: # EAT Library tests - only run on linux - template: /eng/pipelines/common/templates/wasm-library-aot-tests.yml parameters: + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false platforms: - browser_wasm nameSuffix: _EAT @@ -981,6 +909,8 @@ extends: # AOT Library tests - template: /eng/pipelines/common/templates/wasm-library-aot-tests.yml parameters: + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false platforms: - browser_wasm - browser_wasm_win @@ -997,7 +927,8 @@ extends: platforms: - browser_wasm - browser_wasm_win - condition: or(eq(variables.isRollingBuild, true), eq(variables.wasmSingleThreadedBuildOnlyNeededOnDefaultPipeline, true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false nameSuffix: SingleThreaded extraBuildArgs: /p:AotHostArchitecture=x64 /p:AotHostOS=$(_hostedOS) publishArtifactsForWorkload: true @@ -1008,7 +939,8 @@ extends: platforms: - browser_wasm - browser_wasm_win - condition: or(eq(variables.isRollingBuild, true), eq(variables.wasmSingleThreadedBuildOnlyNeededOnDefaultPipeline, true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false nameSuffix: MultiThreaded extraBuildArgs: /p:WasmEnableThreads=true /p:AotHostArchitecture=x64 /p:AotHostOS=$(_hostedOS) publishArtifactsForWorkload: true @@ -1017,6 +949,8 @@ extends: # Browser Wasm.Build.Tests - template: /eng/pipelines/common/templates/browser-wasm-build-tests.yml parameters: + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false platforms: - browser_wasm - browser_wasm_win @@ -1026,6 +960,8 @@ extends: # Wasm runtime tests - template: /eng/pipelines/common/templates/wasm-runtime-tests.yml parameters: + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false platforms: - browser_wasm alwaysRun: ${{ variables.isRollingBuild }} @@ -1039,7 +975,8 @@ extends: - wasi_wasm - wasi_wasm_win extraBuildArgs: /p:AotHostArchitecture=x64 /p:AotHostOS=$(_hostedOS) - condition: or(eq(variables.isRollingBuild, true), eq(variables.wasmSingleThreadedBuildOnlyNeededOnDefaultPipeline, true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false publishArtifactsForWorkload: false publishWBT: false @@ -1067,12 +1004,8 @@ extends: nameSuffix: AllSubsets_Mono_Smoke buildArgs: -s mono+libs+libs.tests+host+packs -c $(_BuildConfig) /p:ArchiveTests=true /p:RunSmokeTestsOnly=true /p:EnableAdditionalTimezoneChecks=true timeoutInMinutes: 120 - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # extra steps, run tests postBuildSteps: - template: /eng/pipelines/libraries/helix.yml @@ -1109,12 +1042,8 @@ extends: nameSuffix: AllSubsets_CoreCLR_Smoke buildArgs: -s clr.runtime+clr.alljits+clr.corelib+clr.nativecorelib+clr.tools+clr.packages+libs+libs.tests+host+packs -c $(_BuildConfig) /p:ArchiveTests=true /p:RunSmokeTestsOnly=true timeoutInMinutes: 180 - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # extra steps, run tests postBuildSteps: - template: /eng/pipelines/libraries/helix.yml @@ -1153,13 +1082,8 @@ extends: nameSuffix: AllSubsets_Mono_Smoke buildArgs: -s mono+libs+libs.tests+host+packs -c $(_BuildConfig) /p:ArchiveTests=true /p:DevTeamProvisioning=- /p:RunAOTCompilation=true /p:RunSmokeTestsOnly=true /p:BuildTestsOnHelix=true /p:EnableAdditionalTimezoneChecks=true /p:UsePortableRuntimePack=false /p:EnableAggressiveTrimming=true timeoutInMinutes: 120 - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # extra steps, run tests postBuildSteps: - template: /eng/pipelines/libraries/helix.yml @@ -1199,12 +1123,8 @@ extends: nameSuffix: AllSubsets_CoreCLR_Smoke buildArgs: -s clr+clr.runtime+libs+packs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true /p:DevTeamProvisioning=- /p:UseMonoRuntime=false /p:UseNativeAOTRuntime=false /p:RunSmokeTestsOnly=true /p:BuildTestsOnHelix=true /p:UsePortableRuntimePack=false timeoutInMinutes: 120 - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # extra steps, run tests postBuildSteps: - template: /eng/pipelines/libraries/helix.yml @@ -1244,12 +1164,8 @@ extends: buildArgs: --cross -s clr.alljits+clr.tools+clr.nativeaotruntime+clr.nativeaotlibs+libs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true /p:RunSmokeTestsOnly=true /p:DevTeamProvisioning=- /p:BuildTestsOnHelix=true /p:UseNativeAOTRuntime=true /p:RunAOTCompilation=false /p:ContinuousIntegrationBuild=true timeoutInMinutes: 180 useNativeAOTRuntime: true - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # extra steps, run tests postBuildSteps: - template: /eng/pipelines/libraries/helix.yml @@ -1287,12 +1203,8 @@ extends: nameSuffix: AllSubsets_Mono_Smoke buildArgs: -s mono+libs+host+packs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true /p:RunSmokeTestsOnly=true /p:DevTeamProvisioning=adhoc /p:RunAOTCompilation=true /p:MonoForceInterpreter=true timeoutInMinutes: 180 - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # extra steps, run tests postBuildSteps: - template: /eng/pipelines/libraries/helix.yml @@ -1321,12 +1233,8 @@ extends: nameSuffix: AllSubsets_Mono_LLVMAOT buildArgs: -s mono+libs+host+packs -c $(_BuildConfig) /p:MonoEnableLLVM=true /p:MonoAOTEnableLLVM=true /p:MonoBundleLLVMOptimizer=true - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false - template: /eng/pipelines/common/platform-matrix.yml parameters: @@ -1340,12 +1248,8 @@ extends: nameSuffix: AllSubsets_Mono_LLVMAOT buildArgs: -s mono+libs+host+packs -c $(_BuildConfig) /p:MonoEnableLLVM=true /p:MonoAOTEnableLLVM=true /p:MonoBundleLLVMOptimizer=true - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # # Build Mono debug @@ -1368,10 +1272,8 @@ extends: jobParameters: nameSuffix: Mono_Runtime buildArgs: -s mono -c $(_BuildConfig) - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # # Build Mono release AOT cross-compilers @@ -1395,11 +1297,8 @@ extends: buildArgs: -c $(_BuildConfig) /p:DotNetBuildMonoCrossAOT=true nameSuffix: CrossAOT_Mono runtimeVariant: crossaot - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # # Build and test libraries for .NET Framework @@ -1422,10 +1321,8 @@ extends: creator: dotnet-bot testRunNamePrefixSuffix: NET481_$(_BuildConfig) extraHelixArguments: /p:BuildTargetFramework=net481 - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # # Build and test libraries for all TFMs and create packages @@ -1440,11 +1337,8 @@ extends: buildArgs: -test -s tools.illink+libs+libs.tests -pack -c $(_BuildConfig) /p:TestAssemblies=false /p:TestPackages=true nameSuffix: Libraries_WithPackages timeoutInMinutes: 150 - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_tools_illink.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # # Installer Build and Test @@ -1477,10 +1371,8 @@ extends: - template: /eng/pipelines/installer/helix.yml parameters: creator: dotnet-bot - condition: - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_non_mono_and_wasm.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false - template: /eng/pipelines/common/platform-matrix.yml parameters: @@ -1509,10 +1401,8 @@ extends: - template: /eng/pipelines/installer/helix.yml parameters: creator: dotnet-bot - condition: - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_non_mono_and_wasm.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # # Build the whole product using Mono and run runtime tests @@ -1537,11 +1427,8 @@ extends: runtimeVariant: minijit buildArgs: -s mono+libs+clr.hosts+clr.iltools -c Release timeoutInMinutes: 180 - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false postBuildSteps: - template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml @@ -1573,11 +1460,8 @@ extends: runtimeVariant: minijit buildArgs: -s mono+libs+clr.hosts+clr.iltools -c Release -lc ${{ variables.debugOnPrReleaseOnRolling }} timeoutInMinutes: 180 - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false postBuildSteps: - template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml @@ -1612,11 +1496,8 @@ extends: runtimeVariant: monointerpreter buildArgs: -s mono+libs+clr.hosts+clr.iltools -c Release timeoutInMinutes: 180 - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false postBuildSteps: - template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml parameters: @@ -1650,11 +1531,8 @@ extends: buildArgs: -s mono+libs+clr.hosts+clr.iltools -c Release /p:MonoEnableLLVM=true /p:MonoAOTEnableLLVM=true /p:MonoBundleLLVMOptimizer=true timeoutInMinutes: 180 - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false postBuildSteps: - template: /eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml parameters: @@ -1701,11 +1579,8 @@ extends: liveLibrariesBuildConfig: Release unifiedArtifactsName: CoreCLR_ReleaseLibraries_BuildArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(_BuildConfig) unifiedBuildNameSuffix: CoreCLR_ReleaseLibraries - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false - template: /eng/pipelines/common/platform-matrix.yml parameters: @@ -1721,22 +1596,17 @@ extends: unifiedArtifactsName: CoreCLR_ReleaseLibraries_BuildArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(_BuildConfig) unifiedBuildNameSuffix: CoreCLR_ReleaseLibraries extraBuildArgs: -os browser -p:HostConfiguration=Release - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_runtimetests.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false - template: /eng/pipelines/common/platform-matrix.yml parameters: jobTemplate: /eng/pipelines/common/templates/runtimes/run-test-job.yml buildConfig: checked platforms: - - osx_arm64 - - osx_x64 + # TEMPORARY: narrowed to linux_x64 and linux_arm64 only for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442), was also osx_arm64, osx_x64, windows_x64 - linux_x64 - linux_arm64 - - windows_x64 helixQueueGroup: pr helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml jobParameters: @@ -1769,10 +1639,8 @@ extends: unifiedArtifactsName: CoreCLR_Libraries_BuildArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(_BuildConfig) helixArtifactsName: CoreCLR_Libraries_TestArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(_BuildConfig) unifiedBuildNameSuffix: CoreCLR_Libraries - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # # Libraries Debug Test Execution against a release coreclr runtime @@ -1796,10 +1664,8 @@ extends: helixArtifactsName: CoreCLR_Libraries_TestArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(debugOnPrReleaseOnRolling) unifiedBuildNameSuffix: CoreCLR_Libraries unifiedBuildConfigOverride: ${{ variables.debugOnPrReleaseOnRolling }} - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # The next three jobs run checked coreclr + libraries tests. # The matrix looks like the following, where the right columns specify which configurations # the libraries tests are built in. @@ -1835,10 +1701,8 @@ extends: unifiedArtifactsName: Libraries_CheckedCoreCLR_BuildArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(_BuildConfig) helixArtifactsName: Libraries_CheckedCoreCLR_TestArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(_BuildConfig) unifiedBuildNameSuffix: Libraries_CheckedCoreCLR - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # # Release Libraries Test Execution against a checked runtime @@ -1862,30 +1726,10 @@ extends: helixArtifactsName: CoreCLR_ReleaseLibraries_TestArtifacts_$(osGroup)$(osSubgroup)_$(archType)_Checked unifiedBuildNameSuffix: CoreCLR_ReleaseLibraries unifiedBuildConfigOverride: checked - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false - - template: /eng/pipelines/common/platform-matrix.yml - parameters: - jobTemplate: /eng/pipelines/libraries/run-test-job.yml - buildConfig: ${{ variables.debugOnPrReleaseOnRolling }} - platforms: - - osx_arm64 - helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml - helixQueueGroup: libraries - jobParameters: - testScope: innerloop - liveRuntimeBuildConfig: checked - unifiedArtifactsName: Libraries_CheckedCoreCLR_BuildArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(_BuildConfig) - helixArtifactsName: Libraries_CheckedCoreCLR_TestArtifacts_$(osGroup)$(osSubgroup)_$(archType)_$(_BuildConfig) - unifiedBuildNameSuffix: Libraries_CheckedCoreCLR - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_coreclr.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: osx_arm64 Libraries_CheckedCoreCLR test job removed for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) # # Build and test Mono Interpreter with the libraries testss @@ -1913,11 +1757,8 @@ extends: creator: dotnet-bot testRunNamePrefixSuffix: Mono_Interpreter_$(_BuildConfig) interpreter: true - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false # # Build and test Mono Minijit with the libraries testss @@ -1944,8 +1785,5 @@ extends: parameters: creator: dotnet-bot testRunNamePrefixSuffix: Mono_Minijit_$(_BuildConfig) - condition: >- - or( - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true), - eq(stageDependencies.EvaluatePaths.evaluate_paths.outputs['SetPathVars_mono_excluding_wasm.containsChange'], true), - eq(variables['isRollingBuild'], true)) + # TEMPORARY: disabled for userevents diagnostic investigation (https://github.com/dotnet/runtime/issues/123442) + condition: false diff --git a/src/native/eventpipe/ds-server.c b/src/native/eventpipe/ds-server.c index a89f757970167c..bf5c728b6750b9 100644 --- a/src/native/eventpipe/ds-server.c +++ b/src/native/eventpipe/ds-server.c @@ -12,6 +12,20 @@ #include "ds-dump-protocol.h" #include "ds-profiler-protocol.h" #include "ds-rt.h" +#include +#include + +// Temporary diagnostic logging for userevents investigation (https://github.com/dotnet/runtime/issues/123442). +// Enabled when DOTNET_DiagnosticServerDiag=1 is set. +static int ds_diag_enabled = -1; // -1 = uninitialized +static inline int ds_diag_is_enabled (void) { + if (ds_diag_enabled == -1) { + const char *val = getenv ("DOTNET_DiagnosticServerDiag"); + ds_diag_enabled = (val != NULL && val[0] == '1') ? 1 : 0; + } + return ds_diag_enabled; +} +#define DS_DIAG_LOG(...) do { if (ds_diag_is_enabled ()) { fprintf (stderr, "[DS_DIAG] " __VA_ARGS__); fflush (stderr); } } while (0) /* * Globals and volatile access functions. @@ -119,6 +133,8 @@ static size_t server_loop_tick (void* data) { if (!stream) return 0; // continue + DS_DIAG_LOG ("server_loop_tick: obtained IPC stream.\n"); + ds_rt_auto_trace_signal (); DiagnosticsIpcMessage message; @@ -126,6 +142,7 @@ static size_t server_loop_tick (void* data) { return 0; // continue if (!ds_ipc_message_initialize_stream (&message, stream)) { + DS_DIAG_LOG ("server_loop_tick: failed to initialize stream (bad encoding).\n"); ds_ipc_message_send_error (stream, DS_IPC_E_BAD_ENCODING); ds_ipc_stream_free (stream); ds_ipc_message_fini (&message); @@ -136,6 +153,7 @@ static size_t server_loop_tick (void* data) { (const ep_char8_t *)ds_ipc_header_get_magic_ref (ds_ipc_message_get_header_ref (&message)), (const ep_char8_t *)DOTNET_IPC_V1_MAGIC) != 0) { + DS_DIAG_LOG ("server_loop_tick: unknown magic header.\n"); ds_ipc_message_send_error (stream, DS_IPC_E_UNKNOWN_MAGIC); ds_ipc_stream_free (stream); ds_ipc_message_fini (&message); @@ -143,12 +161,14 @@ static size_t server_loop_tick (void* data) { } DS_LOG_INFO_2 ("DiagnosticServer - received IPC message with command set (%d) and command id (%d)", ds_ipc_header_get_commandset (ds_ipc_message_get_header_ref (&message)), ds_ipc_header_get_commandid (ds_ipc_message_get_header_ref (&message))); + DS_DIAG_LOG ("server_loop_tick: received IPC command set=%d, command id=%d.\n", (int)ds_ipc_header_get_commandset (ds_ipc_message_get_header_ref (&message)), (int)ds_ipc_header_get_commandid (ds_ipc_message_get_header_ref (&message))); switch ((DiagnosticsServerCommandSet)ds_ipc_header_get_commandset (ds_ipc_message_get_header_ref (&message))) { case DS_SERVER_COMMANDSET_DUMP: ds_dump_protocol_helper_handle_ipc_message (&message, stream); break; case DS_SERVER_COMMANDSET_EVENTPIPE: + DS_DIAG_LOG ("server_loop_tick: dispatching EVENTPIPE command.\n"); ds_eventpipe_protocol_helper_handle_ipc_message (&message, stream); break; case DS_SERVER_COMMANDSET_PROFILER: @@ -158,6 +178,7 @@ static size_t server_loop_tick (void* data) { ds_process_protocol_helper_handle_ipc_message (&message, stream); break; default: + DS_DIAG_LOG ("server_loop_tick: unknown command set %d.\n", (int)ds_ipc_header_get_commandset (ds_ipc_message_get_header_ref (&message))); server_protocol_helper_unknown_command (&message, stream); break; } diff --git a/src/native/eventpipe/ep-session-provider.c b/src/native/eventpipe/ep-session-provider.c index 936899066fae79..a8e0174a304b92 100644 --- a/src/native/eventpipe/ep-session-provider.c +++ b/src/native/eventpipe/ep-session-provider.c @@ -6,11 +6,27 @@ #define EP_IMPL_SESSION_PROVIDER_GETTER_SETTER #include "ep-session-provider.h" #include "ep-rt.h" +#include +#include +#include #if HAVE_SYS_IOCTL_H #include // session_register_tracepoint +#include #endif // HAVE_SYS_IOCTL_H +// Temporary diagnostic logging for userevents investigation (https://github.com/dotnet/runtime/issues/123442). +// Enabled when DOTNET_DiagnosticServerDiag=1 is set. +static int ep_sp_diag_enabled = -1; // -1 = uninitialized +static inline int ep_sp_diag_is_enabled (void) { + if (ep_sp_diag_enabled == -1) { + const char *val = getenv ("DOTNET_DiagnosticServerDiag"); + ep_sp_diag_enabled = (val != NULL && val[0] == '1') ? 1 : 0; + } + return ep_sp_diag_enabled; +} +#define EP_SP_DIAG_LOG(...) do { if (ep_sp_diag_is_enabled ()) { fprintf (stderr, "[EP_SP_DIAG] " __VA_ARGS__); fflush (stderr); } } while (0) + /* * Forward declares of all static functions. */ @@ -163,10 +179,15 @@ session_provider_tracepoint_register ( reg.name_args = (uint64_t)tracepoint->tracepoint_format; - if (ioctl(user_events_data_fd, DIAG_IOCSREG, ®) == -1) + EP_SP_DIAG_LOG ("tracepoint_register: registering tracepoint format='%s', fd=%d.\n", tracepoint->tracepoint_format ? tracepoint->tracepoint_format : "(null)", user_events_data_fd); + + if (ioctl(user_events_data_fd, DIAG_IOCSREG, ®) == -1) { + EP_SP_DIAG_LOG ("tracepoint_register: ioctl DIAG_IOCSREG failed, errno=%d (%s).\n", errno, strerror (errno)); return false; + } tracepoint->write_index = reg.write_index; + EP_SP_DIAG_LOG ("tracepoint_register: success, write_index=%u.\n", (unsigned)reg.write_index); return true; } @@ -227,28 +248,39 @@ ep_session_provider_register_tracepoints ( EP_ASSERT (session_provider != NULL); EP_ASSERT (user_events_data_fd != -1); - if (user_events_data_fd < 0) + if (user_events_data_fd < 0) { + EP_SP_DIAG_LOG ("register_tracepoints: invalid fd=%d.\n", user_events_data_fd); return false; + } EventPipeSessionProviderTracepointConfiguration *tracepoint_config = session_provider->tracepoint_config; - if (tracepoint_config == NULL) + if (tracepoint_config == NULL) { + EP_SP_DIAG_LOG ("register_tracepoints: tracepoint_config is NULL.\n"); return false; + } - if (tracepoint_config->default_tracepoint.tracepoint_format == NULL && tracepoint_config->tracepoints == NULL) + if (tracepoint_config->default_tracepoint.tracepoint_format == NULL && tracepoint_config->tracepoints == NULL) { + EP_SP_DIAG_LOG ("register_tracepoints: no tracepoints configured (both default and list are NULL).\n"); return false; + } if (tracepoint_config->default_tracepoint.tracepoint_format != NULL && - !session_provider_tracepoint_register (&tracepoint_config->default_tracepoint, user_events_data_fd)) + !session_provider_tracepoint_register (&tracepoint_config->default_tracepoint, user_events_data_fd)) { + EP_SP_DIAG_LOG ("register_tracepoints: default tracepoint registration failed.\n"); return false; + } if (tracepoint_config->tracepoints != NULL) { DN_VECTOR_PTR_FOREACH_BEGIN (EventPipeSessionProviderTracepoint *, tracepoint, tracepoint_config->tracepoints) { EP_ASSERT (tracepoint != NULL); - if (!session_provider_tracepoint_register (tracepoint, user_events_data_fd)) + if (!session_provider_tracepoint_register (tracepoint, user_events_data_fd)) { + EP_SP_DIAG_LOG ("register_tracepoints: tracepoint registration failed.\n"); return false; + } } DN_VECTOR_PTR_FOREACH_END; } + EP_SP_DIAG_LOG ("register_tracepoints: all tracepoints registered successfully.\n"); return true; } diff --git a/src/native/eventpipe/ep-session.c b/src/native/eventpipe/ep-session.c index 19ff91952ce31e..ff0529f4e14481 100644 --- a/src/native/eventpipe/ep-session.c +++ b/src/native/eventpipe/ep-session.c @@ -14,6 +14,9 @@ #include "ep-stream.h" #include "ep-event-payload.h" #include "ep-rt.h" +#include +#include +#include #if HAVE_UNISTD_H #include // close @@ -27,6 +30,18 @@ #include // errno #endif // HAVE_ERRNO_H +// Temporary diagnostic logging for userevents investigation (https://github.com/dotnet/runtime/issues/123442). +// Enabled when DOTNET_DiagnosticServerDiag=1 is set. +static int ep_sess_diag_enabled = -1; // -1 = uninitialized +static inline int ep_sess_diag_is_enabled (void) { + if (ep_sess_diag_enabled == -1) { + const char *val = getenv ("DOTNET_DiagnosticServerDiag"); + ep_sess_diag_enabled = (val != NULL && val[0] == '1') ? 1 : 0; + } + return ep_sess_diag_enabled; +} +#define EP_SESS_DIAG_LOG(...) do { if (ep_sess_diag_is_enabled ()) { fprintf (stderr, "[EP_SESS_DIAG] " __VA_ARGS__); fflush (stderr); } } while (0) + /* * Forward declares of all static functions. */ @@ -730,11 +745,15 @@ session_tracepoint_write_event ( EventPipeSessionProviderList *session_provider_list = session->providers; EventPipeSessionProvider *session_provider = ep_session_provider_list_find_by_name (ep_session_provider_list_get_providers (session_provider_list), ep_provider_get_provider_name (provider)); const EventPipeSessionProviderTracepoint *tracepoint = ep_session_provider_get_tracepoint_for_event (session_provider, ep_event); - if (tracepoint == NULL) + if (tracepoint == NULL) { + EP_SESS_DIAG_LOG ("tracepoint_write_event: tracepoint not found for provider='%s', event_id=%u.\n", ep_provider_get_provider_name (provider), (unsigned)ep_event_get_event_id (ep_event)); return false; + } - if (ep_session_provider_tracepoint_get_enabled (tracepoint) == 0) + if (ep_session_provider_tracepoint_get_enabled (tracepoint) == 0) { + EP_SESS_DIAG_LOG ("tracepoint_write_event: tracepoint disabled for provider='%s', event_id=%u.\n", ep_provider_get_provider_name (provider), (unsigned)ep_event_get_event_id (ep_event)); return false; + } // Setup iovec array const int max_non_parameter_iov = 9; @@ -874,6 +893,12 @@ session_tracepoint_write_event ( if (should_write_metadata && (bytes_written == io_bytes_to_write)) ep_event_update_metadata_written_mask (ep_event, session_mask, true); + if (bytes_written == -1) { + EP_SESS_DIAG_LOG ("tracepoint_write_event: writev failed for provider='%s', event_id=%u, fd=%d, errno=%d (%s).\n", ep_provider_get_provider_name (provider), (unsigned)ep_event_get_event_id (ep_event), session->user_events_data_fd, errno, strerror (errno)); + } else { + EP_SESS_DIAG_LOG ("tracepoint_write_event: writev success for provider='%s', event_id=%u, bytes_written=%zd.\n", ep_provider_get_provider_name (provider), (unsigned)ep_event_get_event_id (ep_event), bytes_written); + } + if (io != static_io) free (io); diff --git a/src/tests/tracing/userevents/Directory.Build.props b/src/tests/tracing/userevents/Directory.Build.props index aa27c19739e518..67961d29740a70 100644 --- a/src/tests/tracing/userevents/Directory.Build.props +++ b/src/tests/tracing/userevents/Directory.Build.props @@ -3,9 +3,6 @@ - - true - true diff --git a/src/tests/tracing/userevents/activity/activity.cs b/src/tests/tracing/userevents/activity/activity.cs index 71db59ef9f8c8b..9ac99246488f2f 100644 --- a/src/tests/tracing/userevents/activity/activity.cs +++ b/src/tests/tracing/userevents/activity/activity.cs @@ -45,7 +45,7 @@ private static async Task Query(string query) ActivityEventSource.Log.QueryStop(); } - private static readonly Func s_traceValidator = source => + private static readonly Func s_traceValidator = (traceePid, source) => { Guid firstWorkActivityId = Guid.Empty; Guid secondWorkActivityId = Guid.Empty; @@ -60,8 +60,16 @@ private static async Task Query(string query) Guid secondWorkQuery1RelatedActivityId = Guid.Empty; Guid secondWorkQuery2RelatedActivityId = Guid.Empty; + int eventsFromOtherProcesses = 0; + source.Dynamic.All += e => { + if (e.ProcessID != traceePid) + { + eventsFromOtherProcesses++; + return; + } + if (!string.Equals(e.ProviderName, "DemoActivityIDs", StringComparison.Ordinal)) { return; @@ -114,9 +122,14 @@ private static async Task Query(string query) source.Process(); + if (eventsFromOtherProcesses > 0) + { + Console.WriteLine($"Ignored {eventsFromOtherProcesses} events from processes other than tracee (PID {traceePid})."); + } + if (firstWorkActivityId == Guid.Empty || secondWorkActivityId == Guid.Empty) { - Console.Error.WriteLine("The trace did not contain two WorkStart events with ActivityIds for RequestA and RequestB."); + Console.Error.WriteLine($"The trace did not contain two WorkStart events with ActivityIds for RequestA and RequestB from tracee PID {traceePid}."); return false; } diff --git a/src/tests/tracing/userevents/basic/basic.cs b/src/tests/tracing/userevents/basic/basic.cs index 0e9a3891ac9c10..126e9a3a36ce14 100644 --- a/src/tests/tracing/userevents/basic/basic.cs +++ b/src/tests/tracing/userevents/basic/basic.cs @@ -25,12 +25,19 @@ public static void BasicTracee() } } - private readonly static Func s_traceValidator = source => + private readonly static Func s_traceValidator = (traceePid, source) => { bool allocationSampledEventFound = false; + int eventsFromOtherProcesses = 0; source.Dynamic.All += (TraceEvent e) => { + if (e.ProcessID != traceePid) + { + eventsFromOtherProcesses++; + return; + } + if (e.ProviderName == "Microsoft-Windows-DotNETRuntime") { // TraceEvent's ClrTraceEventParser does not know about the AllocationSampled Event, so it shows up as "Unknown(303)" @@ -43,9 +50,14 @@ public static void BasicTracee() source.Process(); + if (eventsFromOtherProcesses > 0) + { + Console.WriteLine($"Ignored {eventsFromOtherProcesses} events from processes other than tracee (PID {traceePid})."); + } + if (!allocationSampledEventFound) { - Console.Error.WriteLine("The trace did not contain an AllocationSampled event."); + Console.Error.WriteLine($"The trace did not contain an AllocationSampled event from tracee PID {traceePid}."); } return allocationSampledEventFound; }; diff --git a/src/tests/tracing/userevents/common/UserEventsTestRunner.cs b/src/tests/tracing/userevents/common/UserEventsTestRunner.cs index f6cec8bd79953a..b2fe8f6a827c28 100644 --- a/src/tests/tracing/userevents/common/UserEventsTestRunner.cs +++ b/src/tests/tracing/userevents/common/UserEventsTestRunner.cs @@ -27,7 +27,7 @@ public static int Run( string[] args, string scenarioName, Action traceeAction, - Func traceValidator, + Func traceValidator, int traceeExitTimeout = DefaultTraceeExitTimeoutMs, int recordTraceExitTimeout = DefaultRecordTraceExitTimeoutMs, int traceeDelayToSetupTracepoints = DefaultTraceeDelayToSetupTracepointsMs) @@ -52,7 +52,7 @@ public static int Run( private static int RunOrchestrator( string scenarioName, - Func traceValidator, + Func traceValidator, int traceeExitTimeout, int recordTraceExitTimeout) { @@ -108,6 +108,10 @@ private static int RunOrchestrator( recordTraceStartInfo.ArgumentList.Add(scriptFilePath); recordTraceStartInfo.ArgumentList.Add("--out"); recordTraceStartInfo.ArgumentList.Add(traceFilePath); + recordTraceStartInfo.ArgumentList.Add("--log-mode"); + recordTraceStartInfo.ArgumentList.Add("console"); + recordTraceStartInfo.ArgumentList.Add("--log-filter"); + recordTraceStartInfo.ArgumentList.Add("trace"); recordTraceStartInfo.WorkingDirectory = userEventsScenarioDir; recordTraceStartInfo.UseShellExecute = false; recordTraceStartInfo.RedirectStandardOutput = true; @@ -155,6 +159,10 @@ private static int RunOrchestrator( traceeStartInfo.RedirectStandardOutput = true; traceeStartInfo.RedirectStandardError = true; + // Enable diagnostic logging in the runtime's eventpipe/diagnostic server code + // for investigation of flaky userevents tests (https://github.com/dotnet/runtime/issues/123442). + traceeStartInfo.Environment["DOTNET_DiagnosticServerDiag"] = "1"; + // record-trace currently only searches /tmp/ for diagnostic ports https://github.com/microsoft/one-collect/issues/183 string diagnosticPortDir = "/tmp"; traceeStartInfo.Environment["TMPDIR"] = diagnosticPortDir; @@ -220,7 +228,7 @@ private static int RunOrchestrator( } using EventPipeEventSource source = new EventPipeEventSource(traceFilePath); - if (!traceValidator(source)) + if (!traceValidator(traceePid, source)) { Console.Error.WriteLine($"Trace file `{traceFilePath}` does not contain expected events."); UploadTraceFileFromHelix(traceFilePath, scenarioName); diff --git a/src/tests/tracing/userevents/custommetadata/custommetadata.cs b/src/tests/tracing/userevents/custommetadata/custommetadata.cs index 1436e548ea1f58..34d89a83023338 100644 --- a/src/tests/tracing/userevents/custommetadata/custommetadata.cs +++ b/src/tests/tracing/userevents/custommetadata/custommetadata.cs @@ -16,12 +16,19 @@ public static void CustomMetadataTracee() CustomMetadataEventSource.Log.WorkItem(1, "Item1"); } - private static readonly Func s_traceValidator = source => + private static readonly Func s_traceValidator = (traceePid, source) => { bool anyMatching = false; + int eventsFromOtherProcesses = 0; source.Dynamic.All += (TraceEvent e) => { + if (e.ProcessID != traceePid) + { + eventsFromOtherProcesses++; + return; + } + if (!string.Equals(e.ProviderName, "DemoCustomMetadata", StringComparison.Ordinal)) { return; @@ -57,9 +64,14 @@ public static void CustomMetadataTracee() source.Process(); + if (eventsFromOtherProcesses > 0) + { + Console.WriteLine($"Ignored {eventsFromOtherProcesses} events from processes other than tracee (PID {traceePid})."); + } + if (!anyMatching) { - Console.Error.WriteLine("The trace did not contain the expected CustomMetadata event."); + Console.Error.WriteLine($"The trace did not contain the expected CustomMetadata event from tracee PID {traceePid}."); } return anyMatching; diff --git a/src/tests/tracing/userevents/managedevent/managedevent.cs b/src/tests/tracing/userevents/managedevent/managedevent.cs index 97364d5151c7fb..f77f7e03b05d0f 100644 --- a/src/tests/tracing/userevents/managedevent/managedevent.cs +++ b/src/tests/tracing/userevents/managedevent/managedevent.cs @@ -24,12 +24,19 @@ public static void ManagedEventTracee() } } - private static readonly Func s_traceValidator = source => + private static readonly Func s_traceValidator = (traceePid, source) => { bool sampleEventFound = false; + int eventsFromOtherProcesses = 0; source.Dynamic.All += (TraceEvent e) => { + if (e.ProcessID != traceePid) + { + eventsFromOtherProcesses++; + return; + } + if (!string.Equals(e.ProviderName, "ManagedUserEvent", StringComparison.OrdinalIgnoreCase)) { return; @@ -45,9 +52,14 @@ public static void ManagedEventTracee() source.Process(); + if (eventsFromOtherProcesses > 0) + { + Console.WriteLine($"Ignored {eventsFromOtherProcesses} events from processes other than tracee (PID {traceePid})."); + } + if (!sampleEventFound) { - Console.Error.WriteLine("The trace did not contain the expected managed event."); + Console.Error.WriteLine($"The trace did not contain the expected managed event from tracee PID {traceePid}."); } return sampleEventFound; diff --git a/src/tests/tracing/userevents/multithread/multithread.cs b/src/tests/tracing/userevents/multithread/multithread.cs index 01a9768f3de0fc..d534bef2099871 100644 --- a/src/tests/tracing/userevents/multithread/multithread.cs +++ b/src/tests/tracing/userevents/multithread/multithread.cs @@ -46,12 +46,19 @@ public static void MultiThreadTracee() Task.WaitAll(tasks); } - private static readonly Func s_traceValidator = source => + private static readonly Func s_traceValidator = (traceePid, source) => { HashSet seenWorkers = new HashSet(); + int eventsFromOtherProcesses = 0; source.Dynamic.All += (TraceEvent e) => { + if (e.ProcessID != traceePid) + { + eventsFromOtherProcesses++; + return; + } + if (!string.Equals(e.ProviderName, "DemoMultiThread", StringComparison.Ordinal)) { return; @@ -80,11 +87,16 @@ public static void MultiThreadTracee() source.Process(); + if (eventsFromOtherProcesses > 0) + { + Console.WriteLine($"Ignored {eventsFromOtherProcesses} events from processes other than tracee (PID {traceePid})."); + } + for (int i = 0; i < WorkerCount; i++) { if (!seenWorkers.Contains(i)) { - Console.Error.WriteLine($"Did not observe event for worker {i}."); + Console.Error.WriteLine($"Did not observe event for worker {i} from tracee PID {traceePid}."); return false; } }