-
Notifications
You must be signed in to change notification settings - Fork 5.2k
Add centralized Helix platform alias definitions files #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 <515774+agocke@users.noreply.github.com>
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 <515774+agocke@users.noreply.github.com>
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)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 |
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 |
Copilot uses AI. Check for mistakes.
|
||
# 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 |
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 |
Copilot uses AI. Check for mistakes.
|
||
# Oldest supported Fedora x64 - 40 | ||
- name: helix_linux_x64_fedora_oldest | ||
value: (Fedora.40.Amd64.Open)AzureLinux.3.Amd64.open@mcr.microsoft.com/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 |
Copilot uses AI. Check for mistakes.
|
||
# Oldest supported openSUSE x64 - 15.5 | ||
- name: helix_linux_x64_opensuse_oldest | ||
value: (openSUSE.15.5.Amd64.Open)AzureLinux.3.Amd64.open@mcr.microsoft.com/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 |
Copilot uses AI. Check for mistakes.
# 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 |
Copilot uses AI. Check for mistakes.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This PR adds two YAML files (eng/pipelines/helix-platforms-latest.yml and eng/pipelines/helix-platforms-oldest.yml) to centralize Helix platform queue name mappings. These files define stable variable aliases for 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 current OS choices are arbitrary -- if #120337 is approved, I will update the baselines then update our actual Helix setup to match the definitions.