django-for-runners_ynh/.github/workflows/pytest.yml

67 lines
1.4 KiB
YAML
Raw Normal View History

2021-10-10 14:38:40 +02:00
name: pytest
on:
2023-04-04 14:21:04 +02:00
# Allow to manually trigger the workflow
workflow_dispatch:
2021-10-10 14:35:06 +02:00
push:
2021-10-10 14:38:40 +02:00
branches:
2022-10-03 19:34:44 +02:00
- master
2021-10-10 14:35:06 +02:00
pull_request:
schedule:
- cron: '0 8 * * *'
2021-10-10 14:38:40 +02:00
jobs:
test:
runs-on: ubuntu-latest
strategy:
matrix:
2023-04-03 08:59:46 +02:00
python-version: ["3.11", "3.10", "3.9"]
2023-04-04 14:21:04 +02:00
env:
PYTHONUNBUFFERED: 1
PYTHONWARNINGS: always
2021-10-10 14:38:40 +02:00
steps:
2023-04-04 14:21:04 +02:00
- uses: actions/checkout@v3
# https://github.com/marketplace/actions/checkout
2022-10-03 19:34:44 +02:00
with:
fetch-depth: 0
2023-04-04 14:21:04 +02:00
- name: 'fetch master and testing (for Darker/Black)'
2022-10-03 19:34:44 +02:00
run: |
git fetch origin master
2023-04-04 14:21:04 +02:00
git fetch origin testing
2021-10-10 14:38:40 +02:00
- name: 'Set up Python ${{ matrix.python-version }}'
2022-10-03 19:34:44 +02:00
uses: actions/setup-python@v2
2021-10-10 14:38:40 +02:00
with:
python-version: '${{ matrix.python-version }}'
2023-04-04 14:21:04 +02:00
- uses: actions/cache@v3
# https://github.com/marketplace/actions/cache
2022-09-18 17:39:28 +02:00
with:
path: ~/.cache/
key: dot-cache-files
2021-10-10 14:38:40 +02:00
- name: 'Install package'
run: |
2022-10-03 19:34:44 +02:00
pip3 install poetry
2021-10-10 14:38:40 +02:00
make install
- name: 'List installed packages'
run: |
poetry run pip freeze
- name: 'Run tests with Python v${{ matrix.python-version }}'
run: |
make pytest
2022-09-18 18:58:52 +02:00
- name: 'Run Safety check'
run: |
make safety
2021-10-10 14:38:40 +02:00
- name: 'Upload coverage report'
2023-04-04 14:21:04 +02:00
uses: codecov/codecov-action@v3
# https://github.com/marketplace/actions/codecov
2022-09-18 17:39:38 +02:00
with:
fail_ci_if_error: false
verbose: true