Skip to content

Commit

Permalink
Trac #32570: tox.ini, GH Actions: Update macOS environments to macOS …
Browse files Browse the repository at this point in the history
…11, 12

The macOS-10.15 environment is deprecated and will be unsupported on
2022-12-01. Homebrew packages are already not available any more.

- https://github.com/actions/virtual-environments
- https://github.com/actions/virtual-
environments/blob/main/images/macos/macos-12-Readme.md
- https://github.com/actions/virtual-
environments/blob/main/images/macos/macos-11-Readme.md:
- https://github.com/actions/virtual-
environments/blob/main/images/macos/macos-10.15-Readme.md:

There's no macOS 13 environment yet.

Possible follow-up:
- Add variants that test with an actual XCode installation (not XCode
CLT) because the SDK paths are different, and there may be other subtle
differences. GH Actions install location: see https://github.com/actions
/virtual-environments/blob/main/images/macos/macos-11-Readme.md#xcode

URL: https://trac.sagemath.org/32570
Reported by: mkoeppe
Ticket author(s): Matthias Koeppe
Reviewer(s): Dima Pasechnik
  • Loading branch information
Release Manager committed Nov 15, 2022
2 parents 9574dd1 + f185d68 commit cf0b066
Showing 1 changed file with 3 additions and 26 deletions.
29 changes: 3 additions & 26 deletions .github/workflows/ci-macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -42,12 +42,8 @@ jobs:
# python3_xcode is only accepted if enough packages are available from the system
# --> to test "minimal", we would need https://trac.sagemath.org/ticket/30949
tox_env: [homebrew-macos-usrlocal-minimal, homebrew-macos-usrlocal-standard, homebrew-macos-usrlocal-maximal, homebrew-macos-usrlocal-python3_xcode-standard, conda-forge-macos-minimal, conda-forge-macos-standard, conda-forge-macos-maximal]
# As of 2021-12, default xcode
# - on macos-10.15: 12.4
# - on macos-latest (= macos-11): 13.1
# https://github.com/actions/virtual-environments/blob/main/images/macos/macos-10.15-Readme.md#xcode
xcode_version_factor: [default]
os: [ macos-10.15, macos-latest ]
os: [ macos-11, macos-12 ]
env:
TOX_ENV: local-${{ matrix.tox_env }}
LOCAL_ARTIFACT_NAME: sage-local-commit-${{ github.sha }}-tox-local-${{ matrix.tox_env }}-${{ matrix.os }}-xcode_${{ matrix.xcode_version_factor }}
Expand Down Expand Up @@ -158,22 +154,10 @@ jobs:
fail-fast: false
max-parallel: 4
matrix:
os: [ macos-10.15, macos-11.0 ]
tox_system_factor: [macos-nobootstrap, macos-nobootstrap-python3_pythonorg]
os: [ macos-11, macos-12 ]
tox_system_factor: [macos-nobootstrap]
tox_packages_factor: [minimal]
# As of 2021-03, default is 12.4
# https://github.com/actions/virtual-environments/blob/main/images/macos/macos-10.15-Readme.md#xcode
xcode_version_factor: [default]
include:
# Test xcode 11.7 only on macos-10.15
- tox_system_factor: macos-nobootstrap
tox_packages_factor: minimal
xcode_version_factor: 11.7
os: macos-10.15
- tox_system_factor: macos-nobootstrap-python3_pythonorg
tox_packages_factor: minimal
xcode_version_factor: 11.7
os: macos-10.15
env:
TOX_ENV: local-${{ matrix.tox_system_factor }}-${{ matrix.tox_packages_factor }}
LOGS_ARTIFACT_NAME: logs-commit-${{ github.sha }}-tox-local-${{ matrix.tox_system_factor }}-${{ matrix.tox_packages_factor }}-xcode_${{ matrix.xcode_version_factor }}
Expand All @@ -198,13 +182,6 @@ jobs:
- name: Install test prerequisites
run: |
sudo /usr/bin/python3 -m pip install tox
- name: Install python3 from python.org
# As of 2020-03-30 (https://github.com/actions/virtual-environments/blob/master/images/macos/macos-10.15-Readme.md),
# Python 3.7.7 is installed on GitHub Actions runners. But we install our own copy from the python.org binary package.
run: |
curl -o python3.pkg https://www.python.org/ftp/python/3.7.7/python-3.7.7-macosx10.9.pkg
sudo installer -verbose -pkg python3.pkg -target /
if: contains(matrix.tox_system_factor, 'python3_pythonorg')
- name: Build and test with tox
# We use a high parallelization on purpose in order to catch possible parallelization bugs in the build scripts.
# For doctesting, we use a lower parallelization to avoid timeouts.
Expand Down

0 comments on commit cf0b066

Please sign in to comment.