[improve][ci] Add arm64 image build
Motivation
Verify the arm64 image build.
Modifications
- Use the matrix feature to verify the build of the linux/amd64 and linux/arm64 images.
Documentation
- [ ]
doc - [ ]
doc-required - [x]
doc-not-needed - [ ]
doc-complete
/pulsarbot rerun-failure-checks
Codecov Report
All modified and coverable lines are covered by tests :white_check_mark:
Project coverage is 73.19%. Comparing base (
bbc6224) to head (7981ee4). Report is 296 commits behind head on master.
Additional details and impacted files
@@ Coverage Diff @@
## master #22755 +/- ##
============================================
- Coverage 73.57% 73.19% -0.39%
- Complexity 32624 32889 +265
============================================
Files 1877 1889 +12
Lines 139502 141443 +1941
Branches 15299 15520 +221
============================================
+ Hits 102638 103526 +888
- Misses 28908 29921 +1013
- Partials 7956 7996 +40
| Flag | Coverage Δ | |
|---|---|---|
| inttests | 27.44% <ø> (+2.86%) |
:arrow_up: |
| systests | 24.62% <ø> (+0.29%) |
:arrow_up: |
| unittests | 72.22% <ø> (-0.62%) |
:arrow_down: |
Flags with carried forward coverage won't be shown. Click here to find out more.
btw. arm based runners became public beta a few days ago. "We expect to begin offering Arm runners for open source projects by the end of the year. " https://github.blog/2024-06-03-arm64-on-github-actions-powering-faster-more-efficient-build-systems/ https://github.blog/changelog/2024-06-03-actions-arm-based-linux-and-windows-runners-are-now-in-public-beta/
Once Arm runners are available (by the end of the year), we could use this type of syntax to choose the runner in the matrix.
pulsar-java-test-image:
name: Build Pulsar java-test-image docker image for ${{ matrix.platform }}
runs-on: ${{ matrix.runs-on }}
timeout-minutes: 60
needs: ['preconditions', 'build-and-license-check']
if: ${{ needs.preconditions.outputs.docs_only != 'true'}}
strategy:
fail-fast: false
matrix:
include:
- platform: linux/amd64
runs-on: ubuntu-22.04
- platform: linux/arm64
runs-on: arm64-ubuntu-22.04