Betterleaks
https://github.com/betterleaks/betterleaks
hk を使って git hooks に組み込む
hk の組み込みの設定で Betterleaks のものがある。
https://hk.jdx.dev/builtins.html#betterleaks
code:hk-builtin.pkl
hooks {
"pre-commit" {
steps {
"betterleaks" = Builtins.betterleaks
}
}
}
実体は Check: betterleaks dir --redact --verbose --no-banner {{ files }} である。
ただここの files に入るのは、タイプがただのテキストファイルとして入ってきたもののみの模様。
https://github.com/jdx/hk/blob/65859836b865052d97fe84386ecd848e268cd6d6/pkl/builtins/betterleaks.pkl
自分としては次の設定にしている。
code:hk-custom.pkl
hooks {
"pre-commit" {
steps {
"betterleaks" {
// betterleaks git --staged はステージ内容(index)を直接スキャンするので {{files}} は渡さない
// → hk の types=text 選別に依存せず、id_rsa などの拡張子なし秘密鍵ファイルも取りこぼさない
check = "betterleaks git --staged --redact --no-banner --verbose"
}
}
}
}