Skip to content

Enable Helix Job Monitor for the runtime pipeline#129690

Open
premun wants to merge 13 commits into
dotnet:mainfrom
premun:prvysoky/helix-job-monitor-rebased
Open

Enable Helix Job Monitor for the runtime pipeline#129690
premun wants to merge 13 commits into
dotnet:mainfrom
premun:prvysoky/helix-job-monitor-rebased

Conversation

@premun

@premun premun commented Jun 22, 2026

Copy link
Copy Markdown
Member
  • Add useHelixMonitor parameter to all helix pipeline templates
  • Enable Helix Monitor in runtime.yml for all test legs
  • Add helix-job-monitor.yml template job at the top of the Build stage
  • Add Microsoft.DotNet.Helix.JobMonitor dependency (same version as Arcade)
  • Pass EnableHelixJobMonitor MSBuild property through send-to-helix

dotnet/arcade#16731

Copilot AI review requested due to automatic review settings June 22, 2026 07:36
@premun premun requested a review from akoeplinger as a code owner June 22, 2026 07:36
@dotnet-policy-service

Copy link
Copy Markdown
Contributor

Tagging subscribers to this area: @akoeplinger, @matouskozak, @simonrozsival
See info in area-owners.md if you want to be subscribed.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

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 wires up Helix Job Monitor support across the runtime Azure DevOps pipelines by introducing a useHelixMonitor parameter through the relevant YAML templates, enabling it for the runtime pipeline test legs, and adding the Helix Job Monitor .NET tool/dependency so the monitor job can run.

Changes:

  • Add a HelixJobMonitor job to eng/pipelines/runtime.yml (Build stage) using the shared eng/common template.
  • Plumb a useHelixMonitor parameter through Helix-related pipeline templates and pass /p:EnableHelixJobMonitor=... through the various “send to helix” paths.
  • Add Microsoft.DotNet.Helix.JobMonitor tool/dependency and pin it in .config/dotnet-tools.json.

Reviewed changes

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

Show a summary per file
File Description
eng/Version.Details.xml Adds the Microsoft.DotNet.Helix.JobMonitor toolset dependency entry.
eng/Version.Details.props Adds version properties for the Helix Job Monitor dependency.
eng/pipelines/runtime.yml Adds the Helix Job Monitor job and enables useHelixMonitor: true across runtime pipeline test legs.
eng/pipelines/libraries/run-test-job.yml Introduces useHelixMonitor parameter and forwards it into the libraries Helix submission step.
eng/pipelines/libraries/helix.yml Accepts useHelixMonitor and passes /p:EnableHelixJobMonitor=... into sendtohelix.proj.
eng/pipelines/installer/helix.yml Adds useHelixMonitor, but currently passes UseHelixMonitor into /eng/common/templates/steps/send-to-helix.yml (template parameter mismatch; needs fix).
eng/pipelines/coreclr/nativeaot-post-build-steps.yml Adds useHelixMonitor pass-through to the shared runtime test+Helix submit template.
eng/pipelines/common/templates/wasm-runtime-tests.yml Adds and forwards useHelixMonitor into the Helix submission path.
eng/pipelines/common/templates/wasm-library-tests.yml Adds and forwards useHelixMonitor into the Helix submission path.
eng/pipelines/common/templates/wasm-library-aot-tests.yml Adds and forwards useHelixMonitor into nested wasm templates.
eng/pipelines/common/templates/wasm-coreclr-library-tests.yml Adds and forwards useHelixMonitor into the Helix submission path.
eng/pipelines/common/templates/simple-wasm-build-tests.yml Adds and forwards useHelixMonitor into the Helix submission path for WBT scenarios.
eng/pipelines/common/templates/runtimes/send-to-helix-step.yml Adds useHelixMonitor and includes /p:EnableHelixJobMonitor=... in the computed send parameters.
eng/pipelines/common/templates/runtimes/run-test-job.yml Adds useHelixMonitor parameter and forwards it to send-to-helix-step.yml.
eng/pipelines/common/templates/runtimes/build-runtime-tests-and-send-to-helix.yml Adds useHelixMonitor parameter and forwards it to send-to-helix-step.yml.
eng/pipelines/common/templates/browser-wasm-coreclr-build-tests.yml Hard-enables useHelixMonitor: true for the CoreCLR Wasm.Build.Tests Helix submission.
eng/pipelines/common/templates/browser-wasm-build-tests.yml Adds and forwards useHelixMonitor for non-CoreCLR WBT Helix submissions.
.config/dotnet-tools.json Adds the microsoft.dotnet.helix.jobmonitor tool entry and pins its version.

Comment thread eng/pipelines/installer/helix.yml
Copilot AI review requested due to automatic review settings June 22, 2026 09:25

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 18 out of 19 changed files in this pull request and generated 2 comments.

Comment thread eng/pipelines/runtime.yml
Comment thread eng/common/core-templates/steps/send-to-helix.yml Outdated
Copilot AI review requested due to automatic review settings June 22, 2026 13:34
premun and others added 6 commits June 22, 2026 15:34
- Add useHelixMonitor parameter to all helix pipeline templates
- Enable Helix Monitor in runtime.yml for all test legs
- Add helix-job-monitor.yml template job at the top of the Build stage
- Add Microsoft.DotNet.Helix.JobMonitor dependency (same version as Arcade)
- Pass EnableHelixJobMonitor MSBuild property through send-to-helix

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
@premun premun force-pushed the prvysoky/helix-job-monitor-rebased branch from 20899d1 to 624f97d Compare June 22, 2026 13:35

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 18 out of 19 changed files in this pull request and generated 3 comments.

Comment thread eng/common/core-templates/steps/send-to-helix.yml
Comment thread eng/pipelines/runtime.yml
Comment thread eng/Version.Details.xml Outdated
Copilot AI review requested due to automatic review settings June 22, 2026 20:53

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 18 out of 19 changed files in this pull request and generated 3 comments.

Comments suppressed due to low confidence (1)

eng/pipelines/common/templates/browser-wasm-coreclr-build-tests.yml:145

  • This template hard-codes useHelixMonitor: true when invoking the libraries Helix template. Since other Helix templates were updated to accept a useHelixMonitor parameter (defaulting to false) and runtime.yml is now explicitly setting it, this hard-coded true makes the behavior inconsistent and harder to roll back/experiment with.

Consider adding a useHelixMonitor parameter to this template (default false) and threading it through instead of hard-coding true.

              testRunNamePrefixSuffix: CoreCLR_$(_BuildConfig)_$(_hostedOs)
              extraHelixArguments: /p:BrowserHost=$(_hostedOs)
              scenarios:
              - buildwasmapps
              useHelixMonitor: true

Comment thread eng/pipelines/runtime.yml
Comment on lines +70 to +74
- template: /eng/common/core-templates/job/helix-job-monitor.yml
parameters:
helixAccessToken: $(HelixApiAccessToken)
timeoutInMinutes: 540

Comment thread eng/pipelines/runtime.yml
Comment on lines 706 to 710
testBuildArgs: nativeaot tree nativeaot
liveLibrariesBuildConfig: Release
testRunNamePrefixSuffix: NativeAOT_$(_BuildConfig)
useHelixMonitor: true
extraVariablesTemplates:
Comment thread eng/common/core-templates/steps/send-to-helix.yml
Copilot AI review requested due to automatic review settings June 25, 2026 08:58

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 18 out of 19 changed files in this pull request and generated 3 comments.

Comment thread eng/pipelines/runtime.yml
Comment on lines +70 to +73
- template: /eng/common/core-templates/job/helix-job-monitor.yml
parameters:
helixAccessToken: $(HelixApiAccessToken)
timeoutInMinutes: 540
Comment thread eng/Version.Details.props Outdated
Comment on lines 7 to 11
<PropertyGroup>
<!-- dotnet-arcade dependencies -->
<MicrosoftDotNetHelixJobMonitorPackageVersion>11.0.0-beta.26325.1</MicrosoftDotNetHelixJobMonitorPackageVersion>
<!-- dotnet-dotnet dependencies -->
<MicrosoftCodeAnalysisPackageVersion>5.9.0-1.26319.105</MicrosoftCodeAnalysisPackageVersion>
Comment on lines +35 to +43
- powershell: >
$(Build.SourcesDirectory)\eng\common\msbuild.ps1
$(Build.SourcesDirectory)/${{ parameters.HelixProjectPath }}
/restore
/p:TreatWarningsAsErrors=false
/p:EnableHelixJobMonitor=${{ parameters.UseHelixMonitor }}
${{ parameters.HelixProjectArguments }}
/t:Test
/bl:$(Build.SourcesDirectory)/artifacts/log/$(_BuildConfig)/SendToHelix.binlog
…nitor-rebased

# Conflicts:
#	eng/Version.Details.xml
…nitor-rebased

# Conflicts:
#	eng/Version.Details.xml
Copilot AI review requested due to automatic review settings June 25, 2026 13:13

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 18 out of 19 changed files in this pull request and generated 3 comments.

Comment on lines +39 to +43
/p:TreatWarningsAsErrors=false
/p:EnableHelixJobMonitor=${{ parameters.UseHelixMonitor }}
${{ parameters.HelixProjectArguments }}
/t:Test
/bl:$(Build.SourcesDirectory)/artifacts/log/$(_BuildConfig)/SendToHelix.binlog
Comment thread eng/pipelines/runtime.yml
Comment on lines 67 to +73
- stage: Build
jobs:

- template: /eng/common/core-templates/job/helix-job-monitor.yml
parameters:
helixAccessToken: $(HelixApiAccessToken)
timeoutInMinutes: 540
Comment thread eng/pipelines/runtime.yml
Comment on lines 705 to +709
creator: dotnet-bot
testBuildArgs: nativeaot tree nativeaot
liveLibrariesBuildConfig: Release
testRunNamePrefixSuffix: NativeAOT_$(_BuildConfig)
useHelixMonitor: true
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.

2 participants