Skip to content

Limit Helix job monitor to runtime pipeline - #132084

Merged
mmitche merged 1 commit into
dotnet:mainfrom
mmitche:dev/helix-job-monitor-runtime-only
Aug 11, 2026
Merged

Limit Helix job monitor to runtime pipeline#132084
mmitche merged 1 commit into
dotnet:mainfrom
mmitche:dev/helix-job-monitor-runtime-only

Conversation

@mmitche

@mmitche mmitche commented Aug 10, 2026

Copy link
Copy Markdown
Member

Summary

  • default enableHelixJobMonitor to false in the shared pipeline variables
  • explicitly enable it in eng/pipelines/runtime.yml
  • preserve the standalone monitor job and fire-and-forget submissions only for the runtime pipeline

Motivation

The original rollout in #129690 intended to enable the Helix Job Monitor only for the runtime pipeline. However, the switch was set to true in the shared variables template imported by other pipelines.

This caused standalone pipelines such as runtime-coreclr superpmi-collect build 3043381 to configure Helix submissions for out-of-band monitoring without adding a monitor job. Those submissions returned after submission rather than waiting for completion.

Defaulting the shared switch off and opting in from runtime.yml keeps the complete feature scoped to its intended pipeline.

Validation

  • git diff --check
  • verified enableHelixJobMonitor is enabled only by eng/pipelines/runtime.yml

Note

This pull request description was generated with GitHub Copilot.

Default the shared monitor switch to false and opt the runtime pipeline in explicitly.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>

Copilot-Session: 0c07f370-3ea0-4352-8610-0ab0cf1f7b0a
Copilot AI lite review requested due to automatic review settings August 10, 2026 16:57
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 5 pipeline(s).
11 pipeline(s) were filtered out due to trigger conditions.
There may be pipelines that require an authorized user to comment /azp run to run.

@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

Scopes the Helix Job Monitor feature to the main eng/pipelines/runtime.yml pipeline by disabling it by default in shared pipeline variables and explicitly opting in from the runtime pipeline definition.

Changes:

  • Default enableHelixJobMonitor to false in eng/pipelines/common/variables.yml.
  • Explicitly set enableHelixJobMonitor: true in eng/pipelines/runtime.yml so the runtime pipeline continues to include the monitor job and pass useHelixMonitor through its Helix template invocations.

Reviewed changes

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

File Description
eng/pipelines/runtime.yml Opts the runtime pipeline into Helix Job Monitor explicitly via a local variable override.
eng/pipelines/common/variables.yml Changes the shared default for enableHelixJobMonitor to false so other pipelines don’t implicitly enable monitoring behavior.

@matouskozak

Copy link
Copy Markdown
Member

is there a plan to enable it back on other pipelines, e.g. runtime-extra-platforms? This is a heavy apple queue consumer and would help with the constrianed azdo resources.

@akoeplinger

Copy link
Copy Markdown
Member

we can opt in more pipelines step by step

@AndyAyersMS

Copy link
Copy Markdown
Member

@mmitche build monitor seems to be holding up this PR too (at least for the next hour or so, it seems to timeout after 6+ hours)

@jkoritzinsky

Copy link
Copy Markdown
Member

We should also enable it very soon in the JitStress pipelines that run a lot of scenarios. We've already taken a change that depends on the job monitor for those pipelines to not wait on jobs to finish before submitting more jobs.

@akoeplinger

Copy link
Copy Markdown
Member

/ba-g runtime and runtime-diagnostics pipeline failures are unrelated to this change

@mmitche
mmitche merged commit 643b896 into dotnet:main Aug 11, 2026
175 of 182 checks passed
jtschuster pushed a commit to jtschuster/runtime that referenced this pull request Aug 11, 2026
## Summary

- default `enableHelixJobMonitor` to `false` in the shared pipeline
variables
- explicitly enable it in `eng/pipelines/runtime.yml`
- preserve the standalone monitor job and fire-and-forget submissions
only for the runtime pipeline

## Motivation

The original rollout in dotnet#129690 intended to enable the Helix Job Monitor
only for the runtime pipeline. However, the switch was set to `true` in
the shared variables template imported by other pipelines.

This caused standalone pipelines such as [`runtime-coreclr
superpmi-collect` build
3043381](https://dev.azure.com/dnceng/internal/_build/results?buildId=3043381&view=results)
to configure Helix submissions for out-of-band monitoring without adding
a monitor job. Those submissions returned after submission rather than
waiting for completion.

Defaulting the shared switch off and opting in from `runtime.yml` keeps
the complete feature scoped to its intended pipeline.

## Validation

- `git diff --check`
- verified `enableHelixJobMonitor` is enabled only by
`eng/pipelines/runtime.yml`

> [!NOTE]
> This pull request description was generated with GitHub Copilot.

Copilot-Session: 0c07f370-3ea0-4352-8610-0ab0cf1f7b0a
@dotnet-milestone-bot dotnet-milestone-bot Bot added this to the 11.0-rc1 milestone Aug 12, 2026
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.

6 participants