name: Wheels on: [push, pull_request] env: REPO_DIR: Pillow BUILD_DEPENDS: "" TEST_DEPENDS: "pytest pytest-cov" WHEEL_SDIR: wheelhouse jobs: build: name: ${{ matrix.python }} ${{ matrix.os-name }} ${{ matrix.platform }} runs-on: ${{ matrix.os }} strategy: fail-fast: false matrix: os: [ "ubuntu-16.04", "macos-latest" ] python: [ "pypy3.7-7.3.3","pypy3.6-7.3.3", "3.6", "3.7", "3.8", "3.9" ] platform: [ "x86_64", "i686" ] macos-target: [ "10.10" ] exclude: - os: "macos-latest" platform: "i686" include: - os: "macos-latest" os-name: "osx" - os: "ubuntu-16.04" os-name: "xenial" # Disable whilst not available # - os: "macos-11.0" # os-name: "osx" # platform: "arm64" # python: "3.9" # macos-target: "11.0" env: BUILD_COMMIT: HEAD PLAT: ${{ matrix.platform }} MB_PYTHON_VERSION: ${{ matrix.python }} TRAVIS_OS_NAME: ${{ matrix.os-name }} MACOSX_DEPLOYMENT_TARGET: ${{ matrix.macos-target }} steps: - uses: actions/checkout@v2 with: submodules: true - uses: actions/setup-python@v2 with: python-version: 3.9 - name: Build Wheel run: .github/workflows/build.sh - uses: actions/upload-artifact@v2 with: name: wheels path: wheelhouse/*.whl # Uncomment to get SSH access for testing # - name: Setup tmate session # if: failure() # uses: mxschmitt/action-tmate@v3 build-latest: name: ${{ matrix.python }} ${{ matrix.os-name }} ${{ matrix.platform }} latest runs-on: ${{ matrix.os }} if: "!startsWith(github.ref, 'refs/tags/')" strategy: fail-fast: false matrix: os: [ "ubuntu-16.04", "macos-latest" ] python: [ "pypy3.7-7.3.3", "pypy3.6-7.3.3", "3.6", "3.7", "3.8", "3.9" ] platform: [ "x86_64", "i686" ] macos-target: [ "10.10" ] exclude: - os: "macos-latest" platform: "i686" include: - os: "macos-latest" os-name: "osx" - os: "ubuntu-16.04" os-name: "xenial" - os: "macos-11.0" os-name: "osx" platform: "arm64" python: "3.9" macos-target: "11.0" env: BUILD_COMMIT: master PLAT: ${{ matrix.platform }} MB_PYTHON_VERSION: ${{ matrix.python }} TRAVIS_OS_NAME: ${{ matrix.os-name }} MACOSX_DEPLOYMENT_TARGET: ${{ matrix.macos-target }} steps: - uses: actions/checkout@v2 with: submodules: true - uses: actions/setup-python@v2 with: python-version: 3.9 - name: Build Wheel run: .github/workflows/build.sh - uses: actions/upload-artifact@v2 with: name: wheels-latest path: wheelhouse/*.whl release: name: Create Release runs-on: ubuntu-latest if: "startsWith(github.ref, 'refs/tags/')" needs: build steps: - uses: actions/download-artifact@v2 with: name: wheels - name: Upload Release uses: fnkr/github-action-ghr@v1.3 env: GHR_PATH: . GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}