mirror of
https://github.com/arduino/library-registry.git
synced 2025-05-27 08:01:03 +03:00
On every push and pull request that affects relevant files, run flake8 to check the Python files of the repository for issues and black to check formatting. The .flake8 file is used to configure flake8: https://flake8.pycqa.org/en/latest/user/configuration.html
87 lines
2.0 KiB
YAML
87 lines
2.0 KiB
YAML
# Source: https://github.com/arduino/tooling-project-assets/blob/main/workflow-templates/check-python-task.md
|
|
name: Check Python
|
|
|
|
env:
|
|
# See: https://github.com/actions/setup-python/tree/v2#available-versions-of-python
|
|
PYTHON_VERSION: "3.9"
|
|
|
|
# See: https://docs.github.com/en/actions/reference/events-that-trigger-workflows
|
|
on:
|
|
push:
|
|
paths:
|
|
- ".github/workflows/check-python-task.ya?ml"
|
|
- "**/.flake8"
|
|
- "**/poetry.lock"
|
|
- "**/pyproject.toml"
|
|
- "**/setup.cfg"
|
|
- "Taskfile.ya?ml"
|
|
- "**/tox.ini"
|
|
- "**.py"
|
|
pull_request:
|
|
paths:
|
|
- ".github/workflows/check-python-task.ya?ml"
|
|
- "**/.flake8"
|
|
- "**/poetry.lock"
|
|
- "**/pyproject.toml"
|
|
- "**/setup.cfg"
|
|
- "Taskfile.ya?ml"
|
|
- "**/tox.ini"
|
|
- "**.py"
|
|
workflow_dispatch:
|
|
repository_dispatch:
|
|
|
|
jobs:
|
|
lint:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v2
|
|
|
|
- name: Install Python
|
|
uses: actions/setup-python@v2
|
|
with:
|
|
python-version: ${{ env.PYTHON_VERSION }}
|
|
|
|
- name: Install Poetry
|
|
run: pip install poetry
|
|
|
|
- name: Install Task
|
|
uses: arduino/setup-task@v1
|
|
with:
|
|
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
|
version: 3.x
|
|
|
|
- name: Run flake8
|
|
uses: liskin/gh-problem-matcher-wrap@v1
|
|
with:
|
|
linters: flake8
|
|
run: task python:lint
|
|
|
|
formatting:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- name: Checkout repository
|
|
uses: actions/checkout@v2
|
|
|
|
- name: Install Python
|
|
uses: actions/setup-python@v2
|
|
with:
|
|
python-version: ${{ env.PYTHON_VERSION }}
|
|
|
|
- name: Install Poetry
|
|
run: pip install poetry
|
|
|
|
- name: Install Task
|
|
uses: arduino/setup-task@v1
|
|
with:
|
|
repo-token: ${{ secrets.GITHUB_TOKEN }}
|
|
version: 3.x
|
|
|
|
- name: Format Python code
|
|
run: task python:format
|
|
|
|
- name: Check formatting
|
|
run: git diff --color --exit-code
|