Skip to content

Add interpreter pipeline #116844

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 10 commits into from
Jul 1, 2025
Merged

Conversation

eduardo-vp
Copy link
Member

@eduardo-vp eduardo-vp commented Jun 20, 2025

Adding a pipeline that runs pri1 tests using the interpreter.

After taking a look with @janvorli, updated src/tests/Common/CLRTest.Execute.Bash.targets since there were two BashCLRTestLaunchCmds blocks under the condition '$(CLRTestKind)' == 'BuildAndRun' And '$(TargetOS)' != 'browser' And '$(TargetOS)' != 'android', one for arm64 and one for everything but arm64. However, turns out it's no longer necessary to split in two separate blocks anymore, the logic should be the same one for both. In particular, the ability to use the interpreter and the support for lldb was present in only one of them whereas it should be present in both.

Copy link
Contributor

Tagging subscribers to this area: @dotnet/runtime-infrastructure
See info in area-owners.md if you want to be subscribed.

@eduardo-vp
Copy link
Member Author

/azp run runtime-coreclr outerloop

Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@eduardo-vp
Copy link
Member Author

/azp run runtime-coreclr outerloop

Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@eduardo-vp eduardo-vp force-pushed the interpreter-tests-ci branch from 42abcf8 to af49e63 Compare June 23, 2025 19:55
@eduardo-vp eduardo-vp marked this pull request as ready for review June 23, 2025 20:07
@Copilot Copilot AI review requested due to automatic review settings June 23, 2025 20:07
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds support for running pri1 tests using the interpreter by introducing a dedicated pipeline and wiring a RunInterpreter flag through Helix publishing.

  • Extended helixpublishwitharcade.proj to define and consume a _RunInterpreter MSBuild property and emit Helix pre-commands.
  • Created eng/pipelines/coreclr/interpreter.yml to build CoreCLR in debug/release/checked configurations and invoke tests with runInterpreter: true.
  • Updated common templates (send-to-helix-step.yml, run-test-job.yml) to accept and forward the runInterpreter parameter.

Reviewed Changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated no comments.

File Description
src/tests/Common/helixpublishwitharcade.proj Added _RunInterpreter property and corresponding Windows/Linux Helix pre-commands.
eng/pipelines/coreclr/interpreter.yml New pipeline file for interpreter-based builds and test runs.
eng/pipelines/common/templates/runtimes/send-to-helix-step.yml Added runInterpreter parameter and mapped it to _RunInterpreter.
eng/pipelines/common/templates/runtimes/run-test-job.yml Introduced runInterpreter parameter with default false and propagated it.
Comments suppressed due to low confidence (1)

eng/pipelines/coreclr/interpreter.yml:16

  • [nitpick] The pipeline duplicates the platform matrix definitions across multiple build and test jobs. Consider extracting the platform lists into a shared variable or template to reduce duplication and make future updates easier.
      - template: /eng/pipelines/common/platform-matrix.yml

@eduardo-vp
Copy link
Member Author

/azp run runtime-interpreter-tests-ci

Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@jkotas
Copy link
Member

jkotas commented Jun 25, 2025

/azp run runtime-interpreter-tests-ci

Can we rename this to runtime-interpreter-tests or just runtime-interpreter for consistency? We do not have -ci suffix in names of any existing runs. (Noticed in #116310 (comment).)

@eduardo-vp
Copy link
Member Author

/azp list

Copy link

CI/CD Pipelines for this repository:

@janvorli
Copy link
Member

I still don't see arm64 linux / osx in the result of that run.

@eduardo-vp
Copy link
Member Author

/azp run runtime-interpreter

Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@eduardo-vp eduardo-vp merged commit 359769e into dotnet:main Jul 1, 2025
157 of 171 checks passed
@eduardo-vp eduardo-vp deleted the interpreter-tests-ci branch July 1, 2025 21:08
@jkotas
Copy link
Member

jkotas commented Jul 2, 2025

This is triggering and causing a lot of failures on most (all?) PRs now. For example, #109006 and #116471. Could you please look into it and switch it to manual trigger?

jkotas added a commit that referenced this pull request Jul 2, 2025
@jkotas
Copy link
Member

jkotas commented Jul 2, 2025

Submitted revert #117234

jkotas added a commit that referenced this pull request Jul 2, 2025
@mangod9
Copy link
Member

mangod9 commented Jul 2, 2025

yeah this was always meant to be manually triggered initially. Eduardo please check why it's affecting PRs.

@jkoritzinsky
Copy link
Member

The manual trigger setting needs to be set up by Eng Services First Responder. We can't do it ourselves.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

5 participants