82 lines
1.9 KiB
YAML
82 lines
1.9 KiB
YAML
name: build
|
|
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
|
build:
|
|
|
|
runs-on: ${{ matrix.os }}
|
|
|
|
strategy:
|
|
fail-fast: false
|
|
matrix:
|
|
tox_env:
|
|
- "py36-pytestlatest"
|
|
- "py37-pytestlatest"
|
|
- "py38-pytestlatest"
|
|
- "py39-pytestlatest"
|
|
- "py310-pytestlatest"
|
|
- "py38-pytestmain"
|
|
- "py38-psutil"
|
|
- "py38-setproctitle"
|
|
|
|
os: [ubuntu-latest, windows-latest]
|
|
include:
|
|
- tox_env: "py36-pytestlatest"
|
|
python: "3.6"
|
|
- tox_env: "py37-pytestlatest"
|
|
python: "3.7"
|
|
- tox_env: "py38-pytestlatest"
|
|
python: "3.8"
|
|
- tox_env: "py39-pytestlatest"
|
|
python: "3.9"
|
|
- tox_env: "py310-pytestlatest"
|
|
python: "3.10-dev"
|
|
- tox_env: "py38-pytestmain"
|
|
python: "3.8"
|
|
- tox_env: "py38-psutil"
|
|
python: "3.8"
|
|
- tox_env: "py38-setproctitle"
|
|
python: "3.8"
|
|
|
|
steps:
|
|
- uses: actions/checkout@v2
|
|
- name: Set up Python
|
|
uses: actions/setup-python@v2
|
|
with:
|
|
python-version: ${{ matrix.python }}
|
|
- name: Install tox
|
|
run: |
|
|
python -m pip install --upgrade pip
|
|
pip install tox
|
|
- name: Test
|
|
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 }}
|