thiagowfx's avatar

Β¬ just serendipity πŸ€ (not just serendipity)

pre-commit: make a hook opt-in

β€’ 115 words β€’ 1 min β€’ updated

⚠️ This post is over one year old. It may no longer be up to date or relevant. Opinions may have changed.

Recently we added the following hook to our pre-commit setup:

yaml
repos:
  - repo: https://github.com/sbrunner/hooks
    rev: ee105bd276e163fce85744b39104ca563f923c47 # frozen: 1.4.0
    hooks:
      - id: helm-lock

It can be triggered with pre-commit run --all-files helm-lock.

It turned out to be an issue because not every developer has read-only access to our helm repositories.

The workaround was to make this hook opt-in.

We can do so by adding it to the manual stage:

yaml
repos:
  - repo: https://github.com/sbrunner/hooks
    rev: ee105bd276e163fce85744b39104ca563f923c47 # frozen: 1.4.0
    hooks:
      - id: helm-lock
        stages:
          - manual

It can be then invoked like this: pre-commit run --all-files helm-lock --hook-stage manual.

An alternative could have been to instruct people to set SKIP=helm-lock, however defaults are powerful.