Skip to content

Commit

Permalink
CI: Test on Linux arm64 runners (#3778)
Browse files Browse the repository at this point in the history
  • Loading branch information
seisman authored Feb 6, 2025
1 parent c9155d7 commit e9792fe
Show file tree
Hide file tree
Showing 5 changed files with 12 additions and 6 deletions.
6 changes: 4 additions & 2 deletions .github/workflows/ci_tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -57,12 +57,14 @@ jobs:
fail-fast: false
matrix:
python-version: ['3.11', '3.13']
os: [ubuntu-latest, macos-latest, windows-latest]
os: [ubuntu-latest, ubuntu-24.04-arm, macos-latest, windows-latest]
# Is it a draft Pull Request (true or false)?
isDraft:
- ${{ github.event.pull_request.draft }}
# Only run three jobs on Ubuntu for draft PRs
# Only run jobs on Ubuntu for draft PRs
exclude:
- os: ubuntu-24.04-arm
isDraft: true
- os: macos-latest
isDraft: true
- os: windows-latest
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ci_tests_dev.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-24.04, macos-15, windows-2025]
os: [ubuntu-24.04, ubuntu-24.04-arm, macos-15, windows-2025]
gmt_git_ref: [master]
timeout-minutes: 30
defaults:
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/ci_tests_legacy.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-22.04, macos-13, windows-2019]
os: [ubuntu-22.04, ubuntu-22.04-arm, macos-13, windows-2019]
gmt_version: ['6.4']
timeout-minutes: 30
defaults:
Expand Down
3 changes: 3 additions & 0 deletions pygmt/tests/test_contour.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@
Test Figure.contour.
"""

import platform
from pathlib import Path

import numpy as np
Expand Down Expand Up @@ -30,6 +31,7 @@ def fixture_region():


@pytest.mark.mpl_image_compare
@pytest.mark.xfail(platform.machine() == "aarch64", reason="Fails on Linux ARM64")
def test_contour_vec(region):
"""
Plot an x-centered gaussian kernel with different y scale.
Expand Down Expand Up @@ -130,6 +132,7 @@ def test_contour_multiple_levels(region):


@pytest.mark.mpl_image_compare(filename="test_contour_vec.png")
@pytest.mark.xfail(platform.machine() == "aarch64", reason="Fails on Linux ARM64")
def test_contour_incols_transposed_data(region):
"""
Make sure that transposing the data matrix still produces a correct result with
Expand Down
5 changes: 3 additions & 2 deletions pygmt/tests/test_x2sys_cross.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,6 +3,7 @@
"""

import copy
import platform
import sys
from pathlib import Path
from tempfile import TemporaryDirectory
Expand Down Expand Up @@ -270,7 +271,7 @@ def test_x2sys_cross_region_interpolation_numpoints():
)

assert isinstance(output, pd.DataFrame)
if sys.platform == "darwin":
if platform.machine() in {"aarch64", "arm64"}:
assert output.shape == (3894, 12)
# Check crossover errors (z_X) and mean value of observables (z_M)
npt.assert_allclose(output.z_X.mean(), -138.23215, rtol=1e-4)
Expand Down Expand Up @@ -298,7 +299,7 @@ def test_x2sys_cross_trackvalues():
output = x2sys_cross(tracks=["@tut_ship.xyz"], tag=tag, trackvalues=True)

assert isinstance(output, pd.DataFrame)
if sys.platform == "darwin":
if platform.machine() in {"aarch64", "arm64"}:
assert output.shape == (14374, 12)
# Check mean of track 1 values (z_1) and track 2 values (z_2)
npt.assert_allclose(output.z_1.mean(), -2422.973372, rtol=1e-4)
Expand Down

0 comments on commit e9792fe

Please sign in to comment.