name: continuous-integration | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
branches: | |
- main | |
jobs: | |
continuous-integration: | |
runs-on: ubuntu-22.04 | |
steps: | |
- uses: actions/checkout@v2 | |
- name: Set up Python 3.7.13 | |
uses: actions/setup-python@v2 | |
with: | |
python-version: 3.7.13 | |
- name: Install dependencies | |
run: | | |
curl -sSL https://install.python-poetry.org | python3 - | |
poetry --no-root install | |
- uses: jamescurtin/isort-action@master | |
- name: Lint with flake8 | |
run: | | |
poetry run flake8 | |
- name: Lint with static type checker mypy | |
run: | | |
poetry run mypy . | |
- name: Test with pytest | |
run: | | |
poetry run pytest | |
- name: Coverage report | |
run: | | |
poetry run coverage run -m pytest | |
poetry run coverage xml | |
- name: Upload Coverage Report to Codecov | |
uses: codecov/codecov-action@v3 | |
with: | |
token: ${{ secrets.CODECOV_TOKEN }} | |