Skip to content
a GitHub action to run `pre-commit`
JavaScript Makefile
Use this GitHub Action with your project

Add this Action to an existing workflow or create a new one.

View on Marketplace
Branch: master
Clone or download
Latest commit 14f0840 Dec 9, 2019
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github/workflows Initial commit Nov 25, 2019
.gitignore Initial commit Nov 25, 2019
.pre-commit-config.yaml Initial commit Nov 25, 2019
Makefile Initial commit Nov 25, 2019 Give the action sample a `name: ...` Nov 27, 2019
action.yml Initial commit Nov 25, 2019
index.js Initial commit Nov 25, 2019
package-lock.json fix security nag Dec 9, 2019
package.json Initial commit Nov 25, 2019

Build Status


a GitHub action to run pre-commit

using this action

To use this action, make a file .github/workflows/pre-commit.yml. Here's a template to get started:

name: pre-commit

    branches: [master]

    runs-on: ubuntu-latest
    - uses: actions/checkout@v1
    - uses: actions/setup-python@v1
    - name: set PY
      run: echo "::set-env name=PY::$(python --version --version | sha256sum | cut -d' ' -f1)"
    - uses: actions/cache@v1
        path: ~/.cache/pre-commit
        key: pre-commit|${{ env.PY }}|${{ hashFiles('.pre-commit-config.yaml') }}
    - uses: pre-commit/action@v1.0.0

This does a few things:

  • clones the code
  • installs python
  • sets up the pre-commit cache

Hopefully in the future when actions matures the yaml can be simplified.

using this action in private repositories

this action also provides an additional behaviour when used in private repositories. when configured with a github token, the action will push back fixes to the pull request branch.

here's an example configuration for that (use the template above except for the pre-commit action):

    - uses: pre-commit/action@v1.0.0
        token: ${{ secrets.GITHUB_TOKEN }}

note that secrets.GITHUB_TOKEN is automatically provisioned and will not require any special configuration.

while you could technically configure this for a public repository (using a personal access token), I can't think of a way to do this safely without exposing a privileged token to pull requests -- if you have any ideas, please leave an issue!

You can’t perform that action at this time.