Skip to content
This repository has been archived by the owner on Oct 8, 2024. It is now read-only.

Update README.md

Update README.md #82

Workflow file for this run

name: Test workflow
on:
push:
branches: [ master, main, release ]
pull_request:
branches: [ master, main, release ]
workflow_dispatch:
jobs:
test:
strategy:
matrix:
python-version: [3.9, 3.8]
os: [ubuntu-20.04]
include:
- python-version: 3.9
os: ubuntu-20.04
publish-results: true
tox-full-run: true
runs-on: ${{ matrix.os }}
services:
postgres:
image: postgres:14
env:
POSTGRES_PASSWORD: example
POSTGRES_USER: user1
PGDATA: /srv
ports:
- 5432:5432
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install poetry tox tox-gh-actions
poetry install
- name: Test with tox
if: ${{ !matrix.tox-full-run }}
env:
PYTESTTARGETS: tests integration_tests
run:
poetry run tox -e test
- name: Lint and test with tox
if: ${{ matrix.tox-full-run }}
env:
PYTESTTARGETS: tests integration_tests
run:
poetry run tox
- name: list files
if: ${{ always() }}
run: ls -l .
- name: Publish Test Results
if: ${{ matrix.publish-results && always() }}
uses: EnricoMi/publish-unit-test-result-action/composite@v1
with:
files: pytest.xml
- uses: codecov/codecov-action@v1
if: ${{ matrix.publish-results && always() }}
with:
fail_ci_if_error: true
files: coverage.xml
cross_platform_test:
needs: test
strategy:
matrix:
python-version: [3.9, 3.8]
os: [windows-latest, macos-latest]
runs-on: ${{ matrix.os }}
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install poetry tox tox-gh-actions
poetry install
- name: Test with tox
run:
poetry run tox -e test
publish_dev_build:
# if test failed, we should not publish
needs: [test, cross_platform_test]
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-python@v2
with:
python-version: 3.9
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install poetry
poetry install
- name: list files
run: ls -l .
- name: Build wheels and source tarball
run: |
poetry version $(poetry version --short)-dev.$GITHUB_RUN_NUMBER
poetry version --short
poetry build
- name: publish to Test PyPI
uses: pypa/gh-action-pypi-publish@master
with:
user: __token__
password: ${{ secrets.TEST_PYPI_API_TOKEN}}
repository_url: https://test.pypi.org/legacy/
skip_existing: true