1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66
|
name: build
on: [push, pull_request]
jobs:
build:
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
python: ["2.7", "3.5", "3.6", "3.7", "3.8", "3.9", "pypy3"]
os: [ubuntu-latest, windows-latest]
include:
- python: "2.7"
tox_env: "py27-pytest30"
- python: "3.5"
tox_env: "py35-pytest30"
- python: "3.6"
tox_env: "py36-pytest30"
- python: "3.7"
tox_env: "py37-pytest30"
- python: "3.8"
tox_env: "py38-pytest30"
- python: "3.9"
tox_env: "py39-pytest30"
- python: "pypy3"
tox_env: "pypy3-pytest30"
steps:
- uses: actions/checkout@v2
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python }}
- name: Test
run: |
pipx run tox -e ${{ matrix.tox_env }}
deploy:
if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags')
runs-on: ubuntu-latest
needs: build
steps:
- uses: actions/checkout@v2
- name: Set up Python
uses: actions/setup-python@v2
with:
python-version: "3.7"
- name: Install wheel
run: |
python -m pip install --upgrade pip
pip install wheel
- name: Build package
run: |
python setup.py sdist bdist_wheel
- name: Publish package to PyPI
uses: pypa/gh-action-pypi-publish@master
with:
user: __token__
password: ${{ secrets.pypi_token }}
|