diff --git a/.github/workflows/ci-cd.yml b/.github/workflows/ci-cd.yml index 952579bbe..e1953559b 100644 --- a/.github/workflows/ci-cd.yml +++ b/.github/workflows/ci-cd.yml @@ -524,10 +524,43 @@ jobs: || '*-musllinux_*' }} pp* + build-wheels-for-mobile-archs: + name: >- # ${{ '' } is a hack to nest jobs under the same sidebar category + 📦 Build wheels for mobile arches${{ '' }} + needs: + - build-pure-python-dists + - pre-deploy + - pre-setup # transitive, for accessing settings + strategy: + fail-fast: false + matrix: + include: + - platform: ios + runner-vm-os: macos-latest + - platform: android + runner-vm-os: ubuntu-latest + uses: ./.github/workflows/reusable-cibuildwheel.yml + with: + check-name: >- + Build ${{ matrix.platform }} wheels on ${{ matrix.runner-vm-os }} + runner-vm-os: ${{ matrix.runner-vm-os }} + timeout-minutes: 60 + source-tarball-name: >- + ${{ needs.build-pure-python-dists.outputs.sdist-filename }} + dists-artifact-name: ${{ needs.pre-setup.outputs.dists-artifact-name }} + # iOS and Android wheels target Python 3.13+ (PEP 730, PEP 738). + # Tests are skipped here because mobile testing requires + # simulator/emulator setup outside the scope of this job. + environment-variables: |- + CIBW_PLATFORM=${{ matrix.platform }} + + CIBW_TEST_SKIP=* + deploy: name: Deploy needs: - build-pure-python-dists + - build-wheels-for-mobile-archs - build-wheels-for-odd-archs - build-wheels-for-tested-arches - pre-setup # transitive, for accessing settings diff --git a/CHANGES/1337.feature.rst b/CHANGES/1337.feature.rst new file mode 100644 index 000000000..999d98f7d --- /dev/null +++ b/CHANGES/1337.feature.rst @@ -0,0 +1,2 @@ +Added a CI job to build wheels for iOS and Android on release-tag builds +-- by :user:`aiolibsbot`.