summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--azure-pipelines.yml17
-rw-r--r--eng/send-to-helix-step.yml1
-rw-r--r--eng/test-job.yml2
-rw-r--r--tests/helixpublishwitharcade.proj6
4 files changed, 22 insertions, 4 deletions
diff --git a/azure-pipelines.yml b/azure-pipelines.yml
index 0762ed408b..a837b7391b 100644
--- a/azure-pipelines.yml
+++ b/azure-pipelines.yml
@@ -45,6 +45,7 @@ jobs:
## \---------> Pri1 -----------------> plain runtests
## | \----------------> jitstress
## | \----------------> gcstress
+## | \----------------> runincontext
## | \----------------> maybe more (dynamically selected runtest modes)
## |
## \---------> Pri1 crossgen --------> plain runtests
@@ -155,6 +156,11 @@ jobs:
platforms:
- Linux_x64
- Windows_NT_x64
+ ${{ if eq(variables['Build.DefinitionName'], 'coreclr-runincontext') }}:
+ platforms:
+ - Linux_x64
+ - Windows_NT_x64
+ - Windows_NT_x86
#
# Release builds
@@ -199,7 +205,7 @@ jobs:
#
# The test jobs that can be triggered by a PR, manually from ADO and that are scheduled
# TODO: This long 'in' condition needs to be make data driven, perhaps by adding another layer of template.
-- ${{ if and(eq(variables['System.TeamProject'], 'public'), in(variables['Build.Reason'], 'PullRequest', 'Manual', 'Schedule'), in(variables['Build.DefinitionName'], 'coreclr-ci', 'coreclr-outerloop', 'coreclr-outerloop-jitstress', 'coreclr-outerloop-jitstress-isas-arm', 'coreclr-outerloop-jitstress-isas-x86', 'coreclr-outerloop-jitstressregs-x86', 'coreclr-outerloop-jitstressregs', 'coreclr-outerloop-jitstress2-jitstressregs', 'coreclr-outerloop-gcstress0x3-gcstress0xc', 'coreclr-outerloop-gcstress-extra', 'coreclr-outerloop-r2r', 'coreclr-outerloop-r2r-extra')) }}:
+- ${{ if and(eq(variables['System.TeamProject'], 'public'), in(variables['Build.Reason'], 'PullRequest', 'Manual', 'Schedule'), in(variables['Build.DefinitionName'], 'coreclr-ci', 'coreclr-outerloop', 'coreclr-outerloop-jitstress', 'coreclr-outerloop-jitstress-isas-arm', 'coreclr-outerloop-jitstress-isas-x86', 'coreclr-outerloop-jitstressregs-x86', 'coreclr-outerloop-jitstressregs', 'coreclr-outerloop-jitstress2-jitstressregs', 'coreclr-outerloop-gcstress0x3-gcstress0xc', 'coreclr-outerloop-gcstress-extra', 'coreclr-outerloop-r2r', 'coreclr-outerloop-r2r-extra', 'coreclr-runincontext')) }}:
- template: eng/platform-matrix.yml
parameters:
jobTemplate: test-job.yml
@@ -237,6 +243,11 @@ jobs:
- Linux_x64
- Windows_NT_x64
- Windows_NT_x86
+ ${{ if eq(variables['Build.DefinitionName'], 'coreclr-runincontext') }}:
+ platforms:
+ - Linux_x64
+ - Windows_NT_x64
+ - Windows_NT_x86
jobParameters:
${{ if eq(variables['Build.DefinitionName'], 'coreclr-ci') }}:
testGroup: innerloop
@@ -266,6 +277,10 @@ jobs:
testGroup: r2r-extra
readyToRun: true
displayNameArgs: R2R
+ ${{ if eq(variables['Build.DefinitionName'], 'coreclr-runincontext') }}:
+ testGroup: outerloop
+ runInUnloadableContext: true
+ displayNameArgs: RunInContext
# ReadyToRun test jobs that are triggered by default from a PR.
diff --git a/eng/send-to-helix-step.yml b/eng/send-to-helix-step.yml
index 29c677c48e..9f7816c35b 100644
--- a/eng/send-to-helix-step.yml
+++ b/eng/send-to-helix-step.yml
@@ -16,6 +16,7 @@ parameters:
timeoutPerTestInMinutes: ''
runCrossGen: ''
helixProjectArguments: ''
+ runInUnloadableContext: ''
steps:
- ${{ if eq(parameters.osGroup, 'Windows_NT') }}:
diff --git a/eng/test-job.yml b/eng/test-job.yml
index 522ef8bebd..239e52b496 100644
--- a/eng/test-job.yml
+++ b/eng/test-job.yml
@@ -10,6 +10,7 @@ parameters:
# If true, run the corefx tests instead of the coreclr ones
corefxTests: false
displayNameArgs: ''
+ runInUnloadableContext: false
### Test job
@@ -205,6 +206,7 @@ jobs:
timeoutPerTestInMinutes: 90
runCrossGen: ${{ parameters.readyToRun }}
+ runInUnloadableContext: ${{ parameters.runInUnloadableContext }}
${{ if eq(variables['System.TeamProject'], 'internal') }}:
# Access token variable for internal project from the
diff --git a/tests/helixpublishwitharcade.proj b/tests/helixpublishwitharcade.proj
index c7994c3293..a361d4b58e 100644
--- a/tests/helixpublishwitharcade.proj
+++ b/tests/helixpublishwitharcade.proj
@@ -127,8 +127,8 @@
</ItemGroup>
<Copy SourceFiles="@(_XUnitConsoleRunnerFiles)" DestinationFolder="$(CoreRootDirectory)" />
- <Copy SourceFiles="$(MSBuildThisFileDirectory)\scripts\runincontext.cmd" DestinationFolder="$(CoreRootDirectory)" Condition=" '$(TargetsWindows)' == 'true' and '$(RunInUnloadableContext)' == 'true'" />
- <Copy SourceFiles="$(MSBuildThisFileDirectory)/scripts/runincontext.sh" DestinationFolder="$(CoreRootDirectory)" Condition=" '$(TargetsWindows)' != 'true' and '$(RunInUnloadableContext)' == 'true'" />
+ <Copy SourceFiles="$(MSBuildThisFileDirectory)\scripts\runincontext.cmd" DestinationFolder="$(CoreRootDirectory)" Condition=" '$(TargetsWindows)' == 'true' and '$(_RunInUnloadableContext)' == 'true'" />
+ <Copy SourceFiles="$(MSBuildThisFileDirectory)/scripts/runincontext.sh" DestinationFolder="$(CoreRootDirectory)" Condition=" '$(TargetsWindows)' != 'true' and '$(_RunInUnloadableContext)' == 'true'" />
</Target>
<Target Name="CreateTestEnvFiles">
@@ -193,7 +193,7 @@
<HelixPreCommand Include="export CORE_ROOT=$HELIX_CORRELATION_PAYLOAD" />
<HelixPreCommand Include="export RunCrossGen=1" Condition=" '$(RunCrossGen)' == 'true' " />
<HelixPreCommand Include="export RunInUnloadableContext=1" Condition=" '$(RunInUnloadableContext)' == 'true' " />
- <HelixPreCommand Include="export CLRCustomTestLauncher=$HELIX_WORKITEM_PAYLOAD/runincontext.sh" Condition=" '$(RunInUnloadableContext)' == 'true' " />
+ <HelixPreCommand Include="export CLRCustomTestLauncher=$HELIX_CORRELATION_PAYLOAD/runincontext.sh" Condition=" '$(RunInUnloadableContext)' == 'true' " />
<HelixPreCommand Include="export __TestEnv=$HELIX_WORKITEM_PAYLOAD/$(TestEnvFileName)" />
<HelixPreCommand Include="export __TestTimeout=$(TimeoutPerTestInMilliseconds)" Condition=" '$(TimeoutPerTestInMilliseconds)' != '' " />
<HelixPreCommand Include="cat $__TestEnv" />