pip/.github/workflows/python-linters.yml

61 lines
1.4 KiB
YAML

name: Code quality
on:
push:
pull_request:
schedule:
# Run every Friday at 18:02 UTC
# https://crontab.guru/#2_18_*_*_5
- cron: 2 18 * * 5
jobs:
linters:
name: 🤖
runs-on: ${{ matrix.os }}
strategy:
# max-parallel: 5
matrix:
os:
- ubuntu-18.04
env:
- TOXENV: docs
- TOXENV: lint
- TOXENV: lint-py2
PYTHON_VERSION: 2.7
- TOXENV: mypy
- TOXENV: packaging
steps:
- uses: actions/checkout@master
- name: Set up Python ${{ matrix.env.PYTHON_VERSION || 3.7 }}
uses: actions/setup-python@v1
with:
version: ${{ matrix.env.PYTHON_VERSION || 3.7 }}
- name: Pre-configure global Git settings
run: >-
tools/travis/setup.sh
- name: Update setuptools and tox dependencies
run: >-
tools/travis/install.sh
- name: 'Initialize tox envs: ${{ matrix.env.TOXENV }}'
run: >-
python -m tox --notest --skip-missing-interpreters false
env: ${{ matrix.env }}
- name: Test with tox
run: >-
python -m tox
env: ${{ matrix.env }}
news_format:
name: Check NEWS format
runs-on: ubuntu-18.04
steps:
- uses: actions/checkout@master
- name: Set up Python
uses: actions/setup-python@v1
with:
version: 3.7
- name: Install nox
run: pip install nox
- name: Check NEWS format
run: nox -s validate_news