1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69
|
---
name: Build
on:
push:
branches:
- main
- master
- dev
pull_request:
schedule:
- cron: "17 6 * * *"
workflow_dispatch:
jobs:
pre-commit:
runs-on: "ubuntu-latest"
strategy:
matrix:
python-version: [3.8, 3.9]
name: Pre-commit
steps:
- name: Check out the repository
uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v3
with:
python-version: ${{ matrix.python-version }}
- name: Upgrade pip
run: |
pip install --constraint=.github/workflows/constraints.txt pip
pip --version
- name: Install Python modules
run: |
pip install --constraint=.github/workflows/constraints.txt \
pre-commit black flake8 reorder-python-imports
- name: Run pre-commit on all files
run: |
pre-commit run --all-files --show-diff-on-failure --color=always
tests:
runs-on: "ubuntu-latest"
strategy:
matrix:
python-version: [3.8, 3.9]
name: Run tests
steps:
- name: Check out code from GitHub
uses: "actions/checkout@v3"
- name: Setup Python ${{ matrix.python-version }}
uses: "actions/setup-python@v3"
with:
python-version: ${{ matrix.python-version }}
- name: Install requirements
run: |
pip install --constraint=.github/workflows/constraints.txt pip
pip install -r requirements_dev.txt
- name: Tests suite
run: |
pytest -p no:sugar
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v2.1.0
with:
env_vars: OS,PYTHON
verbose: true
|