Skip to content

Test build x64 on arm64 macos runner #55

Test build x64 on arm64 macos runner

Test build x64 on arm64 macos runner #55

Workflow file for this run

name: Build and upload to PyPI
on:
push:
# tags:
# - 'v*' # Push events to matching v*, i.e. v1.0, v20.15.10
# release:
# types:
# - published
jobs:
# build_sdist:
# name: Build source distribution
# runs-on: ubuntu-20.04
# steps:
# - uses: actions/checkout@v3
# with:
# submodules: recursive
# - uses: actions/setup-python@v4
# with:
# python-version: 3.8
# - name: Build sdist
# run: pipx run build --sdist
# - name: Test sdist
# run: |
# python -m pip install dist/apngasm_python-*.tar.gz
# pip install pytest Pillow numpy &&
# pytest
# - uses: actions/upload-artifact@v3
# with:
# path: dist/apngasm_python-*.tar.gz
build_wheels:
name: Build wheels for ${{ matrix.os }} ${{ matrix.cibw_archs }} ${{ matrix.cibw_build }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
include:
# - os: windows-2019
# cibw_archs: AMD64
# cibw_build: "*"
# cibw_environment: APNGASM_COMPILE_TARGET=x86_64
# - os: windows-2019
# cibw_archs: x86
# cibw_build: "*"
# cibw_environment: APNGASM_COMPILE_TARGET=x86
# - os: windows-2019
# cibw_archs: ARM64
# cibw_build: "*"
# cibw_environment: APNGASM_COMPILE_TARGET=armv8
- os: macos-14
cibw_archs: x86_64
cibw_build: "*"
cibw_environment: >
APNGASM_COMPILE_TARGET=x86_64
_PYTHON_HOST_PLATFORM=macosx-11.0-x86_64
MACOSX_DEPLOYMENT_TARGET=11.0
# - os: macos-14
# cibw_archs: arm64
# cibw_build: "*"
# cibw_environment: >
# APNGASM_COMPILE_TARGET=armv8
# _PYTHON_HOST_PLATFORM=macosx-11.0-arm64
# MACOSX_DEPLOYMENT_TARGET=11.0
- os: macos-14
cibw_archs: universal2
cibw_build: "*"
cibw_environment: >
APNGASM_COMPILE_TARGET=universal2
_PYTHON_HOST_PLATFORM=macosx-11.0-universal2
MACOSX_DEPLOYMENT_TARGET=11.0
# - os: ubuntu-20.04
# cibw_archs: x86_64
# cibw_build: "*"
# cibw_environment: APNGASM_COMPILE_TARGET=x86_64
# - os: ubuntu-20.04
# cibw_archs: i686
# cibw_build: "*"
# cibw_environment: APNGASM_COMPILE_TARGET=x86
# - os: ubuntu-20.04
# cibw_archs: aarch64
# cibw_build: "*-musllinux_*"
# cibw_environment: APNGASM_COMPILE_TARGET=armv8
# - os: ubuntu-20.04
# cibw_archs: aarch64
# cibw_build: "*-manylinux_*"
# cibw_environment: APNGASM_COMPILE_TARGET=armv8
# - os: ubuntu-20.04
# cibw_archs: ppc64le
# cibw_build: "*-musllinux_*"
# cibw_environment: APNGASM_COMPILE_TARGET=ppc64le
# - os: ubuntu-20.04
# cibw_archs: ppc64le
# cibw_build: "*-manylinux_*"
# cibw_environment: APNGASM_COMPILE_TARGET=ppc64le
# - os: ubuntu-20.04
# cibw_archs: s390x
# cibw_build: "*-musllinux_*"
# cibw_environment: APNGASM_COMPILE_TARGET=s390x
# - os: ubuntu-20.04
# cibw_archs: s390x
# cibw_build: "*-manylinux_*"
# cibw_environment: APNGASM_COMPILE_TARGET=s390x
steps:
- uses: actions/checkout@v3
with:
submodules: true
- name: Set up QEMU
if: runner.os == 'Linux'
uses: docker/setup-qemu-action@v2
with:
platforms: all
- name: Build wheels for ${{ matrix.os }} ${{ matrix.cibw_archs }} ${{ matrix.cibw_build }}
uses: pypa/cibuildwheel@edd67e0d266e14537bbf2619e8c6a379ecb038fc
env:
CIBW_BUILD_FRONTEND: build
CIBW_ARCHS: ${{ matrix.cibw_archs }}
# CIBW_ENVIRONMENT: PY_BUILD_CMAKE_VERBOSE=1 ${{ matrix.cibw_environment }}
CIBW_ENVIRONMENT: ${{ matrix.cibw_environment }}
CIBW_BUILD: ${{ matrix.cibw_build }}
CIBW_TEST_REQUIRES: pytest
CIBW_BEFORE_TEST: pip install --only-binary ":all:" Pillow numpy; true
CIBW_BEFORE_TEST_WINDOWS: pip install --only-binary ":all:" Pillow numpy || VER>NUL
CIBW_TEST_COMMAND: pytest {package}/tests
CIBW_TEST_SKIP: pp*
- uses: actions/upload-artifact@v3
with:
path: ./wheelhouse/*.whl
# upload_pypi_test:
# needs: [build_wheels, build_sdist]
# runs-on: ubuntu-latest
# if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v')
# steps:
# - uses: actions/download-artifact@v3
# with:
# # unpacks default artifact into dist/
# # if `name: artifact` is omitted, the action will create extra parent dir
# name: artifact
# path: dist
# - uses: pypa/[email protected]
# with:
# user: __token__
# password: ${{ secrets.TEST_PYPI_API_TOKEN }}
# repository_url: https://test.pypi.org/legacy/
upload_pypi:
needs: [build_wheels, build_sdist]

Check failure on line 158 in .github/workflows/build.yml

View workflow run for this annotation

GitHub Actions / Build and upload to PyPI

Invalid workflow file

The workflow is not valid. .github/workflows/build.yml (Line: 158, Col: 27): Job 'upload_pypi' depends on unknown job 'build_sdist'.
runs-on: ubuntu-latest
if: github.event_name == 'release' && github.event.action == 'published'
steps:
- uses: actions/download-artifact@v3
with:
# unpacks default artifact into dist/
# if `name: artifact` is omitted, the action will create extra parent dir
name: artifact
path: dist
- uses: pypa/[email protected]
with:
user: __token__
password: ${{ secrets.PYPI_API_TOKEN }}