Skip to content

Update badge

Update badge #2

Workflow file for this run

# Deploy tagged releases.
name: Deploy Release
on:
push:
tags:
- '*'
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
jobs:
build_wheels:
name: Build wheel for cp${{ matrix.python }}-${{ matrix.builder }}_${{ matrix.arch }}
runs-on: ${{ matrix.os }}
strategy:
# Ensure that a wheel builder finishes even if another fails. Useful for
# debugging multiple problems in parallel.
fail-fast: false
matrix:
include:
# Linux 64 bit manylinux
- os: ubuntu-latest
arch: x86_64
python: 39
builder: manylinux
- os: ubuntu-latest
arch: x86_64
python: 310
builder: manylinux
- os: ubuntu-latest
arch: x86_64
python: 311
builder: manylinux
- os: ubuntu-latest
arch: x86_64
python: 312
builder: manylinux
- os: ubuntu-latest
arch: x86_64
python: 313
builder: manylinux
# MacOS x86_64. The macos-13 runner is the last
# Intel-based runner version. At some point we'll
# need to switch to macos-latest and test cross compiling.
- os: macos-13
arch: x86_64
python: 310
builder: macosx
- os: macos-13
arch: x86_64
python: 311
builder: macosx
- os: macos-13
arch: x86_64
python: 312
builder: macosx
- os: macos-13
arch: x86_64
python: 313
builder: macosx
# MacOS arm64
- os: macos-latest
arch: arm64
python: 310
builder: macosx
- os: macos-latest
arch: arm64
python: 311
builder: macosx
- os: macos-latest
arch: arm64
python: 312
builder: macosx
- os: macos-latest
arch: arm64
python: 313
builder: macosx
env:
CIBW_BUILD: cp${{ matrix.python }}-${{ matrix.builder }}_${{ matrix.arch }}
CIBW_MANYLINUX_X86_64_IMAGE: ${{ matrix.builder }}2014
CIBW_MANYLINUX_I686_IMAGE: ${{ matrix.builder }}2014
CIBW_BUILD_VERBOSITY: 3
CIBW_ENVIRONMENT_LINUX: >
CC=gcc
CIBW_ENVIRONMENT_MACOS: >
CC=clang
CIBW_BEFORE_BUILD_LINUX: ./packaging/wheels/install_deps_linux.sh
CIBW_BEFORE_BUILD_MACOS: ./packaging/wheels/install_deps_osx.sh
CIBW_BEFORE_TEST: export OMP_NUM_THREADS=2
CIBW_TEST_REQUIRES: h5py zarr
CIBW_TEST_COMMAND: python3 -c 'import flacarray.tests; flacarray.tests.run()'
steps:
- name: Checkout
uses: actions/checkout@v4
- uses: actions/setup-python@v5
name: Install Python
with:
python-version: '3.11'
- name: Install cibuildwheel
run: |
python -m pip install twine cibuildwheel==2.22.0
- name: Build wheel
run: |
python -m cibuildwheel --output-dir wheelhouse
upload_pypi:
needs: build_wheels
runs-on: ubuntu-latest
permissions:
id-token: write
steps:
- uses: actions/download-artifact@v4
with:
# Unpacks all artifacts into dist/
pattern: flacarray-*
path: dist
merge-multiple: true
- uses: pypa/gh-action-pypi-publish@release/v1