Remove copy paste error from pyproject.toml #295
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Continous integration | |
on: | |
pull_request: | |
paths-ignore: | |
- 'docs/**' | |
- '*.rst' | |
push: | |
branches: | |
- develop | |
- main | |
tags: | |
- "*" | |
jobs: | |
lint: | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v2.3.4 | |
- name: Set up Python 3.8 | |
uses: actions/setup-python@v2.2.1 | |
with: | |
python-version: 3.8 | |
- name: Install tox | |
run: pip install tox | |
- name: Lint | |
run: tox -e lint | |
package-checks: | |
strategy: | |
matrix: | |
tox_env: | |
- twine_check | |
runs-on: ubuntu-20.04 | |
steps: | |
- uses: actions/checkout@v2.3.4 | |
- name: Set up Python 3.8 | |
uses: actions/setup-python@v2.2.1 | |
with: | |
python-version: 3.8 | |
- name: Install tox | |
run: pip install --upgrade tox | |
- name: Run tox -e ${{ matrix.tox_env }} | |
run: tox -e ${{ matrix.tox_env }} | |
test: | |
runs-on: ${{ matrix.os }} | |
strategy: | |
matrix: | |
python-version: | |
- "3.8" | |
- "3.9" | |
- "3.10" | |
- "3.11" | |
- "3.12" | |
os: ["ubuntu-latest"] | |
include: | |
- os: "macos-latest" | |
python-version: "3.8" | |
- os: "macos-latest" | |
python-version: "3.12" | |
- os: "windows-latest" | |
python-version: "3.8" | |
- os: "windows-latest" | |
python-version: "3.12" | |
steps: | |
- uses: actions/checkout@v2.3.4 | |
- name: Set up Python ${{ matrix.python-version }} | |
uses: actions/setup-python@v2.2.1 | |
with: | |
python-version: ${{ matrix.python-version }} | |
- name: Install tox | |
run: pip install tox | |
- name: Run tests | |
run: tox | |
if: ${{ runner.os != 'Linux' }} | |
- name: Run tests | |
run: tox | |
env: | |
CFLAGS: "-mssse3" | |
# Test linux with ssse3 instructions | |
if: ${{ runner.os == 'Linux' }} | |
- name: Upload coverage report | |
uses: codecov/codecov-action@v1 | |
# test-arch: | |
# if: startsWith(github.ref, 'refs/tags') || github.ref == 'refs/heads/develop' || github.ref == 'refs/heads/main' | |
# runs-on: "ubuntu-latest" | |
# needs: lint | |
# strategy: | |
# matrix: | |
# distro: [ "ubuntu20.04" ] | |
# arch: ["aarch64"] | |
# steps: | |
# - uses: actions/checkout@v2.3.4 | |
# - uses: uraimo/run-on-arch-action@v2.0.9 | |
# name: Build & run test | |
# with: | |
# arch: ${{ matrix.arch }} | |
# distro: ${{ matrix.distro }} | |
# install: | | |
# apt-get update -q -y | |
# apt-get install -q -y python3 python3-pip gcc | |
# run: | | |
# python3 -m pip install -U setuptools pip wheel tox | |
# tox | |
deploy: | |
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags') | |
runs-on: ${{ matrix.os }} | |
needs: [lint, package-checks, test] | |
strategy: | |
matrix: | |
os: | |
- ubuntu-latest | |
- macos-latest | |
- windows-latest | |
cibw_archs_linux: ["x86_64"] | |
build_sdist: [true] | |
# include: | |
# - os: "ubuntu-latest" | |
# cibw_archs_linux: "aarch64" | |
steps: | |
- uses: actions/checkout@v2.3.4 | |
- uses: actions/setup-python@v2 | |
name: Install Python | |
- name: Install cibuildwheel twine wheel | |
run: python -m pip install cibuildwheel twine wheel | |
- name: Set up QEMU | |
if: ${{runner.os == 'Linux' && matrix.cibw_archs_linux == 'aarch64'}} | |
uses: docker/setup-qemu-action@v1.0.1 | |
with: | |
platforms: arm64 | |
- name: Build wheels | |
run: cibuildwheel --output-dir dist | |
env: | |
CIBW_SKIP: "*-win32 *-manylinux_i686 pp3*" # Skip 32 bit, pypy | |
# Build linux with ssse3 for extra BAM parsing speed. | |
CIBW_ENVIRONMENT_LINUX: >- | |
CFLAGS="-g0 -DNDEBUG -mssse3" | |
CIBW_ENVIRONMENT_MACOS: >- | |
CFLAGS="-g0 -DNDEBUG" | |
CIBW_ARCHS_LINUX: ${{ matrix.cibw_archs_linux }} | |
# Fully test the build wheels again. | |
CIBW_TEST_REQUIRES: "pytest" | |
# Simple test that requires the project to be build correctly | |
CIBW_TEST_COMMAND: >- | |
pytest {project}/tests/ | |
- name: Build sdist | |
if: ${{runner.os == 'Linux' && matrix.cibw_archs_linux == 'x86_64'}} | |
run: | | |
pip install build | |
python -m build --sdist | |
- uses: actions/upload-artifact@v2 | |
with: | |
name: "dist" | |
path: "dist/" | |
- name: Publish package to TestPyPI | |
# pypa/gh-action-pypi-publish@master does not work on OSX | |
# Alpha, Beta and dev releases contain a - in the tag. | |
if: contains(github.ref, '-') && startsWith(github.ref, 'refs/tags') | |
run: twine upload --skip-existing --repository-url https://test.pypi.org/legacy/ dist/* | |
env: | |
TWINE_USERNAME: __token__ | |
TWINE_PASSWORD: ${{ secrets.TEST_PYPI_API_TOKEN }} | |
- name: Publish package to PyPI | |
if: "!contains(github.ref, '-') && startsWith(github.ref, 'refs/tags')" | |
run: twine upload --skip-existing dist/* | |
env: | |
TWINE_USERNAME: __token__ | |
TWINE_PASSWORD: ${{ secrets.PYPI_API_TOKEN }} |