{"repo":"pre-commit/action","free":true,"listed":false,"github":"https://github.com/pre-commit/action","clone":"git clone https://github.com/pre-commit/action.git","description":"a GitHub action to run `pre-commit`","language":null,"stars":562,"topics":["pre-commit","github-actions"],"license":"MIT","category":"workflow-automation","readme_excerpt":"this action is in maintenance-only mode and will not be accepting new features. generally you want to use [pre-commit.ci] which is faster and has more features. [pre-commit.ci]: https://pre-commit.ci pre-commit/action ================= 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: This does a few things: - clones the code - installs python - sets up the pre-commit cache using this action with custom invocations By default, this action runs all the hooks against all the files. extra args lets users specify a single hook id and/or options to pass to pre-commit run . Here's a sample step configuration that only runs the flake8 hook against all the files (use the template above except for the pre-commit action): using this action in private repositories prior to v3.0.0, this action had custom behaviour which pushed changes back to the pull request when supplied with a token . this behaviour was removed: - it required a PAT (didn't work with short-lived GITHUB TOKEN ) - properly hiding this input from the installation and execution of hooks is intractable in github actions (it is readily available as $INPUT TOKEN ) - this meant potentially unvetted code could access the token via the environment you can likely achieve the same thing with an external action such as [git-auto-commit-action] though you may want to take precautions to clear git hooks or other ways that arbitrary ","default_branch":null,"files":null,"tree":[],"storefront":"/r/pre-commit","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/pre-commit/action/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}