Skip to content

Commit d4de113

Browse files
committed
Fix pre-commit hook
1 parent 2c6557f commit d4de113

File tree

6 files changed

+114
-20
lines changed

6 files changed

+114
-20
lines changed

.githooks/pre-commit

Lines changed: 13 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,10 @@
1111

1212
set -euo pipefail
1313

14+
script_dir=$(dirname "$(readlink -f "${BASH_SOURCE[0]}")")
15+
16+
tf_modules=$("$script_dir/../scripts/collect-modules.sh")
17+
1418
function command_exists() {
1519
bin_name=$(basename "$1")
1620

@@ -35,11 +39,16 @@ if command_exists typos; then
3539
fi
3640

3741
if command_exists terraform-docs; then
38-
pushd asset-account/terraform/stack-set
39-
files="$files asset-account/terraform/stack-set/README.md"
42+
for module in $tf_modules; do
43+
module_dir=$(dirname "$module")
44+
45+
pushd "$module_dir"
46+
terraform-docs markdown . --output-file README.md
47+
popd
4048

41-
terraform-docs markdown . --output-file README.md
42-
popd
49+
# Extend `$files` to make `prettier` format the generated README.md
50+
files="$files $module_dir/README.md"
51+
done
4352
fi
4453

4554
if command_exists ./node_modules/.bin/prettier; then

.github/actions/collect-modules/action.yaml

Lines changed: 1 addition & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -13,21 +13,6 @@ runs:
1313
- name: Find modules
1414
id: find-modules
1515
run: |
16-
set -eu
17-
18-
tf_modules=()
19-
for module_cfg in $(find . -name .module.toml); do
20-
case $(yq -o y .module.type $module_cfg) in
21-
null)
22-
echo "Warning: module type not found in $module_cfg"
23-
continue
24-
;;
25-
terraform)
26-
echo "Found Terraform module in $module_cfg"
27-
tf_modules+=($(dirname $module_cfg))
28-
;;
29-
esac
30-
done
31-
16+
tf_modules=$(./scripts/collect-modules.sh)
3217
echo tf-modules=$(printf '%s\n' "${tf_modules[@]}" | jq -cnR '[inputs]') > $GITHUB_OUTPUT
3318
shell: bash

asset-account/terraform/README.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
<!-- BEGIN_TF_DOCS -->
2+
3+
## Requirements
4+
5+
No requirements.
6+
7+
## Providers
8+
9+
No providers.
10+
11+
## Modules
12+
13+
No modules.
14+
15+
## Resources
16+
17+
No resources.
18+
19+
## Inputs
20+
21+
No inputs.
22+
23+
## Outputs
24+
25+
No outputs.
26+
27+
<!-- END_TF_DOCS -->

connector/README.md

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
<!-- BEGIN_TF_DOCS -->
2+
3+
## Requirements
4+
5+
No requirements.
6+
7+
## Providers
8+
9+
No providers.
10+
11+
## Modules
12+
13+
No modules.
14+
15+
## Resources
16+
17+
No resources.
18+
19+
## Inputs
20+
21+
No inputs.
22+
23+
## Outputs
24+
25+
No outputs.
26+
27+
<!-- END_TF_DOCS -->
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
<!-- BEGIN_TF_DOCS -->
2+
3+
## Requirements
4+
5+
No requirements.
6+
7+
## Providers
8+
9+
No providers.
10+
11+
## Modules
12+
13+
No modules.
14+
15+
## Resources
16+
17+
No resources.
18+
19+
## Inputs
20+
21+
No inputs.
22+
23+
## Outputs
24+
25+
No outputs.
26+
27+
<!-- END_TF_DOCS -->

scripts/collect-modules.sh

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
#!/usr/bin/env bash
2+
3+
set -euo pipefail
4+
5+
tf_modules=()
6+
while IFS= read -r -d '' module_cfg; do
7+
case $(yq -o y .module.type "$module_cfg") in
8+
null)
9+
echo "Warning: module type not found in $module_cfg" >&2
10+
exit 1
11+
;;
12+
terraform)
13+
echo "Found Terraform module in $module_cfg" >&2
14+
tf_modules+=("$(dirname "$module_cfg")")
15+
;;
16+
esac
17+
done < <(find . -name .module.toml -print0)
18+
19+
printf '%s\n' "${tf_modules[@]}"

0 commit comments

Comments
 (0)