51 lines
1.2 KiB
YAML
51 lines
1.2 KiB
YAML
name: Lint and Format
|
|
|
|
on:
|
|
push:
|
|
branches:
|
|
- master
|
|
- develop
|
|
pull_request:
|
|
branches:
|
|
- master
|
|
- develop
|
|
|
|
jobs:
|
|
format-and-lint:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Checkout code
|
|
uses: actions/checkout@de0fac2e4500dabe0009e67214ff5f5447ce83dd # v6.0.2
|
|
|
|
- name: Set up Python
|
|
uses: actions/setup-python@a309ff8b426b58ec0e2a45f0f869d46889d02405 # v6.2.0
|
|
with:
|
|
python-version: '3.9'
|
|
cache: 'pip'
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
python -m pip install --upgrade pip
|
|
pip install ruff
|
|
|
|
- name: Run Ruff linting
|
|
run: |
|
|
echo "::group::Ruff Linting"
|
|
ruff check . --output-format=github
|
|
echo "::endgroup::"
|
|
|
|
- name: Run Ruff formatting check
|
|
run: |
|
|
echo "::group::Ruff Formatting"
|
|
ruff format --check .
|
|
echo "::endgroup::"
|
|
|
|
- name: Report formatting issues
|
|
if: failure()
|
|
run: |
|
|
echo "::error::Formatting or linting issues detected!"
|
|
echo "To fix locally, run:"
|
|
echo " ruff check --fix ."
|
|
echo " ruff format ."
|
|
echo "Then commit and push the changes."
|