Skip to content

j178/prek-action

Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Repository files navigation

Prek Action

Run prek in your GitHub Actions workflows.

Usage

name: Prek checks on: [push, pull_request] jobs: prek: runs-on: ubuntu-latest steps: - uses: actions/checkout@v6 - uses: j178/prek-action@v2

prek is always invoked as:

prek run --show-diff-on-failure --color=always <extra-args> 

Version Tags

Major and minor tags are moving tags. For example, v2 and v2.0 are not fixed releases:

  • v2 always points to the latest v2.x.y release
  • v2.0 always points to the latest v2.0.y release

For a stable reference, pin to a specific release tag such as v2.0.0, or pin to a commit SHA.

Inputs

Input Description Required Default
extra-args Additional arguments appended to prek run --show-diff-on-failure --color=always No --all-files
extra_args Deprecated alias for extra-args No
prek-version Version or semver range to install, for example 0.2.30, 0.3.x, <=1.0.0, or latest No latest
install-only Install prek but skip prek run No false
working-directory Directory where prek run is executed No .
show-verbose-logs Print the prek verbose log after prek run completes No true
cache Cache the prek environment between workflow runs No true
token Deprecated and unused; retained for backward compatibility No ''

Outputs

Output Description
prek-version The resolved prek version, normalized to a v-prefixed tag
cache-hit Whether the restored prek cache exactly matched the computed primary cache key

Examples

Install and run against all files:

steps: - uses: actions/checkout@v6 - uses: j178/prek-action@v2

Pass extra arguments:

steps: - uses: actions/checkout@v6 - uses: j178/prek-action@v2 with: extra-args: '--all-files --directory packages/'

Pin a specific prek version:

steps: - uses: actions/checkout@v6 - uses: j178/prek-action@v2 with: prek-version: '0.2.30'

Resolve a semver range:

steps: - uses: actions/checkout@v6 - uses: j178/prek-action@v2 with: prek-version: '0.3.x'

Install only:

steps: - uses: actions/checkout@v6 - uses: j178/prek-action@v2 with: install-only: true - run: prek run --show-diff-on-failure --color=always --all-files

Disable verbose log output after the run:

steps: - uses: actions/checkout@v6 - uses: j178/prek-action@v2 with: show-verbose-logs: false

Requirements

The target repository needs a prek or pre-commit configuration file:

  • prek.toml
  • .pre-commit-config.yaml
  • .pre-commit-config.yml

Contributing

For contributor setup, testing, bundling, and release steps, see CONTRIBUTING.md.

About

A GitHub Action that runs pre-commit hooks using prek in your CI/CD pipeline

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Sponsor this project

 

Contributors