Skip to content

Commit 2135954

Browse files
committed
Update conftest-doc hook to use 'policy' directory by default and enhance documentation with output directory and template options
1 parent 4e821b2 commit 2135954

File tree

2 files changed

+12
-4
lines changed

2 files changed

+12
-4
lines changed

.pre-commit-hooks.yaml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,9 @@
4040

4141
- id: conftest-doc
4242
name: Conftest Doc Policy Documentation
43-
description: Generate policy documentation, fails if docs are out of date. Requires args with policy directory path.
43+
description: Generate policy documentation, fails if docs are out of date. Defaults to policy directory. Supports -o for output directory and --template for custom template.
4444
entry: conftest doc
45+
args: [policy]
4546
language: golang
4647
pass_filenames: false
4748
require_serial: true

docs/pre_commit.md

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -28,18 +28,25 @@ your Rego policies. It runs `conftest doc` and if the generated documentation
2828
differs from what's committed, pre-commit will fail. The updated documentation
2929
files are written, so you can simply stage them and re-commit.
3030

31-
**Important:** You must specify the policy directory via `args` - this hook
32-
requires at least one directory path argument.
31+
By default, the hook documents the `policy` directory. Specifying `args`
32+
replaces the default, so you must include the policy directory path.
3333

3434
```yaml
3535
repos:
3636
- repo: https://github.com/open-policy-agent/conftest
3737
rev: v0.64.0
3838
hooks:
3939
- id: conftest-doc
40-
args: [path/to/your/policies] # Required: policy directory to document
40+
# Uses 'policy' directory by default, or specify your own:
41+
# args: [path/to/your/policies]
4142
# To specify an output directory, use -o:
4243
# args: [-o, docs/, path/to/your/policies]
44+
# To use a custom template, use --template:
45+
# args: [--template, path/to/template.md, path/to/your/policies]
46+
# Combined example:
47+
# args: [-o, docs/, --template, path/to/template.md, path/to/your/policies]
48+
# To only run when .rego files in a specific directory change:
49+
# files: ^path/to/your/policies/.*\.rego$
4350
```
4451

4552
## Additional Hooks

0 commit comments

Comments
 (0)