-
Notifications
You must be signed in to change notification settings - Fork 850
Add win-arm64 and linux-arm64 to CLI native archive build matrix #15599
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: release/13.2
Are you sure you want to change the base?
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -13,20 +13,22 @@ on: | |
| targets: | ||
| description: > | ||
| JSON array of target objects to build. Each object must have 'os', 'runner', and 'rids' keys. | ||
| Defaults to all platforms (linux-x64, win-x64, osx-arm64). | ||
| Defaults to all platforms (linux-x64, linux-arm64, win-x64, win-arm64, osx-arm64). | ||
| required: false | ||
| type: string | ||
| default: >- | ||
| [ | ||
| {"os": "ubuntu-latest", "runner": "8-core-ubuntu-latest", "rids": "linux-x64"}, | ||
| {"os": "ubuntu-latest", "runner": "ubuntu-24.04-arm", "rids": "linux-arm64"}, | ||
| {"os": "windows-latest", "runner": "windows-latest", "rids": "win-x64"}, | ||
| {"os": "windows-latest", "runner": "windows-11-arm", "rids": "win-arm64"}, | ||
| {"os": "macos-latest", "runner": "macos-latest", "rids": "osx-arm64"} | ||
|
Comment on lines
21
to
25
|
||
| ] | ||
|
|
||
| jobs: | ||
|
|
||
| build_cli_archives: | ||
| name: Build CLI (${{ matrix.targets.os }}) | ||
| name: Build CLI (${{ matrix.targets.rids }}) | ||
| runs-on: ${{ matrix.targets.runner }} | ||
| strategy: | ||
| matrix: | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -47,6 +47,13 @@ jobs: | |
| versionOverrideArg: ${{ inputs.versionOverrideArg }} | ||
| targets: '[{"os": "ubuntu-latest", "runner": "8-core-ubuntu-latest", "rids": "linux-x64"}]' | ||
|
|
||
| build_cli_archive_linux_arm64: | ||
| name: Build native CLI archive (Linux ARM64) | ||
| uses: ./.github/workflows/build-cli-native-archives.yml | ||
| with: | ||
| versionOverrideArg: ${{ inputs.versionOverrideArg }} | ||
| targets: '[{"os": "ubuntu-latest", "runner": "ubuntu-24.04-arm", "rids": "linux-arm64"}]' | ||
|
|
||
|
Comment on lines
+52
to
+56
|
||
| # Per-OS CLI archive builds produce RID-specific DCP and Dashboard NuGets. | ||
| # Split by OS so that test jobs can depend on just their platform's archive, | ||
| # allowing Linux tests to start as soon as the Linux archive completes | ||
|
|
@@ -58,6 +65,13 @@ jobs: | |
| versionOverrideArg: ${{ inputs.versionOverrideArg }} | ||
| targets: '[{"os": "windows-latest", "runner": "windows-latest", "rids": "win-x64"}]' | ||
|
|
||
| build_cli_archive_windows_arm64: | ||
| name: Build native CLI archive (Windows ARM64) | ||
| uses: ./.github/workflows/build-cli-native-archives.yml | ||
| with: | ||
| versionOverrideArg: ${{ inputs.versionOverrideArg }} | ||
| targets: '[{"os": "windows-latest", "runner": "windows-11-arm", "rids": "win-arm64"}]' | ||
|
|
||
| build_cli_archive_macos: | ||
| name: Build native CLI archive (macOS) | ||
| uses: ./.github/workflows/build-cli-native-archives.yml | ||
|
|
@@ -226,7 +240,9 @@ jobs: | |
| setup_for_tests, | ||
| build_packages, | ||
| build_cli_archive_linux, | ||
| build_cli_archive_linux_arm64, | ||
| build_cli_archive_windows, | ||
| build_cli_archive_windows_arm64, | ||
| build_cli_archive_macos, | ||
| extension_tests_win, | ||
| typescript_sdk_tests, | ||
|
|
||
Uh oh!
There was an error while loading. Please reload this page.
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.
Do you have a plan for Grpc.Tools in Linux ARM64?
I believe the issue is this one: grpc/grpc#38538. Changing Grpc.Tools to version 2.68.1 should fix it. I don't believe there should be any negative side effect of using an older version, but some basic smoke testing of the dashboard after making the change would be good.
Alternatively, Grpc.Tools could be moved out of the build pipeline. Have the proto files in their own project, build a NuGet package, publish it, and then have dashboard/apphost projects reference the NuGet package.
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.
I talked with gRPC person about this and a fix - grpc/grpc#41543 - might be in the latest preview. Try 2.80.0-pre1 and see whether that fixes it.