Skip to content

Fix internal Helix queue alias expansion - #133704

Merged
akoeplinger merged 2 commits into
dotnet:mainfrom
akoeplinger:fix/helix-queue-alias-expansion
Sep 11, 2026
Merged

Fix internal Helix queue alias expansion#133704
akoeplinger merged 2 commits into
dotnet:mainfrom
akoeplinger:fix/helix-queue-alias-expansion

Conversation

@akoeplinger

@akoeplinger akoeplinger commented Sep 11, 2026

Copy link
Copy Markdown
Member

Summary

Fix internal Helix submissions using public .Open queues, including the macOS Mono MiniJIT libraries and iOS/MacCatalyst smoke jobs.

The libraries and installer submission templates strip .open with a compile-time ${{ replace(...) }} expression. Queue aliases passed as $(helix_...) do not expand until runtime, so the replacement sees only the macro name and leaves the eventual public queue unchanged. Helix then rejects the submission:

Helix '.open' queues should only be used from public AzDO projects.

Explicitly select public or _internal queue aliases based on System.TeamProject, matching the existing CoreCLR queue-selector pattern. Keep runtime macro expansion so the aliases remain available through the nested pipeline templates, without relying on compile-time .open removal for alias values. This also covers the Windows x64 libraries alias and macOS-hosted browser tests. Public queue selection remains unchanged.

Note

This PR description was generated with GitHub Copilot.

Resolve library and installer queue aliases at template expansion time so internal submissions can strip .Open before runtime macro expansion.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 6ecee3ed-4a6f-4c01-bf01-118338ab3dcc
@azure-pipelines

Copy link
Copy Markdown
Azure Pipelines:
Successfully started running 4 pipeline(s).
12 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: @dotnet/runtime-infrastructure
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.

🟢 Approval recommended

No unresolved blocking issues were identified.

Pull request overview

Fixes internal Helix queue alias expansion by resolving aliases during template expansion, enabling .Open normalization.

Changes:

  • Replaced runtime queue macros with compile-time variable references.
  • Updated library and installer queue selectors.
File summaries
File Description
eng/pipelines/libraries/helix-queues-setup.yml Resolves library queue aliases before normalization.
eng/pipelines/installer/helix-queues-setup.yml Resolves installer macOS queue aliases at template time.
Review details
  • Files reviewed: 2/2 changed files
  • Comments generated: 0
  • Review effort level: Lite

Keep runtime alias expansion and select internal aliases before submission, matching the CoreCLR queue setup. Compile-time alias references were empty in the expanded pipeline. Document the selection requirement in all three queue templates.

Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Copilot-Session: 6ecee3ed-4a6f-4c01-bf01-118338ab3dcc
Copilot AI review requested due to automatic review settings September 11, 2026 17:14

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.

🟢 Approval recommended

No unresolved blocking issues were identified.

Review details
  • Files reviewed: 3/3 changed files
  • Comments generated: 0 new
  • Review effort level: Lite

@akoeplinger

Copy link
Copy Markdown
Member Author

/ba-g unrelated test failures

@akoeplinger
akoeplinger merged commit bd6d336 into dotnet:main Sep 11, 2026
162 of 169 checks passed
@akoeplinger
akoeplinger deleted the fix/helix-queue-alias-expansion branch September 11, 2026 22:39
@akoeplinger

Copy link
Copy Markdown
Member Author

/backport to release/11.0

@github-actions

Copy link
Copy Markdown
Contributor

Started backporting to release/11.0 (link to workflow run)

@github-actions

Copy link
Copy Markdown
Contributor

@akoeplinger backporting to release/11.0 failed, the patch most likely resulted in conflicts. Please backport manually!

git am output
$ git cherry-pick bd6d336bfd95a333e8b3f22f26259bbb659974cf

Auto-merging eng/pipelines/coreclr/templates/helix-queues-setup.yml
Auto-merging eng/pipelines/installer/helix-queues-setup.yml
Auto-merging eng/pipelines/libraries/helix-queues-setup.yml
CONFLICT (content): Merge conflict in eng/pipelines/libraries/helix-queues-setup.yml
error: could not apply bd6d336bfd9... Fix internal Helix queue alias expansion (#133704)
hint: After resolving the conflicts, mark them with
hint: "git add/rm <pathspec>", then run
hint: "git cherry-pick --continue".
hint: You can instead skip this commit with "git cherry-pick --skip".
hint: To abort and get back to the state before "git cherry-pick",
hint: run "git cherry-pick --abort".
hint: Disable this message with "git config set advice.mergeConflict false"


$ git am --3way --empty=keep --ignore-whitespace --keep-non-patch changes.patch

Applying: Fix internal Helix queue alias expansion
Using index info to reconstruct a base tree...
M	eng/pipelines/installer/helix-queues-setup.yml
M	eng/pipelines/libraries/helix-queues-setup.yml
Falling back to patching base and 3-way merge...
Auto-merging eng/pipelines/installer/helix-queues-setup.yml
Auto-merging eng/pipelines/libraries/helix-queues-setup.yml
CONFLICT (content): Merge conflict in eng/pipelines/libraries/helix-queues-setup.yml
error: Failed to merge in the changes.
hint: Use 'git am --show-current-patch=diff' to see the failed patch
hint: When you have resolved this problem, run "git am --continue".
hint: If you prefer to skip this patch, run "git am --skip" instead.
hint: To restore the original branch and stop patching, run "git am --abort".
hint: Disable this message with "git config set advice.mergeConflict false"
Patch failed at 0001 Fix internal Helix queue alias expansion
Error: The process '/usr/bin/git' failed with exit code 128

Link to workflow output

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

3 participants