diff --git a/eng/pipelines/common/platform-matrix.yml b/eng/pipelines/common/platform-matrix.yml
index ad3dbd4db8bc0d..d22f2d0e8902e3 100644
--- a/eng/pipelines/common/platform-matrix.yml
+++ b/eng/pipelines/common/platform-matrix.yml
@@ -27,244 +27,6 @@ parameters:
jobs:
-# Linux arm
-- ${{ if or(containsValue(parameters.platforms, 'Linux_arm'), in(parameters.platformGroup, 'all', 'gcstress')) }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: Linux
- archType: arm
- targetRid: linux-arm
- platform: Linux_arm
- container:
- image: ubuntu-16.04-cross-20210719121212-8a8d3be
- registry: mcr
- jobParameters:
- runtimeFlavor: ${{ parameters.runtimeFlavor }}
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- crossBuild: true
- crossrootfsDir: '/crossrootfs/arm'
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# Linux arm64
-
-- ${{ if or(containsValue(parameters.platforms, 'Linux_arm64'), in(parameters.platformGroup, 'all', 'gcstress')) }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: Linux
- archType: arm64
- targetRid: linux-arm64
- platform: Linux_arm64
- container:
- ${{ if eq(parameters.container, '') }}:
- image: ubuntu-16.04-cross-arm64-20210719121212-8a8d3be
- ${{ if ne(parameters.container, '') }}:
- image: ${{ parameters.container }}
- registry: mcr
- jobParameters:
- runtimeFlavor: ${{ parameters.runtimeFlavor }}
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- crossBuild: true
- crossrootfsDir: '/crossrootfs/arm64'
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# Linux musl x64
-
-- ${{ if or(containsValue(parameters.platforms, 'Linux_musl_x64'), eq(parameters.platformGroup, 'all')) }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: Linux
- osSubgroup: _musl
- archType: x64
- targetRid: linux-musl-x64
- platform: Linux_musl_x64
- container:
- image: alpine-3.13-WithNode-20210910135845-c401c85
- registry: mcr
- jobParameters:
- runtimeFlavor: ${{ parameters.runtimeFlavor }}
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# Linux musl arm
-
-- ${{ if or(containsValue(parameters.platforms, 'Linux_musl_arm'), eq(parameters.platformGroup, 'all')) }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: Linux
- osSubgroup: _musl
- archType: arm
- targetRid: linux-musl-arm
- platform: Linux_musl_arm
- container:
- image: ubuntu-16.04-cross-arm-alpine-20210923140502-78f7860
- registry: mcr
- jobParameters:
- runtimeFlavor: ${{ parameters.runtimeFlavor }}
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- crossBuild: true
- crossrootfsDir: '/crossrootfs/arm'
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# Linux musl arm64
-
-- ${{ if or(containsValue(parameters.platforms, 'Linux_musl_arm64'), eq(parameters.platformGroup, 'all')) }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: Linux
- osSubgroup: _musl
- archType: arm64
- targetRid: linux-musl-arm64
- platform: Linux_musl_arm64
- container:
- image: ubuntu-16.04-cross-arm64-alpine-20210923140502-78f7860
- registry: mcr
- jobParameters:
- runtimeFlavor: ${{ parameters.runtimeFlavor }}
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- crossBuild: true
- crossrootfsDir: '/crossrootfs/arm64'
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# Linux x64
-
-- ${{ if or(containsValue(parameters.platforms, 'Linux_x64'), containsValue(parameters.platforms, 'CoreClrTestBuildHost'), in(parameters.platformGroup, 'all', 'gcstress')) }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: Linux
- archType: x64
- targetRid: linux-x64
- platform: Linux_x64
- container:
- ${{ if eq(parameters.container, '') }}:
- image: centos-7-20210714125435-9b5bbc2
- ${{ if ne(parameters.container, '') }}:
- image: ${{ parameters.container }}
- registry: mcr
- jobParameters:
- runtimeFlavor: ${{ parameters.runtimeFlavor }}
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# Linux x86
-
-- ${{ if containsValue(parameters.platforms, 'Linux_x86') }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: Linux
- archType: x86
- targetRid: linux-x86
- platform: Linux_x86
- container:
- image: ubuntu-18.04-cross-x86-linux-20211022152824-f853169
- registry: mcr
- jobParameters:
- runtimeFlavor: ${{ parameters.runtimeFlavor }}
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- crossBuild: true
- crossrootfsDir: '/crossrootfs/x86'
- disableClrTest: true
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# Linux x64 Source Build
-
-- ${{ if containsValue(parameters.platforms, 'SourceBuild_Linux_x64') }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: Linux
- archType: x64
- targetRid: linux-x64
- platform: Linux_x64
- container:
- image: centos-7-source-build-20210714125450-5d87b80
- registry: mcr
- jobParameters:
- runtimeFlavor: ${{ parameters.runtimeFlavor }}
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- ${{ insert }}: ${{ parameters.jobParameters }}
- buildingOnSourceBuildImage: true
-
-# Linux s390x
-
-- ${{ if containsValue(parameters.platforms, 'Linux_s390x') }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: Linux
- archType: s390x
- targetRid: linux-s390x
- platform: Linux_s390x
- container:
- image: ubuntu-18.04-cross-s390x-20201102145728-d6e0352
- registry: mcr
- jobParameters:
- runtimeFlavor: ${{ parameters.runtimeFlavor }}
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- crossBuild: true
- crossrootfsDir: '/crossrootfs/s390x'
- ${{ insert }}: ${{ parameters.jobParameters }}
-
# WebAssembly
- ${{ if containsValue(parameters.platforms, 'Browser_wasm') }}:
@@ -291,505 +53,21 @@ jobs:
# WebAssembly on Windows
-- ${{ if containsValue(parameters.platforms, 'Browser_wasm_win') }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- hostedOs: windows
- osGroup: Browser
- archType: wasm
- targetRid: browser-wasm
- platform: Browser_wasm_win
- jobParameters:
- runtimeFlavor: ${{ parameters.runtimeFlavor }}
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# FreeBSD
-- ${{ if containsValue(parameters.platforms, 'FreeBSD_x64') }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: FreeBSD
- archType: x64
- targetRid: freebsd-x64
- platform: FreeBSD_x64
- container:
- image: ubuntu-18.04-cross-freebsd-12-20210917001307-f13d79e
- registry: mcr
- jobParameters:
- runtimeFlavor: ${{ parameters.runtimeFlavor }}
- buildConfig: ${{ parameters.buildConfig }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- crossBuild: true
- crossrootfsDir: '/crossrootfs/x64'
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# Android x64
-
-- ${{ if containsValue(parameters.platforms, 'Android_x64') }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: Android
- archType: x64
- targetRid: android-x64
- platform: Android_x64
- container:
- image: ubuntu-18.04-android-20200422191843-e2c3f83
- registry: mcr
- jobParameters:
- runtimeFlavor: mono
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# Android x86
-
-- ${{ if containsValue(parameters.platforms, 'Android_x86') }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: Android
- archType: x86
- targetRid: android-x86
- platform: Android_x86
- container:
- image: ubuntu-18.04-android-20200422191843-e2c3f83
- registry: mcr
- jobParameters:
- runtimeFlavor: mono
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# Android arm
-
-- ${{ if containsValue(parameters.platforms, 'Android_arm') }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: Android
- archType: arm
- targetRid: android-arm
- platform: Android_arm
- container:
- image: ubuntu-18.04-android-20200422191843-e2c3f83
- registry: mcr
- jobParameters:
- runtimeFlavor: mono
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# Android arm64
-
-- ${{ if containsValue(parameters.platforms, 'Android_arm64') }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: Android
- archType: arm64
- targetRid: android-arm64
- platform: Android_arm64
- container:
- image: ubuntu-18.04-android-20200422191843-e2c3f83
- registry: mcr
- jobParameters:
- runtimeFlavor: mono
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# Mac Catalyst x64
-
-- ${{ if containsValue(parameters.platforms, 'MacCatalyst_x64') }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: MacCatalyst
- archType: x64
- targetRid: maccatalyst-x64
- platform: MacCatalyst_x64
- jobParameters:
- runtimeFlavor: mono
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# Mac Catalyst arm64
-
-- ${{ if containsValue(parameters.platforms, 'MacCatalyst_arm64') }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: MacCatalyst
- archType: arm64
- targetRid: maccatalyst-arm64
- platform: MacCatalyst_arm64
- jobParameters:
- runtimeFlavor: mono
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# tvOS arm64
-
-- ${{ if containsValue(parameters.platforms, 'tvOS_arm64') }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: tvOS
- archType: arm64
- targetRid: tvos-arm64
- platform: tvOS_arm64
- jobParameters:
- runtimeFlavor: mono
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# tvOS Simulator x64
-
-- ${{ if containsValue(parameters.platforms, 'tvOSSimulator_x64') }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: tvOSSimulator
- archType: x64
- targetRid: tvossimulator-x64
- platform: tvOSSimulator_x64
- jobParameters:
- runtimeFlavor: mono
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# tvOS Simulator arm64
-
-- ${{ if containsValue(parameters.platforms, 'tvOSSimulator_arm64') }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: tvOSSimulator
- archType: arm64
- targetRid: tvossimulator-arm64
- platform: tvOSSimulator_arm64
- jobParameters:
- runtimeFlavor: mono
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# iOS arm
-
-- ${{ if containsValue(parameters.platforms, 'iOS_arm') }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: iOS
- archType: arm
- targetRid: ios-arm
- platform: iOS_arm
- jobParameters:
- runtimeFlavor: mono
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# iOS arm64
-
-- ${{ if containsValue(parameters.platforms, 'iOS_arm64') }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: iOS
- archType: arm64
- targetRid: ios-arm64
- platform: iOS_arm64
- jobParameters:
- runtimeFlavor: mono
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# iOS Simulator x64
-
-- ${{ if containsValue(parameters.platforms, 'iOSSimulator_x64') }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: iOSSimulator
- archType: x64
- targetRid: iossimulator-x64
- platform: iOSSimulator_x64
- jobParameters:
- runtimeFlavor: mono
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# iOS Simulator x86
-
-- ${{ if containsValue(parameters.platforms, 'iOSSimulator_x86') }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: iOSSimulator
- archType: x86
- targetRid: iossimulator-x86
- platform: iOSsimulator_x86
- jobParameters:
- runtimeFlavor: mono
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- managedTestBuildOsGroup: OSX
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# iOS Simulator arm64
-
-- ${{ if containsValue(parameters.platforms, 'iOSSimulator_arm64') }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: iOSSimulator
- archType: arm64
- targetRid: iossimulator-arm64
- platform: iOSSimulator_arm64
- jobParameters:
- runtimeFlavor: mono
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# macOS arm64
-
-- ${{ if containsValue(parameters.platforms, 'OSX_arm64') }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: OSX
- archType: arm64
- targetRid: osx-arm64
- platform: OSX_arm64
- jobParameters:
- runtimeFlavor: ${{ parameters.runtimeFlavor }}
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- crossBuild: true
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# macOS x64
-
-- ${{ if or(containsValue(parameters.platforms, 'OSX_x64'), eq(parameters.platformGroup, 'all')) }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: OSX
- archType: x64
- targetRid: osx-x64
- platform: OSX_x64
- jobParameters:
- runtimeFlavor: ${{ parameters.runtimeFlavor }}
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# Tizen armel
-
-- ${{ if containsValue(parameters.platforms, 'Tizen_armel') }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: Tizen
- archType: armel
- targetRid: tizen-armel
- platform: Tizen_armel
- container:
- image: ubuntu-18.04-cross-armel-tizen-20210719212651-8b02f56
- registry: mcr
- jobParameters:
- runtimeFlavor: ${{ parameters.runtimeFlavor }}
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- crossBuild: true
- crossrootfsDir: '/crossrootfs/armel'
- disableClrTest: true
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# Windows x64
-
-- ${{ if or(containsValue(parameters.platforms, 'windows_x64'), in(parameters.platformGroup, 'all', 'gcstress')) }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: windows
- archType: x64
- targetRid: win-x64
- platform: windows_x64
- jobParameters:
- runtimeFlavor: ${{ parameters.runtimeFlavor }}
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# Windows x86
-
-- ${{ if or(containsValue(parameters.platforms, 'windows_x86'), in(parameters.platformGroup, 'all', 'gcstress')) }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: windows
- archType: x86
- targetRid: win-x86
- platform: windows_x86
- jobParameters:
- runtimeFlavor: ${{ parameters.runtimeFlavor }}
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# Windows arm
-- ${{ if or(containsValue(parameters.platforms, 'windows_arm'), eq(parameters.platformGroup, 'all')) }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: windows
- archType: arm
- targetRid: win-arm
- platform: windows_arm
- jobParameters:
- runtimeFlavor: ${{ parameters.runtimeFlavor }}
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- ${{ insert }}: ${{ parameters.jobParameters }}
-
-# Windows arm64
-
-- ${{ if or(containsValue(parameters.platforms, 'windows_arm64'), in(parameters.platformGroup, 'all', 'gcstress')) }}:
- - template: xplat-setup.yml
- parameters:
- jobTemplate: ${{ parameters.jobTemplate }}
- helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
- variables: ${{ parameters.variables }}
- osGroup: windows
- archType: arm64
- targetRid: win-arm64
- platform: windows_arm64
- jobParameters:
- runtimeFlavor: ${{ parameters.runtimeFlavor }}
- stagedBuild: ${{ parameters.stagedBuild }}
- buildConfig: ${{ parameters.buildConfig }}
- ${{ if eq(parameters.passPlatforms, true) }}:
- platforms: ${{ parameters.platforms }}
- helixQueueGroup: ${{ parameters.helixQueueGroup }}
- ${{ insert }}: ${{ parameters.jobParameters }}
+#- ${{ if containsValue(parameters.platforms, 'Browser_wasm_win') }}:
+ #- template: xplat-setup.yml
+ #parameters:
+ #jobTemplate: ${{ parameters.jobTemplate }}
+ #helixQueuesTemplate: ${{ parameters.helixQueuesTemplate }}
+ #variables: ${{ parameters.variables }}
+ #hostedOs: windows
+ #osGroup: Browser
+ #archType: wasm
+ #targetRid: browser-wasm
+ #platform: Browser_wasm_win
+ #jobParameters:
+ #runtimeFlavor: ${{ parameters.runtimeFlavor }}
+ #stagedBuild: ${{ parameters.stagedBuild }}
+ #buildConfig: ${{ parameters.buildConfig }}
+ #${{ if eq(parameters.passPlatforms, true) }}:
+ #platforms: ${{ parameters.platforms }}
+ #${{ insert }}: ${{ parameters.jobParameters }}
diff --git a/eng/pipelines/libraries/wasm-debugger-tests-then-helix.yml b/eng/pipelines/libraries/wasm-debugger-tests-then-helix.yml
new file mode 100644
index 00000000000000..bd0fd1d06f2e58
--- /dev/null
+++ b/eng/pipelines/libraries/wasm-debugger-tests-then-helix.yml
@@ -0,0 +1,48 @@
+parameters:
+ runtimeFlavor: ''
+ archType: ''
+ buildConfig: ''
+ creator: ''
+ helixQueues: ''
+ osGroup: ''
+ targetRid: ''
+ testRunNamePrefixSuffix: ''
+ testScope: 'innerloop' # innerloop | outerloop | all
+ interpreter: ''
+ condition: always()
+ extraHelixArguments: ''
+ shouldContinueOnError: false
+ scenarios: ''
+
+steps:
+ - script: $(_msbuildCommand) -restore
+ $(Build.SourcesDirectory)/src/mono/wasm/debugger/DebuggerTestSuite/DebuggerTestSuite.csproj
+ /p:Configuration=Debug
+ /p:RuntimeConfiguration=${{ parameters.buildConfig }} /p:ArchiveTests=true
+ /bl:$(Build.SourcesDirectory)/artifacts/log/$(_BuildConfig)/Wasm.Debugger.Tests.binlog
+ displayName: Build Wasm.Debugger.Tests
+ condition: and(succeeded(), ${{ parameters.condition }})
+ continueOnError: ${{ eq(parameters.shouldContinueOnError, true) }}
+
+ # Chain to helix
+ - template: /eng/pipelines/libraries/helix.yml
+ parameters:
+ archType: ${{ parameters.archType }}
+ buildConfig: ${{ parameters.buildConfig }}
+ condition: succeeded()
+ creator: ${{ parameters.creator }}
+ extraHelixArguments: ${{ parameters.extraHelixArguments }}
+ helixQueues: ${{ parameters.helixQueues }}
+ interpreter: ${{ parameters.interpreter }}
+ nameSuffix: ${{ parameters.nameSuffix }}
+ osGroup: ${{ parameters.osGroup }}
+ osSubgroup: ${{ parameters.osSubgroup }}
+ pgoType: ${{ parameters.pgoType }}
+ platform: ${{ parameters.platform }}
+ runtimeFlavor: ${{ parameters.runtimeFlavor }}
+ runtimeVariant: ${{ parameters.runtimeVariant }}
+ scenarios: ${{ parameters.scenarios }}
+ shouldContinueOnError: ${{ parameters.shouldContinueOnError }}
+ targetRid: ${{ parameters.targetRid }}
+ testRunNamePrefixSuffix: ${{ parameters.testRunNamePrefixSuffix }}
+ testScope: ${{ parameters.testScope }}
diff --git a/eng/pipelines/runtime.yml b/eng/pipelines/runtime.yml
index af8b9c116dd80c..00c30fce099799 100644
--- a/eng/pipelines/runtime.yml
+++ b/eng/pipelines/runtime.yml
@@ -279,48 +279,81 @@ jobs:
#
# Build the whole product using Mono and run libraries tests, multi-scenario
#
-- template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
- buildConfig: Release
- runtimeFlavor: mono
- platforms:
- - Browser_wasm
- variables:
- # map dependencies variables to local variables
- - name: librariesContainsChange
- value: $[ dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'] ]
- - name: monoContainsChange
- value: $[ dependencies.evaluate_paths.outputs['SetPathVars_mono.containsChange'] ]
- jobParameters:
- testGroup: innerloop
- nameSuffix: AllSubsets_Mono
- buildArgs: -s mono+libs+host+packs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true
- timeoutInMinutes: 180
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
- eq(variables['isFullMatrix'], true))
- # extra steps, run tests
- extraStepsTemplate: /eng/pipelines/libraries/helix.yml
- extraStepsParameters:
- creator: dotnet-bot
- testRunNamePrefixSuffix: Mono_$(_BuildConfig)
- scenarios:
- - normal
- - wasmtestonbrowser
- condition: >-
- or(
- eq(variables['librariesContainsChange'], true),
- eq(variables['monoContainsChange'], true),
- eq(variables['isFullMatrix'], true))
+#- template: /eng/pipelines/common/platform-matrix.yml
+ #parameters:
+ #jobTemplate: /eng/pipelines/common/global-build-job.yml
+ #helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
+ #buildConfig: Release
+ #runtimeFlavor: mono
+ #platforms:
+ #- Browser_wasm
+ #variables:
+ ## map dependencies variables to local variables
+ #- name: librariesContainsChange
+ #value: $[ dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'] ]
+ #- name: monoContainsChange
+ #value: $[ dependencies.evaluate_paths.outputs['SetPathVars_mono.containsChange'] ]
+ #jobParameters:
+ #testGroup: innerloop
+ #nameSuffix: AllSubsets_Mono
+ #buildArgs: -s mono+libs+host+packs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true
+ #timeoutInMinutes: 180
+ #condition: >-
+ #or(
+ #eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ #eq(dependencies.evaluate_paths.outputs['SetPathVars_mono.containsChange'], true),
+ #eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
+ #eq(variables['isFullMatrix'], true))
+ ## extra steps, run tests
+ #extraStepsTemplate: /eng/pipelines/libraries/helix.yml
+ #extraStepsParameters:
+ #creator: dotnet-bot
+ #testRunNamePrefixSuffix: Mono_$(_BuildConfig)
+ #scenarios:
+ #- normal
+ #- wasmtestonbrowser
+ #condition: >-
+ #or(
+ #eq(variables['librariesContainsChange'], true),
+ #eq(variables['monoContainsChange'], true),
+ #eq(variables['isFullMatrix'], true))
#
# Build the whole product using Mono and run libraries tests, for Wasm.Build.Tests
#
+#- template: /eng/pipelines/common/platform-matrix.yml
+ #parameters:
+ #jobTemplate: /eng/pipelines/common/global-build-job.yml
+ #helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
+ #buildConfig: Release
+ #runtimeFlavor: mono
+ #platforms:
+ #- Browser_wasm
+ #variables:
+ ## map dependencies variables to local variables
+ #- name: wasmbuildtestsContainsChange
+ #value: $[ dependencies.evaluate_paths.outputs['SetPathVars_wasmbuildtests.containsChange'] ]
+ #jobParameters:
+ #testGroup: innerloop
+ #nameSuffix: AllSubsets_Mono_WasmBuildTests
+ #buildArgs: -s mono+libs+host+packs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true /p:TestWasmBuildTests=true /p:TestAssemblies=false
+ #timeoutInMinutes: 180
+ #condition: >-
+ #or(
+ #eq(dependencies.evaluate_paths.outputs['SetPathVars_wasmbuildtests.containsChange'], true),
+ #eq(variables['isFullMatrix'], true))
+ ## extra steps, run tests
+ #extraStepsTemplate: /eng/pipelines/libraries/helix.yml
+ #extraStepsParameters:
+ #creator: dotnet-bot
+ #testRunNamePrefixSuffix: Mono_$(_BuildConfig)
+ #scenarios:
+ #- buildwasmapps
+ #condition: >-
+ #or(
+ #eq(variables['wasmbuildtestsContainsChange'], true),
+ #eq(variables['isFullMatrix'], true))
+
- template: /eng/pipelines/common/platform-matrix.yml
parameters:
jobTemplate: /eng/pipelines/common/global-build-job.yml
@@ -335,108 +368,108 @@ jobs:
value: $[ dependencies.evaluate_paths.outputs['SetPathVars_wasmbuildtests.containsChange'] ]
jobParameters:
testGroup: innerloop
- nameSuffix: AllSubsets_Mono_WasmBuildTests
- buildArgs: -s mono+libs+host+packs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true /p:TestWasmBuildTests=true /p:TestAssemblies=false
+ nameSuffix: WasmDebuggerTests
+ buildArgs: -s mono+libs -c $(_BuildConfig)
timeoutInMinutes: 180
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_wasmbuildtests.containsChange'], true),
- eq(variables['isFullMatrix'], true))
+ #condition: >-
+ #or(
+ #eq(dependencies.evaluate_paths.outputs['SetPathVars_wasmbuildtests.containsChange'], true),
+ #eq(variables['isFullMatrix'], true))
# extra steps, run tests
- extraStepsTemplate: /eng/pipelines/libraries/helix.yml
+ extraStepsTemplate: /eng/pipelines/libraries/wasm-debugger-tests-then-helix.yml
extraStepsParameters:
creator: dotnet-bot
testRunNamePrefixSuffix: Mono_$(_BuildConfig)
scenarios:
- - buildwasmapps
- condition: >-
- or(
- eq(variables['wasmbuildtestsContainsChange'], true),
- eq(variables['isFullMatrix'], true))
+ - wasmdebuggertests
+ #condition: >-
+ #or(
+ #eq(variables['wasmbuildtestsContainsChange'], true),
+ #eq(variables['isFullMatrix'], true))
#
# Build for Browser/wasm, with EnableAggressiveTrimming=true
#
-- template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
- buildConfig: Release
- runtimeFlavor: mono
- platforms:
- - Browser_wasm
- variables:
- # map dependencies variables to local variables
- - name: librariesContainsChange
- value: $[ dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'] ]
- - name: monoContainsChange
- value: $[ dependencies.evaluate_paths.outputs['SetPathVars_mono.containsChange'] ]
- jobParameters:
- testGroup: innerloop
- nameSuffix: AllSubsets_Mono_EAT
- buildArgs: -s mono+libs+host+packs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true $(_runSmokeTestsOnlyArg) /p:EnableAggressiveTrimming=true /p:BuildAOTTestsOnHelix=true /p:RunAOTCompilation=false
- timeoutInMinutes: 180
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
- eq(variables['isFullMatrix'], true))
- # extra steps, run tests
- extraStepsTemplate: /eng/pipelines/libraries/helix.yml
- extraStepsParameters:
- creator: dotnet-bot
- testRunNamePrefixSuffix: Mono_$(_BuildConfig)
- extraHelixArguments: /p:NeedsToBuildWasmAppsOnHelix=true $(_runSmokeTestsOnlyArg)
- scenarios:
- - normal
- condition: >-
- or(
- eq(variables['librariesContainsChange'], true),
- eq(variables['monoContainsChange'], true),
- eq(variables['isFullMatrix'], true))
+#- template: /eng/pipelines/common/platform-matrix.yml
+ #parameters:
+ #jobTemplate: /eng/pipelines/common/global-build-job.yml
+ #helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
+ #buildConfig: Release
+ #runtimeFlavor: mono
+ #platforms:
+ #- Browser_wasm
+ #variables:
+ ## map dependencies variables to local variables
+ #- name: librariesContainsChange
+ #value: $[ dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'] ]
+ #- name: monoContainsChange
+ #value: $[ dependencies.evaluate_paths.outputs['SetPathVars_mono.containsChange'] ]
+ #jobParameters:
+ #testGroup: innerloop
+ #nameSuffix: AllSubsets_Mono_EAT
+ #buildArgs: -s mono+libs+host+packs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true $(_runSmokeTestsOnlyArg) /p:EnableAggressiveTrimming=true /p:BuildAOTTestsOnHelix=true /p:RunAOTCompilation=false
+ #timeoutInMinutes: 180
+ #condition: >-
+ #or(
+ #eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ #eq(dependencies.evaluate_paths.outputs['SetPathVars_mono.containsChange'], true),
+ #eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
+ #eq(variables['isFullMatrix'], true))
+ ## extra steps, run tests
+ #extraStepsTemplate: /eng/pipelines/libraries/helix.yml
+ #extraStepsParameters:
+ #creator: dotnet-bot
+ #testRunNamePrefixSuffix: Mono_$(_BuildConfig)
+ #extraHelixArguments: /p:NeedsToBuildWasmAppsOnHelix=true $(_runSmokeTestsOnlyArg)
+ #scenarios:
+ #- normal
+ #condition: >-
+ #or(
+ #eq(variables['librariesContainsChange'], true),
+ #eq(variables['monoContainsChange'], true),
+ #eq(variables['isFullMatrix'], true))
-#
-# Build for Browser/wasm with RunAOTCompilation=true
-#
-- template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
- buildConfig: Release
- runtimeFlavor: mono
- platforms:
- - Browser_wasm
- variables:
- # map dependencies variables to local variables
- - name: librariesContainsChange
- value: $[ dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'] ]
- - name: monoContainsChange
- value: $[ dependencies.evaluate_paths.outputs['SetPathVars_mono.containsChange'] ]
- jobParameters:
- testGroup: innerloop
- nameSuffix: AllSubsets_Mono_AOT
- buildArgs: -s mono+libs+host+packs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true $(_runSmokeTestsOnlyArg) /p:EnableAggressiveTrimming=true /p:BuildAOTTestsOnHelix=true /p:RunAOTCompilation=true
- timeoutInMinutes: 180
- condition: >-
- or(
- eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_mono.containsChange'], true),
- eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
- eq(variables['isFullMatrix'], true))
- # extra steps, run tests
- extraStepsTemplate: /eng/pipelines/libraries/helix.yml
- extraStepsParameters:
- creator: dotnet-bot
- testRunNamePrefixSuffix: Mono_$(_BuildConfig)
- extraHelixArguments: /p:NeedsToBuildWasmAppsOnHelix=true $(_runSmokeTestsOnlyArg)
- scenarios:
- - normal
- condition: >-
- or(
- eq(variables['librariesContainsChange'], true),
- eq(variables['monoContainsChange'], true),
- eq(variables['isFullMatrix'], true))
+##
+## Build for Browser/wasm with RunAOTCompilation=true
+##
+#- template: /eng/pipelines/common/platform-matrix.yml
+ #parameters:
+ #jobTemplate: /eng/pipelines/common/global-build-job.yml
+ #helixQueuesTemplate: /eng/pipelines/libraries/helix-queues-setup.yml
+ #buildConfig: Release
+ #runtimeFlavor: mono
+ #platforms:
+ #- Browser_wasm
+ #variables:
+ ## map dependencies variables to local variables
+ #- name: librariesContainsChange
+ #value: $[ dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'] ]
+ #- name: monoContainsChange
+ #value: $[ dependencies.evaluate_paths.outputs['SetPathVars_mono.containsChange'] ]
+ #jobParameters:
+ #testGroup: innerloop
+ #nameSuffix: AllSubsets_Mono_AOT
+ #buildArgs: -s mono+libs+host+packs+libs.tests -c $(_BuildConfig) /p:ArchiveTests=true $(_runSmokeTestsOnlyArg) /p:EnableAggressiveTrimming=true /p:BuildAOTTestsOnHelix=true /p:RunAOTCompilation=true
+ #timeoutInMinutes: 180
+ #condition: >-
+ #or(
+ #eq(dependencies.evaluate_paths.outputs['SetPathVars_libraries.containsChange'], true),
+ #eq(dependencies.evaluate_paths.outputs['SetPathVars_mono.containsChange'], true),
+ #eq(dependencies.evaluate_paths.outputs['SetPathVars_installer.containsChange'], true),
+ #eq(variables['isFullMatrix'], true))
+ ## extra steps, run tests
+ #extraStepsTemplate: /eng/pipelines/libraries/helix.yml
+ #extraStepsParameters:
+ #creator: dotnet-bot
+ #testRunNamePrefixSuffix: Mono_$(_BuildConfig)
+ #extraHelixArguments: /p:NeedsToBuildWasmAppsOnHelix=true $(_runSmokeTestsOnlyArg)
+ #scenarios:
+ #- normal
+ #condition: >-
+ #or(
+ #eq(variables['librariesContainsChange'], true),
+ #eq(variables['monoContainsChange'], true),
+ #eq(variables['isFullMatrix'], true))
# Build and test libraries under single-file publishing
- template: /eng/pipelines/common/platform-matrix.yml
@@ -463,38 +496,38 @@ jobs:
#
# Build the whole product using Mono and run runtime tests
#
-- template: /eng/pipelines/common/platform-matrix.yml
- parameters:
- jobTemplate: /eng/pipelines/common/global-build-job.yml
- helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
- buildConfig: Release
- runtimeFlavor: mono
- platforms:
- - Browser_wasm
- variables:
- - ${{ if and(eq(variables['System.TeamProject'], 'public'), eq(variables['Build.Reason'], 'PullRequest')) }}:
- - name: _HelixSource
- value: pr/dotnet/runtime/$(Build.SourceBranch)
- - ${{ if and(eq(variables['System.TeamProject'], 'public'), ne(variables['Build.Reason'], 'PullRequest')) }}:
- - name: _HelixSource
- value: ci/dotnet/runtime/$(Build.SourceBranch)
- - name: timeoutPerTestInMinutes
- value: 10
- - name: timeoutPerTestCollectionInMinutes
- value: 200
- jobParameters:
- testGroup: innerloop
- nameSuffix: AllSubsets_Mono_RuntimeTests
- buildArgs: -s mono+libs -c $(_BuildConfig)
- timeoutInMinutes: 180
- condition: >-
- eq(variables['isFullMatrix'], true)
- # NOTE: Per PR test execution is not recommended for mobile runtime tests
- # extra steps, run tests
- extraStepsTemplate: /eng/pipelines/common/templates/runtimes/wasm-runtime-and-send-to-helix.yml
- extraStepsParameters:
- creator: dotnet-bot
- testRunNamePrefixSuffix: Mono_$(_BuildConfig)
+#- template: /eng/pipelines/common/platform-matrix.yml
+ #parameters:
+ #jobTemplate: /eng/pipelines/common/global-build-job.yml
+ #helixQueuesTemplate: /eng/pipelines/coreclr/templates/helix-queues-setup.yml
+ #buildConfig: Release
+ #runtimeFlavor: mono
+ #platforms:
+ #- Browser_wasm
+ #variables:
+ #- ${{ if and(eq(variables['System.TeamProject'], 'public'), eq(variables['Build.Reason'], 'PullRequest')) }}:
+ #- name: _HelixSource
+ #value: pr/dotnet/runtime/$(Build.SourceBranch)
+ #- ${{ if and(eq(variables['System.TeamProject'], 'public'), ne(variables['Build.Reason'], 'PullRequest')) }}:
+ #- name: _HelixSource
+ #value: ci/dotnet/runtime/$(Build.SourceBranch)
+ #- name: timeoutPerTestInMinutes
+ #value: 10
+ #- name: timeoutPerTestCollectionInMinutes
+ #value: 200
+ #jobParameters:
+ #testGroup: innerloop
+ #nameSuffix: AllSubsets_Mono_RuntimeTests
+ #buildArgs: -s mono+libs -c $(_BuildConfig)
+ #timeoutInMinutes: 180
+ #condition: >-
+ #eq(variables['isFullMatrix'], true)
+ ## NOTE: Per PR test execution is not recommended for mobile runtime tests
+ ## extra steps, run tests
+ #extraStepsTemplate: /eng/pipelines/common/templates/runtimes/wasm-runtime-and-send-to-helix.yml
+ #extraStepsParameters:
+ #creator: dotnet-bot
+ #testRunNamePrefixSuffix: Mono_$(_BuildConfig)
#
# Build the whole product using Mono for Android and run runtime tests with Android emulator
diff --git a/eng/testing/scenarios/WasmDebuggerTestsJobsList.txt b/eng/testing/scenarios/WasmDebuggerTestsJobsList.txt
new file mode 100644
index 00000000000000..d6405c516a4f28
--- /dev/null
+++ b/eng/testing/scenarios/WasmDebuggerTestsJobsList.txt
@@ -0,0 +1,18 @@
+DebuggerTests.ArrayTests
+DebuggerTests.AssignmentTests
+DebuggerTests.AsyncTests
+DebuggerTests.BadHarnessInitTests
+DebuggerTests.BreakpointTests
+DebuggerTests.CallFunctionOnTests
+DebuggerTests.CustomViewTests
+DebuggerTests.DateTimeList
+DebuggerTests.DelegateTests
+DebuggerTests.EvaluateOnCallFrameTests
+DebuggerTests.ExceptionTests
+DebuggerTests.GetPropertiesTests
+DebuggerTests.HarnessTests
+DebuggerTests.MonoJsTests
+DebuggerTests.PointerTests
+DebuggerTests.SetVariableValueTests
+DebuggerTests.SourceList
+DebuggerTests.SteppingTests
diff --git a/src/libraries/System.Runtime.Extensions/tests/System/Diagnostics/Stopwatch.cs b/src/libraries/System.Runtime.Extensions/tests/System/Diagnostics/Stopwatch.cs
index 672e6af2f32acf..77b94ffa04d1e3 100644
--- a/src/libraries/System.Runtime.Extensions/tests/System/Diagnostics/Stopwatch.cs
+++ b/src/libraries/System.Runtime.Extensions/tests/System/Diagnostics/Stopwatch.cs
@@ -11,19 +11,14 @@ public static class StopwatchTests
{
private static readonly ManualResetEvent s_sleepEvent = new ManualResetEvent(false);
+ // workaround for issue: https://github.com/dotnet/runtime/issues/62021
+ private static readonly int s_defaultSleepTimeMs = PlatformDetection.IsBrowser ? 5 : 1;
+
[Fact]
public static void GetTimestamp()
{
long ts1 = Stopwatch.GetTimestamp();
- if (PlatformDetection.IsBrowser)
- {
- // workaround for issue: https://github.com/dotnet/runtime/issues/62021
- Sleep(5);
- }
- else
- {
- Sleep();
- }
+ Sleep(s_defaultSleepTimeMs);
long ts2 = Stopwatch.GetTimestamp();
Assert.NotEqual(ts1, ts2);
}
@@ -38,20 +33,20 @@ public static void ConstructStartAndStop()
Assert.Equal(0, watch.ElapsedMilliseconds);
watch.Start();
Assert.True(watch.IsRunning);
- Sleep();
+ Sleep(s_defaultSleepTimeMs);
Assert.True(watch.Elapsed > TimeSpan.Zero);
watch.Stop();
Assert.False(watch.IsRunning);
var e1 = watch.Elapsed;
- Sleep();
+ Sleep(s_defaultSleepTimeMs);
var e2 = watch.Elapsed;
Assert.Equal(e1, e2);
Assert.Equal((long)e1.TotalMilliseconds, watch.ElapsedMilliseconds);
var t1 = watch.ElapsedTicks;
- Sleep();
+ Sleep(s_defaultSleepTimeMs);
var t2 = watch.ElapsedTicks;
Assert.Equal(t1, t2);
}
@@ -63,7 +58,7 @@ public static void StartNewAndReset()
Assert.True(watch.IsRunning);
watch.Start(); // should be no-op
Assert.True(watch.IsRunning);
- Sleep();
+ Sleep(s_defaultSleepTimeMs);
Assert.True(watch.Elapsed > TimeSpan.Zero);
watch.Reset();
@@ -130,7 +125,7 @@ public static void ElapsedMilliseconds_WithinExpectedWindow()
Assert.True(false, $"All {AllowedTries} fell outside of {WindowFactor} window of {SleepTime} sleep time: {string.Join(", ", results)}");
}
- private static void Sleep(int milliseconds = 1)
+ private static void Sleep(int milliseconds)
{
s_sleepEvent.WaitOne(milliseconds);
}
diff --git a/src/libraries/sendtohelixhelp.proj b/src/libraries/sendtohelixhelp.proj
index c3f4fc1549607b..16ebb898f70e9f 100644
--- a/src/libraries/sendtohelixhelp.proj
+++ b/src/libraries/sendtohelixhelp.proj
@@ -32,6 +32,7 @@
<_workItemTimeout Condition="'$(Scenario)' != '' and '$(_workItemTimeout)' == '' and ('$(TargetArchitecture)' == 'arm64' or '$(TargetArchitecture)' == 'arm')">01:00:00
<_workItemTimeout Condition="'$(Scenario)' == 'BuildWasmApps' and '$(_workItemTimeout)' == ''">01:30:00
<_workItemTimeout Condition="'$(TargetOS)' == 'Browser' and '$(NeedsToBuildWasmAppsOnHelix)' == 'true'">01:00:00
+ <_workItemTimeout Condition="'$(Scenario)' == 'wasmdebuggertests'">01:30:00
<_workItemTimeout Condition="'$(Scenario)' == '' and '$(_workItemTimeout)' == '' and '$(Outerloop)' == 'true'">00:20:00
<_workItemTimeout Condition="'$(Scenario)' == '' and '$(_workItemTimeout)' == ''">00:15:00
<_workItemTimeout Condition="'$(Scenario)' != '' and '$(_workItemTimeout)' == ''">00:30:00
@@ -40,6 +41,7 @@
$(TestArchiveRuntimeFile)
+ $(ArtifactsObjDir)\DebuggerTestSuite.zip
$(TestArchiveTestsRoot)**/*.zip
$(Configuration)
@@ -55,17 +57,21 @@
$(TestRunNamePrefix)$(Scenario)-
$(RepositoryEngineeringDir)\testing\scenarios\BuildWasmAppsJobsList.txt
+ $(RepositoryEngineeringDir)\testing\scenarios\WasmDebuggerTestsJobsList.txt
+ true
$(WaitForWorkItemCompletion)
true
-
+
true
$(RepoRoot)src\mono\wasm\emsdk\
+ true
true
true
true
+ true
dotnet-workload
sdk-no-workload
@@ -116,7 +122,7 @@
We also run some network tests to this server and so, we are running it on both HTTP and HTTPS.
For the HTTPS endpoint we need development SSL certificate.
-->
- true
+ true
true
@@ -448,6 +454,10 @@
+
+
+
+
<_WorkItem Include="$(TestArchiveRoot)browseronly/**/*.zip" Condition="'$(TargetOS)' == 'Browser' and '$(Scenario)' == 'WasmTestOnBrowser'" />
-
+
%(Identity)
$(HelixCommand)
$(_workItemTimeout)
@@ -469,6 +479,7 @@
<_BuildWasmAppsPayloadArchive>@(_WorkItem)
+ <_WasmDebuggerTestsPayloadArchive>@(_WorkItem)
@@ -481,6 +492,18 @@
+
+
+ $(_WasmDebuggerTestsPayloadArchive)
+
+ export TEST_FILTER="--filter FullyQualifiedName~%(Identity)"
+
+
+ $(HelixCommand)
+ $(_workItemTimeout)
+
+
+
dotnet exec $XHARNESS_CLI_PATH
$HELIX_WORKITEM_UPLOAD_ROOT/xharness-output
@@ -526,6 +549,10 @@
ContinueOnError="true"
IgnoreExitCode="true"
IgnoreStandardErrorWarningFormat="true" />
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ dotnet test DebuggerTestSuite/DebuggerTestSuite.dll @(TestCommandArg, ' ') 2>&1 | tee $LOG_PATH/console-output.txt
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/mono/wasm/debugger/DebuggerTestSuite/Inspector.cs b/src/mono/wasm/debugger/DebuggerTestSuite/Inspector.cs
index 826d860c21e4d4..c4685767b7abe2 100644
--- a/src/mono/wasm/debugger/DebuggerTestSuite/Inspector.cs
+++ b/src/mono/wasm/debugger/DebuggerTestSuite/Inspector.cs
@@ -42,7 +42,11 @@ public Inspector()
Token = _cancellationTokenSource.Token;
_loggerFactory = LoggerFactory.Create(builder =>
- builder.AddSimpleConsole(options => options.SingleLine = true)
+ builder.AddSimpleConsole(options =>
+ {
+ options.SingleLine = true;
+ options.TimestampFormat = "[HH:mm:ss] ";
+ })
.AddFilter(null, LogLevel.Trace));
Client = new InspectorClient(_loggerFactory.CreateLogger());
diff --git a/src/mono/wasm/debugger/DebuggerTestSuite/TestHarnessProxy.cs b/src/mono/wasm/debugger/DebuggerTestSuite/TestHarnessProxy.cs
index 7a5c30d9cc9e82..0482292875b723 100644
--- a/src/mono/wasm/debugger/DebuggerTestSuite/TestHarnessProxy.cs
+++ b/src/mono/wasm/debugger/DebuggerTestSuite/TestHarnessProxy.cs
@@ -38,7 +38,11 @@ public static Task Start(string chromePath, string appPath, string pagePath)
})
.ConfigureLogging(logging =>
{
- logging.AddSimpleConsole(options => options.SingleLine = true)
+ logging.AddSimpleConsole(options =>
+ {
+ options.SingleLine = true;
+ options.TimestampFormat = "[HH:mm:ss] ";
+ })
.AddFilter(null, LogLevel.Information);
})
.ConfigureServices((ctx, services) =>
@@ -62,4 +66,4 @@ public static Task Start(string chromePath, string appPath, string pagePath)
return hostTask;
}
}
-}
\ No newline at end of file
+}
diff --git a/src/mono/wasm/debugger/DebuggerTestSuite/appsettings.json b/src/mono/wasm/debugger/DebuggerTestSuite/appsettings.json
index 4d7c82ac0ee05b..61e59678c7c0c2 100644
--- a/src/mono/wasm/debugger/DebuggerTestSuite/appsettings.json
+++ b/src/mono/wasm/debugger/DebuggerTestSuite/appsettings.json
@@ -6,7 +6,7 @@
"Microsoft.Hosting.Lifetime": "Information",
"Microsoft.WebAssembly.Diagnostics.TestHarnessProxy": "Information",
"Microsoft.WebAssembly.Diagnostics.DevToolsProxy": "Information",
- "DebuggerTests.Inspector": "Information"
+ "DebuggerTests.Inspector": "Trace"
}
}
}
diff --git a/src/mono/wasm/debugger/tests/debugger-test/debugger-test.csproj b/src/mono/wasm/debugger/tests/debugger-test/debugger-test.csproj
index c3cc1800aad87e..9641163c41dd7b 100644
--- a/src/mono/wasm/debugger/tests/debugger-test/debugger-test.csproj
+++ b/src/mono/wasm/debugger/tests/debugger-test/debugger-test.csproj
@@ -21,7 +21,7 @@
-
+
@@ -44,30 +44,32 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+