# GitHub Action that uses Black to reformat all Python code and submits a PR # in regular intervals. Inspired by: https://github.com/cclauss/autoblack name: autoblack on: # schedule: # cron: '0 8 * * 5' # every Friday at 8am UTC workflow_dispatch: # allow manual trigger jobs: autoblack: runs-on: ubuntu-latest steps: - uses: actions/checkout@v2 with: ref: ${{ github.head_ref }} - uses: actions/setup-python@v2 - run: pip install black - name: Auto-format code if needed run: black spacy - name: Check for modified files id: git-check run: echo ::set-output name=modified::$(if git diff-index --quiet HEAD --; then echo "false"; else echo "true"; fi) - name: Commit modified files if: steps.git-check.outputs.modified == 'true' run: | git config --global user.name 'explosion-bot' git config --global user.email 'explosion-bot@users.noreply.github.com' git remote set-url origin https://x-access-token:${{ secrets.GITHUB_TOKEN }}@github.com/$GITHUB_REPOSITORY git status git add -A git commit -am "Auto-format code with black" - name: Create Pull Request if: steps.git-check.outputs.modified == 'true' uses: peter-evans/create-pull-request@v3 with: title: Auto-format code with black labels: meta author: ${{ github.actor }} <${{ github.actor }}@users.noreply.github.com> body: _This PR is auto-generated._ branch: autoblack delete-branch: true draft: false - name: Check outputs if: steps.git-check.outputs.modified == 'true' run: | echo "Pull Request Number - ${{ steps.cpr.outputs.pull-request-number }}" echo "Pull Request URL - ${{ steps.cpr.outputs.pull-request-url }}"