Skip to content

CI: add Ubuntu Polish locale lane and locale bootstrap to CLI PR tests - #4607

Merged
cdhanna merged 8 commits into
mainfrom
copilot/add-cli-test-env-polish-localization
May 21, 2026
Merged

cdhanna merged 8 commits into
mainfrom
copilot/add-cli-test-env-polish-localization

Conversation

Copilot AI commented May 19, 2026 •

Copy link
Copy Markdown
Contributor
  • Inspect failing stack trace and locate culture-sensitive parse in NewStorageCommand
  • Confirm similar command (NewMicroserviceCommand) uses invariant parsing
  • Update storage target framework parsing to be culture-invariant
  • Run targeted CLI validation (dotnet build cli/cli/cli.csproj with local version override)
  • Run final validation (code review + CodeQL)
  • Save session context for follow-up

Copilot AI linked an issue May 19, 2026 that may be closed by this pull request
Copilot AI changed the title [WIP] Add CLI test environment for Polish localization CI: add Polish locale lanes to CLI PR tests May 19, 2026
Copilot AI requested a review from cdhanna May 19, 2026 13:44

@cdhanna cdhanna left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

@copilot , is it possible to only urn the PL stuff on the ubuntu-latest side?

Copilot AI commented May 19, 2026

Copy link
Copy Markdown
Contributor Author

@copilot , is it possible to only urn the PL stuff on the ubuntu-latest side?

Done — I removed the Windows pl-PL lane and now run Polish localization only on ubuntu-latest in testCli. Commit: f496f82.

Copilot AI changed the title CI: add Polish locale lanes to CLI PR tests CI: add Ubuntu Polish locale lane to CLI PR tests May 19, 2026
Copilot AI requested a review from cdhanna May 19, 2026 14:01
@cdhanna

cdhanna commented May 19, 2026

Copy link
Copy Markdown
Collaborator

@copilot , see the test output for the cli github action

Run dotnet test --configuration Release --no-build cli/tests -p:BeamOverrideVersionWithLocalDev=true -- NUnit.DefaultCulture=pl-PL
/usr/bin/bash: warning: setlocale: LC_ALL: cannot change locale (pl_PL.UTF-8)
Przebieg testu dla: /home/runner/work/BeamableProduct/BeamableProduct/cli/tests/bin/Release/net10.0/tests.dll

Copilot AI commented May 19, 2026

Copy link
Copy Markdown
Contributor Author

@copilot , see the test output for the cli github action

Run dotnet test --configuration Release --no-build cli/tests -p:BeamOverrideVersionWithLocalDev=true -- NUnit.DefaultCulture=pl-PL
...

Fixed in 977171a: the Ubuntu lane now generates the requested locale (sudo locale-gen ${{ matrix.lang }}) and exports LANG/LC_ALL before restore/build/test steps, so pl_PL.UTF-8 is available when dotnet test runs.

Copilot AI changed the title CI: add Ubuntu Polish locale lane to CLI PR tests CI: add Ubuntu Polish locale lane and locale bootstrap to CLI PR tests May 19, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Lightbeam link

@cdhanna
cdhanna marked this pull request as ready for review May 21, 2026 14:20
Copilot AI review requested due to automatic review settings May 21, 2026 14:20

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 aims to make CLI PR testing resilient to non-English locales (specifically Polish) by running an additional Ubuntu lane with pl-PL settings and by fixing a culture-sensitive parse in NewStorageCommand that can fail under locales using , as the decimal separator.

Changes:

  • Make NewStorageCommand target framework parsing culture-invariant.
  • Expand the CLI PR test workflow matrix to add an Ubuntu pl-PL lane and bootstrap locale settings.
  • Pass an explicit NUnit default culture into dotnet test for the CLI test job.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 3 comments.

File Description
cli/cli/Commands/Project/NewStorageCommand.cs Uses invariant culture for framework version parsing to avoid locale-dependent failures.
.github/workflows/buildPR.yml Adds Ubuntu Polish locale lane and locale bootstrapping; updates concurrency grouping and test invocation culture.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines 89 to +93
matrix:
dotnet-version: ['10.0.x' ]
runners: [ windows-latest, ubuntu-latest ]
include:
- runners: windows-latest
test-culture: en-US
Comment on lines 84 to 86
concurrency:
group: cli-pr-${{ github.sha }}-${{ matrix.dotnet-version }}-${{matrix.runners}}
group: cli-pr-${{ github.sha }}-${{ matrix.dotnet-version }}-${{ matrix.runners }}-${{ matrix.test-culture }}
cancel-in-progress: true
Comment on lines 103 to +105
env:
BEAM_DOCKER_WINDOWS_CONTAINERS: ${{ matrix.runners == 'windows-latest' && '1' || '0' }}
DOTNET_CLI_UI_LANGUAGE: ${{ matrix.dotnet-cli-ui-language }}
@cdhanna
cdhanna merged commit 6deb1b6 into main May 21, 2026
47 of 48 checks passed
@cdhanna
cdhanna deleted the copilot/add-cli-test-env-polish-localization branch May 21, 2026 14:28
allister-beamable added a commit that referenced this pull request Aug 21, 2026
…emantics

The locale work in #4607 replaced the two-value `runners` matrix dimension
with a hand-enumerated `include:` block. GitHub merges an include entry into
an existing combination when its keys are absent from the base matrix instead
of appending a new one, so all three entries collapsed onto the single
`dotnet-version: 10.0.x` combination and the last one won. Since 2026-05-21
testCli has run exactly one lane: ubuntu, Polish. Windows and English CLI
coverage were silently dropped, and every lane would have been named
`testCli (10.0.x)` regardless, so nothing looked missing.

Promote `runners` and `test-culture` back to matrix dimensions, drop the
Windows/Polish pair with `exclude`, and use `include` for what it is for --
attaching keys to combinations that already exist. This yields the three
intended lanes and makes them self-identifying in the checks list.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
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.

Add CLI test env that uses Polish localization

3 participants