- dropped dev dependency on rope, isort & flake - poetry doesn't support dev scripts like pipenv, so create a makefile instead - Add pytest-cov - Use tox for testing multiple python versions in CI - Update README Update ci workflow
57 lines
1.3 KiB
YAML
57 lines
1.3 KiB
YAML
name: CI
|
|
|
|
on: [push, pull_request]
|
|
|
|
jobs:
|
|
|
|
check-formatting:
|
|
runs-on: ubuntu-latest
|
|
|
|
name: Consult black on python formatting
|
|
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
- uses: actions/setup-python@v1
|
|
with:
|
|
python-version: 3.7
|
|
- uses: Gr1N/setup-poetry@v2
|
|
- name: Install dependencies
|
|
run: make setup
|
|
- name: Run black
|
|
run: make check-style
|
|
|
|
run-tests:
|
|
runs-on: ubuntu-latest
|
|
|
|
name: Run tests with tox
|
|
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
- uses: actions/setup-python@v1
|
|
with:
|
|
python-version: 3.7
|
|
- uses: Gr1N/setup-poetry@v2
|
|
- name: Install dependencies
|
|
run: |
|
|
sudo apt install protobuf-compiler libprotobuf-dev
|
|
make setup
|
|
- name: Run tests
|
|
run: make full-test
|
|
|
|
build-release:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@v1
|
|
- uses: actions/setup-python@v1
|
|
with:
|
|
python-version: 3.7
|
|
- uses: Gr1N/setup-poetry@v2
|
|
- name: Build package
|
|
run: poetry build
|
|
- name: Publish package to PyPI
|
|
if: github.event_name == 'push' && startsWith(github.event.ref, 'refs/tags')
|
|
run: poetry publish -n
|
|
env:
|
|
POETRY_PYPI_TOKEN_PYPI: ${{ secrets.pypi }}
|