name: macos_build on: [pull_request, push] permissions: contents: read # to fetch code (actions/checkout) jobs: macos_build: strategy: fail-fast: false matrix: python-version: - "3.9" # - "3.10" # - "3.11" # - "3.12" # - "3.13" runs-on: macos-14 steps: - uses: actions/checkout@v4 # Normally, we would use the superbly maintained... # - uses: actions/setup-python@v2 # with: # python-version: ${{ matrix.python-version }} # ... but in the repo, we want to test pyenv builds on macOS - run: | brew install openssl readline sqlite3 xz zlib - name: Ccache for gh actions uses: hendrikmuhs/ccache-action@v1.2.17 with: key: ${{ github.job }}-${{ matrix.python-version }} - name: install ccache run: | export PATH="/usr/lib/ccache:/usr/local/opt/ccache/libexec:$PATH" # https://github.com/pyenv/pyenv#installation - run: pwd - env: PYENV_ROOT: /Users/runner/work/pyenv/pyenv run: | echo $PYENV_ROOT echo "$PYENV_ROOT/shims:$PYENV_ROOT/bin" >> $GITHUB_PATH echo "$PATH" # bin/pyenv --debug install ${{ matrix.python-version }} # bin/pyenv global ${{ matrix.python-version }} # bin/pyenv rehash # - run: python --version - run: echo "$PATH" # - run: python -m pip --version # - shell: python # Prove that actual Python == expected Python # env: # EXPECTED_PYTHON: ${{ matrix.python-version }} # run: import os, sys ; assert sys.version.startswith(os.getenv("EXPECTED_PYTHON"))