3.1 KiB
3.1 KiB
🔍 Gitleaks Pre-commit Hook
Este hook personalizado ejecuta Gitleaks para generar reportes en HTML (usando plantillas) o JSON, con reglas configurables.
🚀 Uso
Agregá este repo en tu .pre-commit-config.yaml
:
- repo: https://git.fridu.us/heckyel/gitleaks-pre-commit-hook
rev: v1.0.0
hooks:
- id: gitleaks-template-report
# Uso básico (reglas por defecto de gitleaks)
args: ["--format=html"]
# Con reglas internas desde este repo
# args: ["--format=html", "--rules-internal"]
# Con reglas externas
# args: ["--format=html", "--rules-external", "--config=ruta/a/gitleaks.toml"]
⚠️ Si usás
--format=json
, no es necesario--template
.
🧩 Parámetros disponibles
Parámetro | Descripción |
---|---|
--template=NOMBRE |
Elige la plantilla HTML a usar (por defecto: leet ) |
--format=html|json |
Formato de salida del reporte (html por defecto, o json ) |
--redact |
Oculta los secretos detectados con *** en el reporte |
--force |
Fuerza la reinstalación de Gitleaks (útil para debugging o versiones rotas) |
--version=VERSIÓN |
Versión de Gitleaks a instalar (por defecto: v8.27.0 ) |
--rules-internal |
Usa el archivo de reglas interno (rules/gitleaks.toml ) |
--rules-external |
Requiere --config para especificar un archivo de reglas externo |
--config=archivo |
Ruta a archivo de reglas personalizado (requiere --rules-external ) |
Comportamiento de las reglas:
- Por defecto: Usa solo las reglas incorporadas de gitleaks
- Con
--rules-internal
: Usa el archivo de reglas interno - Con
--rules-external --config=archivo
: Usa el archivo de reglas externo especificado
🎨 Plantillas disponibles (--format=html
)
Nombre | Archivo generado |
---|---|
leet |
.pre-commit/gitleaks/report/index.html |
basic |
.pre-commit/gitleaks/report/index.html |
myspace |
.pre-commit/gitleaks/report/index.html |
w98 |
.pre-commit/gitleaks/report/index.html |
wxp |
.pre-commit/gitleaks/report/index.html |
⚠️ El archivo generado siempre se llama
index.html
, sin importar la plantilla usada.
📂 Salida esperada
Formato HTML:
.pre-commit/gitleaks/report/
├── index.html
Formato JSON:
.pre-commit/gitleaks/report/
├── report.json
✅ Requisitos
- Tener
gitleaks
instalado y disponible en tuPATH
- El archivo de reglas debe existir solo si se usa con
--rules-external
🛠️ Configuración para desarrollo
pre-commit install
pre-commit run --all-files