Files
letta-server/.github/workflows/black_format.yml
2024-09-08 15:36:57 -07:00

41 lines
1.3 KiB
YAML

name: Code Formatter (Black)
on:
pull_request:
paths:
- '**.py'
workflow_dispatch:
jobs:
black-check:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- name: "Setup Python, Poetry and Dependencies"
uses: packetcoders/action-setup-cache-python-poetry@main
with:
python-version: "3.12"
poetry-version: "1.8.2"
install-args: "-E dev" # TODO: change this to --group dev when PR #842 lands
- name: Run Black
id: black
run: poetry run black --check .
continue-on-error: true
- name: Auto-fix with Black and commit
if: steps.black.outcome == 'failure' || ${{ !contains(github.event.issue.labels.*.name, 'check-only') }}
run: |
black .
git config --local user.email "action@github.com"
git config --local user.name "GitHub Action"
git commit -am "Apply Black formatting" || echo "No changes to commit"
git push
- name: Error if 'check-only' label is present
if: steps.black.outcome == 'failure' && contains(github.event.issue.labels.*.name, 'check-only')
run: echo "Black formatting check failed. Please run 'black .' locally to fix formatting issues." && exit 1