Skip to content

Simplify SOS Helix pipeline matrix - #6035

Merged
max-charlamb merged 5 commits into
dotnet:mainfrom
max-charlamb:sos-helix-platform-matrix
Sep 17, 2026
Merged

max-charlamb merged 5 commits into
dotnet:mainfrom
max-charlamb:sos-helix-platform-matrix

Conversation

@max-charlamb

@max-charlamb max-charlamb commented Sep 15, 2026 •

Copy link
Copy Markdown
Member

Summary

  • replace repeated SOS Helix job declarations with a runtime-style platform matrix
  • keep each platform's pool, queue, container, RID, and build artifact prefix together
  • remove the one-use Helix platform variables template
  • keep Debug SOS coverage on PRs and run Release plus Debug coverage on non-PR builds

Validation

  • parsed the changed YAML files
  • verified the matrix generates 6 PR jobs and 14 non-PR jobs
  • verified platform parameters, pools, queues, dependencies, and artifact names
  • ran git diff --check

Copilot AI lite review requested due to automatic review settings September 15, 2026 18:57

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.

🟡 Changes recommended

PR SOS jobs request Release artifacts that the PR build legs do not publish.

Get a fresh assessment by requesting another Copilot review.

Pull request overview

Simplifies SOS Helix pipeline generation with a reusable platform matrix.

Changes:

  • Centralizes platform-specific pipeline metadata.
  • Refactors SOS Helix job generation and artifact naming.
  • Removes the obsolete Helix platform variables template.
  • Configures Release PR coverage and Debug non-PR coverage.
File summaries
File Summary
diagnostics.yml Uses the new SOS matrix; critical issue: PR jobs request Release artifacts while PR builds publish Debug artifacts (3 votes).
eng/pipelines/platform-matrix.yml Defines reusable platform-specific pipeline settings.
eng/pipelines/sos-helix.yml Generates SOS Helix jobs from matrix parameters.
eng/pipelines/helix-platforms.yml Removes obsolete queue and platform variables.
Review details
  • Files reviewed: 4/4 changed files
  • Comments generated: 1
  • Review effort level: Lite

💡 Add a code-review agent skill for context-aware, tailored reviews. Learn more in the docs.

Comment thread diagnostics.yml Outdated
@max-charlamb
max-charlamb requested a review from a team as a code owner September 15, 2026 23:04
@max-charlamb
max-charlamb force-pushed the sos-helix-platform-matrix branch from 71d9a12 to 3282fa3 Compare September 16, 2026 13:43
@max-charlamb
max-charlamb force-pushed the sos-helix-platform-matrix branch from 1aa28ce to 1ccc649 Compare September 16, 2026 20:53
@hoyosjs

hoyosjs commented Sep 16, 2026

Copy link
Copy Markdown
Member

Have you run the official build against this? And rebased it with the changes from today?

Max Charlamb added 3 commits September 17, 2026 12:18
Use a shared explicit platform matrix for build, test, and SOS Helix jobs while preserving separate build and test stages. Select Azure containers and Helix queues through explicit platform metadata, and remove the disabled CodeQL pipeline definition.

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

Copilot-Session: 90d32376-768b-4f8c-a982-54247c372cf3
Use one literal queue key per platform to select build and test containers and resolve Helix queues at runtime.

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

Copilot-Session: 90d32376-768b-4f8c-a982-54247c372cf3
Use the Ubuntu 22.04 SOS-compatible image for the test_linux_x64 resource and remove the redundant test_ubuntu_22_04 alias.

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

Copilot-Session: 90d32376-768b-4f8c-a982-54247c372cf3
@max-charlamb
max-charlamb force-pushed the sos-helix-platform-matrix branch from 1ccc649 to df5649d Compare September 17, 2026 16:19
Max Charlamb added 2 commits September 17, 2026 13:40
Use the boolean official-build flag directly so failed test execution, test result publication, and SOS submission produce succeeded-with-issues results only for official builds.

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

Copilot-Session: 90d32376-768b-4f8c-a982-54247c372cf3
Forward the boolean official-build state explicitly through the platform matrix so nested job templates can use it for continue-on-error behavior.

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

Copilot-Session: 90d32376-768b-4f8c-a982-54247c372cf3
@max-charlamb

Copy link
Copy Markdown
Member Author

Have you run the official build against this? And rebased it with the changes from today?

Yes, I rebased on the other pipeline changes and have an official build queued: https://dev.azure.com/dnceng/internal/_build/results?buildId=3079281

@max-charlamb
max-charlamb enabled auto-merge (squash) September 17, 2026 19:30
@max-charlamb
max-charlamb merged commit 80f51a6 into dotnet:main Sep 17, 2026
22 of 23 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants