# GitHub Action that uses Black to reformat the Python code in an incoming pull request. # If all Python code in the pull request is compliant with Black then this Action does nothing. # Othewrwise, Black is run and its changes are committed back to the incoming pull request. # https://github.com/cclauss/autoblack name: autoblack on: [pull_request, workflow_dispatch] jobs: build: runs-on: ubuntu-latest steps: - uses: actions/checkout@v1 - name: Set up Python 3.7 uses: actions/setup-python@v1 with: python-version: 3.9 - name: Install Black run: pip install black - name: Run black --check . run: black --check . - name: If needed, commit black changes to the pull request if: failure() run: | black . --line-length 101 git config --global user.name 'autoblack' git config --global user.email 'jasoncameron.all@gmail.com' git remote set-url origin https://x-access-token:${{ secrets.GITHUB_TOKEN }}@github.com/$GITHUB_REPOSITORY git checkout $GITHUB_HEAD_REF git commit -am "fixup: Format Python code with Black" git push