Modernize build setup #197
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: macOS CI | |
env: | |
# NOTE: This version must match between all .yml files in the | |
# .github/workflows directory | |
TOX_VERSION: 4.0.9 | |
on: | |
# Triggers the workflow on push or pull request events but only for the main branch | |
push: | |
branches: [python] | |
pull_request: | |
branches: [python] | |
jobs: | |
tox: | |
runs-on: macos-12 | |
steps: | |
- name: Check out repository code | |
uses: actions/checkout@v4 | |
with: | |
fetch-depth: 0 # For getting tags from the repo | |
- name: Cache .tox directory | |
uses: actions/cache@v3 | |
with: | |
path: .tox | |
key: ${{ runner.os }}-${{ hashFiles('tox.ini') }} | |
- name: Create a virtualenv | |
run: | | |
python3 -m venv env | |
- name: Install tox in our virtualenv | |
run: | | |
. ./env/bin/activate | |
pip install tox==${{ env.TOX_VERSION }} | |
- name: Run tox in our virtualenv | |
run: | | |
. ./env/bin/activate | |
# Explicitly name environments we think can detect macOS specific problems. | |
# All (others) will be run on Linux. | |
# | |
# The point is to run as little as possible on macOS because macOS runs are | |
# slow and expensive, look for "multiplier" on this page: | |
# https://docs.github.com/en/billing/managing-billing-for-github-actions/about-billing-for-github-actions | |
tox -e version.py,installtest,pytest,package,test-package,test-wheel |