Skip to content

Fix empty localization stage on non-main/release branches in official pipeline - #84845

Merged
JoeRobich merged 3 commits into
mainfrom
copilot/fix-code-review-comment-again
Aug 11, 2026
Merged

Fix empty localization stage on non-main/release branches in official pipeline#84845
JoeRobich merged 3 commits into
mainfrom
copilot/fix-code-review-comment-again

Conversation

Copilot AI commented Aug 11, 2026

Copy link
Copy Markdown
Contributor

The localization stage in azure-pipelines-official.yml only guarded its single job with a compile-time condition, so on branches like community, main-vs-deps, demos/*, and features/* the stage would compile with zero jobs — which Azure Pipelines doesn't support, and would leave build implicitly depending on a skipped/empty stage.

Changes

  • Moved the ${{ if ... }} compile-time condition from the single job inside localization to wrap the entire stage, so the stage is omitted entirely on branches where it has no applicable job.
# Before
- stage: localization
  jobs:
  - ${{ if or(eq(variables['Build.SourceBranch'], 'refs/heads/main'), startsWith(variables['Build.SourceBranch'], 'refs/heads/release/')) }}:
    - template: /eng/common/templates-official/job/onelocbuild.yml@self
      ...

# After
- ${{ if or(eq(variables['Build.SourceBranch'], 'refs/heads/main'), startsWith(variables['Build.SourceBranch'], 'refs/heads/release/')) }}:
  - stage: localization
    jobs:
    - template: /eng/common/templates-official/job/onelocbuild.yml@self
      ...

@azure-pipelines

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

Co-authored-by: JoeRobich <611219+JoeRobich@users.noreply.github.com>
Copilot AI changed the title [WIP] Fix code based on review comment Fix empty localization stage on non-main/release branches in official pipeline Aug 11, 2026
Copilot AI requested a review from JoeRobich August 11, 2026 06:23
@JoeRobich
JoeRobich marked this pull request as ready for review August 11, 2026 06:23
@JoeRobich
JoeRobich requested a review from a team as a code owner August 11, 2026 06:23
Copilot AI lite review requested due to automatic review settings August 11, 2026 06:23
@azure-pipelines

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

@JoeRobich JoeRobich left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I hit merge too soon on the previous one

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

This PR fixes an Azure Pipelines YAML limitation where the localization stage could compile to an empty stage (zero jobs) on non-main/non-release/* branches, which Azure Pipelines doesn’t support and can also create unintended stage dependency behavior for subsequent stages.

Changes:

  • Wrap the entire localization stage in the existing ${{ if ... }} compile-time condition instead of guarding only the stage’s lone job.
  • Ensure the stage is fully omitted on branches where localization shouldn’t run, avoiding “empty stage” compilation.
Show a summary per file
File Description
azure-pipelines-official.yml Moves the compile-time branch guard to wrap the whole localization stage so it’s omitted (not empty) on non-main/non-release/* branches.

Review details

  • Files reviewed: 1/1 changed files
  • Comments generated: 0
  • Review effort level: Lite

Comment thread azure-pipelines-official.yml
Copilot AI review requested due to automatic review settings August 11, 2026 06:35
@JoeRobich
JoeRobich merged commit 8148052 into main Aug 11, 2026
4 of 5 checks passed

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.

Review details

Suppressed comments (1)

azure-pipelines-official.yml:163

  • dependsOn: [] removes the default dependency of the build stage on prior stages (including localization on main/release/*). This is a behavioral change beyond moving the compile-time condition; if the intent is only to avoid an empty localization stage on other branches, this line should be removed (or the PR description updated to call out the parallelization change explicitly).
      displayName: Build and Test
      dependsOn: []
  • Files reviewed: 1/1 changed files
  • Comments generated: 0 new
  • Review effort level: Lite

333fred added a commit to 333fred/roslyn that referenced this pull request Aug 11, 2026
…-15-langver

* upstream/main:
  Unsafe evolution: allow await in unsafe context (dotnet#84616)
  Fix empty localization stage on non-main/release branches in official pipeline (dotnet#84845)
  Reorder stages for localization and build (dotnet#84841)
  Revert the sonic decl/impl split merge from main (dotnet#84831)
  AI Workflow - switch to use personal token instead of organizational (dotnet#84832)
  [main] Update dependencies from dotnet/arcade (dotnet#84819)
  Do not offer introduce parameter for incomplete calls (dotnet#84769)
@jjonescz jjonescz added this to the 18.11 milestone Aug 25, 2026
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.

5 participants