Skip to content

Commit 8417f89

Browse files
committed
Use Arm64 runners to validate native bootstrapping and run test cases
Since the build system has been updated to allow native execution on AArch64 when targeting Arm32, this commit improves the workflow definitions by running the "host-arm" job on Arm64 runners to perform validation. As a result of these changes, the "host-arm" job no longer uses "run-on-arch-action".
1 parent ac67951 commit 8417f89

1 file changed

Lines changed: 30 additions & 24 deletions

File tree

.github/workflows/main.yml

Lines changed: 30 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -55,37 +55,43 @@ jobs:
5555
make check DYNLINK=${{ steps.determine-mode.outputs.DYNLINK }} || exit 1
5656
5757
host-arm:
58-
runs-on: ubuntu-24.04
58+
runs-on: ubuntu-24.04-arm
5959
strategy:
6060
matrix:
6161
link_mode: [static, dynamic]
6262
steps:
63-
- name: Checkout code
64-
uses: actions/checkout@v4
65-
- name: Determine static or dynamic linking mode
66-
id: determine-mode
67-
run: |
68-
if [ "${{ matrix.link_mode }}" = "dynamic" ]; then
69-
echo "Use dynamic linking mode"
70-
echo "DYNLINK=1" >> "$GITHUB_OUTPUT"
71-
else
72-
echo "Use static linking mode"
73-
echo "DYNLINK=0" >> "$GITHUB_OUTPUT"
74-
fi
75-
- name: Build artifacts
76-
# The GitHub Action for non-x86 CPU
77-
# https://github.com/uraimo/run-on-arch-action
78-
uses: uraimo/run-on-arch-action@v3
79-
with:
80-
arch: armv7
81-
distro: ubuntu24.04
82-
githubToken: ${{ github.token }}
83-
install: |
84-
apt-get update -qq -y
85-
apt-get install -yqq build-essential
63+
- name: Checkout code
64+
uses: actions/checkout@v4
65+
66+
- name: Download dependencies
67+
run: |
68+
sudo dpkg --add-architecture armhf
69+
sudo apt-get update -q -y
70+
sudo apt-get install -q -y graphviz jq
71+
sudo apt-get install -q -y build-essential libc6:armhf
72+
sudo apt-get install -q -y python3
73+
74+
- name: Determine static or dynamic linking mode
75+
id: determine-mode
76+
run: |
77+
if [ "${{ matrix.link_mode }}" = "dynamic" ]; then
78+
echo "Use dynamic linking mode"
79+
echo "DYNLINK=1" >> "$GITHUB_OUTPUT"
80+
else
81+
echo "Use static linking mode"
82+
echo "DYNLINK=0" >> "$GITHUB_OUTPUT"
83+
fi
84+
85+
- name: Build artifacts
8686
run: |
8787
make ARCH=arm DYNLINK=${{ steps.determine-mode.outputs.DYNLINK }}
88+
89+
- name: Sanitizer-enabled stage 0 tests
90+
run: |
8891
make check-sanitizer DYNLINK=${{ steps.determine-mode.outputs.DYNLINK }} || exit 1
92+
93+
- name: Unit tests
94+
run: |
8995
make check DYNLINK=${{ steps.determine-mode.outputs.DYNLINK }} || exit 1
9096
9197
coding-style:

0 commit comments

Comments
 (0)