Skip to content

Add interpreter pipeline #117254

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 2 commits into from
Jul 4, 2025
Merged

Conversation

eduardo-vp
Copy link
Member

@eduardo-vp eduardo-vp commented Jul 2, 2025

Original PR: #116844. The reason why is started to trigger automatically on PRs is that on Azure DevOps, the switch "Require a team member's comment before building a pull request" was not enabled. It's enabled now and verified that it doesn't get triggered automatically but can be triggered through the azure-pipelines bot.

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.

@Copilot Copilot AI review requested due to automatic review settings July 2, 2025 23:46
@github-actions github-actions bot added the needs-area-label An area label is needed to ensure this gets routed to the appropriate area owners label Jul 2, 2025
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

The PR adds support for running pri1 tests under the interpreter and updates pipeline definitions to enable this mode while disabling automatic triggers. It also consolidates duplicated Bash launch command blocks into a single block.

  • Introduce _RunInterpreter flag and propagate it to Helix pre-commands in project files
  • Merge ARM64-specific Bash test launcher block into the main block (but missing custom logic)
  • Define a new interpreter-only pipeline with pr: none and trigger: none
  • Extend common templates (send-to-helix-step.yml, run-test-job.yml) with runInterpreter parameter

Reviewed Changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
src/tests/Common/helixpublishwitharcade.proj Added _RunInterpreter property and HelixPreCommand entries for it
src/tests/Common/CLRTest.Execute.Bash.targets Consolidated two <BashCLRTestLaunchCmds> blocks into one
eng/pipelines/coreclr/interpreter.yml Created a disabled-trigger interpreter pipeline
eng/pipelines/common/templates/runtimes/send-to-helix-step.yml Added runInterpreter parameter mapping
eng/pipelines/common/templates/runtimes/run-test-job.yml Added runInterpreter parameter to test-job template
Comments suppressed due to low confidence (1)

src/tests/Common/CLRTest.Execute.Bash.targets:374

  • The custom launcher logic for setting LAUNCHER, handling CLRCustomTestLauncher, and support for the interpreter and LLDB was removed when merging the ARM64 block; it needs to be reintroduced into this consolidated block.
      <BashCLRTestLaunchCmds Condition="'$(CLRTestKind)' == 'BuildAndRun' And '$(TargetOS)' != 'browser' And '$(TargetOS)' != 'android'">

@am11 am11 added area-CodeGen-Interpreter-coreclr and removed needs-area-label An area label is needed to ensure this gets routed to the appropriate area owners labels Jul 2, 2025
Copy link
Contributor

Tagging subscribers to this area: @BrzVlad, @janvorli, @kg
See info in area-owners.md if you want to be subscribed.

@eduardo-vp
Copy link
Member Author

/azp run runtime-interpreter

Copy link

Azure Pipelines could not run because the pipeline triggers exclude this branch/path.

@eduardo-vp
Copy link
Member Author

eduardo-vp commented Jul 3, 2025

Verified that the pipeline didn't get automatically triggered since this switch is enabled for the interpreter pipeline now

image

@eduardo-vp
Copy link
Member Author

/azp run runtime-interpreter

Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@eduardo-vp eduardo-vp requested a review from mangod9 July 4, 2025 00:37
@mangod9
Copy link
Member

mangod9 commented Jul 4, 2025

assume this is the same change then with no other changes? The config change had to be done manually?

@eduardo-vp
Copy link
Member Author

Yes, it's the same change but the pipeline had to be manually configured in Azure DevOps. This is one of the few settings that can't be configured inside the YAML itself

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

Successfully merging this pull request may close these issues.

3 participants