Skip to content

Commit 273db20

Browse files
lithomas1jorisvandenbossche
authored andcommitted
CI: Test Github Actions Arm64 Runners (pandas-dev#60722)
* CI: Test Github Actions Arm64 Runners * try using platform as cache key * fixes * add platform for includes jobs (cherry picked from commit b983366)
1 parent 9b0e866 commit 273db20

File tree

2 files changed

+21
-3
lines changed

2 files changed

+21
-3
lines changed

.github/workflows/unit-tests.yml

+20-3
Original file line numberDiff line numberDiff line change
@@ -22,10 +22,11 @@ defaults:
2222

2323
jobs:
2424
ubuntu:
25-
runs-on: ubuntu-22.04
25+
runs-on: ${{ matrix.platform }}
2626
timeout-minutes: 90
2727
strategy:
2828
matrix:
29+
platform: [ubuntu-22.04, ubuntu-24.04-arm]
2930
env_file: [actions-39.yaml, actions-310.yaml, actions-311.yaml, actions-312.yaml]
3031
# Prevent the include jobs from overriding other jobs
3132
pattern: [""]
@@ -35,9 +36,11 @@ jobs:
3536
env_file: actions-311-downstream_compat.yaml
3637
pattern: "not slow and not network and not single_cpu"
3738
pytest_target: "pandas/tests/test_downstream.py"
39+
platform: ubuntu-22.04
3840
- name: "Minimum Versions"
3941
env_file: actions-39-minimum_versions.yaml
4042
pattern: "not slow and not network and not single_cpu"
43+
platform: ubuntu-22.04
4144
- name: "Locale: it_IT"
4245
env_file: actions-311.yaml
4346
pattern: "not slow and not network and not single_cpu"
@@ -48,6 +51,7 @@ jobs:
4851
# Also install it_IT (its encoding is ISO8859-1) but do not activate it.
4952
# It will be temporarily activated during tests with locale.setlocale
5053
extra_loc: "it_IT"
54+
platform: ubuntu-22.04
5155
- name: "Locale: zh_CN"
5256
env_file: actions-311.yaml
5357
pattern: "not slow and not network and not single_cpu"
@@ -58,57 +62,70 @@ jobs:
5862
# Also install zh_CN (its encoding is gb2312) but do not activate it.
5963
# It will be temporarily activated during tests with locale.setlocale
6064
extra_loc: "zh_CN"
65+
platform: ubuntu-22.04
6166
- name: "Copy-on-Write 3.9"
6267
env_file: actions-39.yaml
6368
pattern: "not slow and not network and not single_cpu"
6469
pandas_copy_on_write: "1"
70+
platform: ubuntu-22.04
6571
- name: "Copy-on-Write 3.10"
6672
env_file: actions-310.yaml
6773
pattern: "not slow and not network and not single_cpu"
6874
pandas_copy_on_write: "1"
75+
platform: ubuntu-22.04
6976
- name: "Copy-on-Write 3.11"
7077
env_file: actions-311.yaml
7178
pattern: "not slow and not network and not single_cpu"
7279
pandas_copy_on_write: "1"
80+
platform: ubuntu-22.04
7381
- name: "Copy-on-Write 3.12"
7482
env_file: actions-312.yaml
7583
pattern: "not slow and not network and not single_cpu"
7684
pandas_copy_on_write: "1"
85+
platform: ubuntu-22.04
7786
- name: "Copy-on-Write 3.11 (warnings)"
7887
env_file: actions-311.yaml
7988
pattern: "not slow and not network and not single_cpu"
8089
pandas_copy_on_write: "warn"
90+
platform: ubuntu-22.04
8191
- name: "Copy-on-Write 3.10 (warnings)"
8292
env_file: actions-310.yaml
8393
pattern: "not slow and not network and not single_cpu"
8494
pandas_copy_on_write: "warn"
95+
platform: ubuntu-22.04
8596
- name: "Copy-on-Write 3.9 (warnings)"
8697
env_file: actions-39.yaml
8798
pattern: "not slow and not network and not single_cpu"
8899
pandas_copy_on_write: "warn"
100+
platform: ubuntu-22.04
89101
- name: "Future infer strings"
90102
env_file: actions-312.yaml
91103
pandas_future_infer_string: "1"
92104
pandas_copy_on_write: "1"
105+
platform: ubuntu-22.04
93106
- name: "Future infer strings (without pyarrow)"
94107
env_file: actions-311.yaml
95108
pandas_future_infer_string: "1"
96109
pandas_copy_on_write: "1"
110+
platform: ubuntu-22.04
97111
- name: "Pypy"
98112
env_file: actions-pypy-39.yaml
99113
pattern: "not slow and not network and not single_cpu"
100114
test_args: "--max-worker-restart 0"
115+
platform: ubuntu-22.04
101116
- name: "Numpy Dev"
102117
env_file: actions-311-numpydev.yaml
103118
pattern: "not slow and not network and not single_cpu"
104119
test_args: "-W error::DeprecationWarning -W error::FutureWarning"
120+
platform: ubuntu-22.04
105121
- name: "Pyarrow Nightly"
106122
env_file: actions-311-pyarrownightly.yaml
107123
pattern: "not slow and not network and not single_cpu"
108124
pandas_future_infer_string: "1"
109125
pandas_copy_on_write: "1"
126+
platform: ubuntu-22.04
110127
fail-fast: false
111-
name: ${{ matrix.name || format('ubuntu-latest {0}', matrix.env_file) }}
128+
name: ${{ matrix.name || format('ubuntu-latest {0}', matrix.env_file) }}-${{ matrix.platform }}
112129
env:
113130
PATTERN: ${{ matrix.pattern }}
114131
LANG: ${{ matrix.lang || 'C.UTF-8' }}
@@ -124,7 +141,7 @@ jobs:
124141
REMOVE_PYARROW: ${{ matrix.name == 'Future infer strings (without pyarrow)' && '1' || '0' }}
125142
concurrency:
126143
# https://github.community/t/concurrecy-not-work-for-push/183068/7
127-
group: ${{ github.event_name == 'push' && github.run_number || github.ref }}-${{ matrix.env_file }}-${{ matrix.pattern }}-${{ matrix.extra_apt || '' }}-${{ matrix.pandas_copy_on_write || '' }}-${{ matrix.pandas_future_infer_string }}
144+
group: ${{ github.event_name == 'push' && github.run_number || github.ref }}-${{ matrix.env_file }}-${{ matrix.pattern }}-${{ matrix.extra_apt || '' }}-${{ matrix.pandas_copy_on_write || '' }}-${{ matrix.pandas_future_infer_string }}-${{ matrix.platform }}
128145
cancel-in-progress: true
129146

130147
services:

.github/workflows/wheels.yml

+1
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,7 @@ jobs:
9494
buildplat:
9595
- [ubuntu-22.04, manylinux_x86_64]
9696
- [ubuntu-22.04, musllinux_x86_64]
97+
- [ubuntu-24.04-arm, manylinux_aarch64]
9798
- [macos-13, macosx_x86_64]
9899
# Note: M1 images on Github Actions start from macOS 14
99100
- [macos-14, macosx_arm64]

0 commit comments

Comments
 (0)