-
Notifications
You must be signed in to change notification settings - Fork 5.2k
Add centralized Helix platform alias definitions file #120817
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
base: main
Are you sure you want to change the base?
Conversation
…tions Co-authored-by: agocke <[email protected]>
Updated Helix platform definitions to include latest supported versions for macOS, Linux, Windows, and Android platforms. Added internal variable mappings for various platforms.
|
@copilot Please also add a file for oldest supported versions |
Co-authored-by: agocke <[email protected]>
Added |
|
@copilot Please update the description |
The PR description has already been updated to reflect both files (helix-platforms-latest.yml and helix-platforms-oldest.yml). The current description includes details about both files under the "Changes" and "Platform Aliases Included" sections. Is there a specific aspect of the description you'd like me to modify? |
|
@copilot please reduce the PR description to a short paragraph |
I don't have the ability to directly edit the PR description on GitHub. However, here's a suggested short paragraph you can use: "This PR adds two YAML files ( You'll need to manually update the PR description with this or a similar condensed version. |
There was a problem hiding this 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 introduces centralized Helix platform alias definitions by adding two YAML configuration files that define stable variable aliases for latest and oldest supported OS versions across multiple platforms. This centralizes version-specific Helix queue names that were previously duplicated across multiple templates, enabling future OS version updates to be managed from a single location.
- Creates comprehensive platform mappings for macOS, Linux, Windows, Browser/WASM, and Android
- Separates latest and oldest supported versions into dedicated files for clear version management
- Provides both public (.Open) and internal queue variants for each platform
Reviewed Changes
Copilot reviewed 2 out of 2 changed files in this pull request and generated 6 comments.
| File | Description |
|---|---|
| eng/pipelines/helix-platforms-latest.yml | Defines latest supported platform versions with comprehensive coverage for all major OS families and architectures |
| eng/pipelines/helix-platforms-oldest.yml | Defines oldest/baseline supported platform versions for backward compatibility testing |
| value: (Fedora.42.Amd64.Open)[email protected]/dotnet-buildtools/prereqs:fedora-42-helix-amd64 | ||
|
|
||
| # Latest openSUSE x64 - 15.6 | ||
| - name: helix_linux_x64_opensuse_latest | ||
| value: (openSUSE.15.6.Amd64.Open)[email protected]/dotnet-buildtools/prereqs:opensuse-15.6-helix-amd64 |
Copilot
AI
Oct 17, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Inconsistent capitalization in 'open' - should be 'Open' to match other queue definitions.
| value: (Fedora.42.Amd64.Open)AzureLinux.3.Amd64.open@mcr.microsoft.com/dotnet-buildtools/prereqs:fedora-42-helix-amd64 | |
| # Latest openSUSE x64 - 15.6 | |
| - name: helix_linux_x64_opensuse_latest | |
| value: (openSUSE.15.6.Amd64.Open)AzureLinux.3.Amd64.open@mcr.microsoft.com/dotnet-buildtools/prereqs:opensuse-15.6-helix-amd64 | |
| value: (Fedora.42.Amd64.Open)AzureLinux.3.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:fedora-42-helix-amd64 | |
| # Latest openSUSE x64 - 15.6 | |
| - name: helix_linux_x64_opensuse_latest | |
| value: (openSUSE.15.6.Amd64.Open)AzureLinux.3.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:opensuse-15.6-helix-amd64 |
|
|
||
| # Latest openSUSE x64 - 15.6 | ||
| - name: helix_linux_x64_opensuse_latest | ||
| value: (openSUSE.15.6.Amd64.Open)[email protected]/dotnet-buildtools/prereqs:opensuse-15.6-helix-amd64 |
Copilot
AI
Oct 17, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Inconsistent capitalization in 'open' - should be 'Open' to match other queue definitions.
| value: (openSUSE.15.6.Amd64.Open)AzureLinux.3.Amd64.open@mcr.microsoft.com/dotnet-buildtools/prereqs:opensuse-15.6-helix-amd64 | |
| value: (openSUSE.15.6.Amd64.Open)AzureLinux.3.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:opensuse-15.6-helix-amd64 |
|
|
||
| # Oldest supported Fedora x64 - 40 | ||
| - name: helix_linux_x64_fedora_oldest | ||
| value: (Fedora.40.Amd64.Open)[email protected]/dotnet-buildtools/prereqs:fedora-40-helix-amd64 |
Copilot
AI
Oct 17, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Inconsistent capitalization in 'open' - should be 'Open' to match other queue definitions.
| value: (Fedora.40.Amd64.Open)AzureLinux.3.Amd64.open@mcr.microsoft.com/dotnet-buildtools/prereqs:fedora-40-helix-amd64 | |
| value: (Fedora.40.Amd64.Open)AzureLinux.3.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:fedora-40-helix-amd64 |
|
|
||
| # Oldest supported openSUSE x64 - 15.5 | ||
| - name: helix_linux_x64_opensuse_oldest | ||
| value: (openSUSE.15.5.Amd64.Open)[email protected]/dotnet-buildtools/prereqs:opensuse-15.5-helix-amd64 |
Copilot
AI
Oct 17, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Inconsistent capitalization in 'open' - should be 'Open' to match other queue definitions.
| value: (openSUSE.15.5.Amd64.Open)AzureLinux.3.Amd64.open@mcr.microsoft.com/dotnet-buildtools/prereqs:opensuse-15.5-helix-amd64 | |
| value: (openSUSE.15.5.Amd64.Open)AzureLinux.3.Amd64.Open@mcr.microsoft.com/dotnet-buildtools/prereqs:opensuse-15.5-helix-amd64 |
| # Use this when you want to test against the minimum supported OS versions to ensure backward compatibility. | ||
| # | ||
| # Usage in templates: | ||
| # - template: /eng/pipelines/common/helix-platforms-oldest.yml |
Copilot
AI
Oct 17, 2025
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The template path in the usage example should match the actual file location. The file is located at /eng/pipelines/helix-platforms-oldest.yml, not in a /common/ subdirectory.
| # - template: /eng/pipelines/common/helix-platforms-oldest.yml | |
| # - template: /eng/pipelines/helix-platforms-oldest.yml |
Co-authored-by: Copilot <[email protected]>
|
Tagging subscribers to this area: @dotnet/runtime-infrastructure |
|
@copilot I'm rethinking the separate files. Can you collapse these definitions into one file? |
Co-authored-by: agocke <[email protected]>
Collapsed into single file |
This PR adds a single YAML file (
eng/pipelines/helix-platforms.yml) to centralize Helix platform queue name mappings. The file defines stable variable aliases for both latest and oldest supported OS versions across macOS, Linux, Windows, Browser/WASM, and Android platforms. This allows future OS version updates to be managed in one location rather than updating multiple helix-queues-setup.yml templates throughout the codebase.The combined file organizes definitions by platform family (macOS, Linux, Windows, Browser/WASM, Android) with clear sections for both latest and oldest/baseline versions, making it easy to maintain and update version mappings as needed.
The current OS choices are arbitrary -- if #120337 is approved, I will update the baselines then update our actual Helix setup to match the definitions.
💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.