@@ -86,6 +86,11 @@ function check_trailing_whitespace() {
8686 fi
8787}
8888
89+ function generate() {
90+ pip install --user -r ./helpers/generate_modules/requirements.txt
91+ ./helpers/generate_modules/generate_modules.py
92+ }
93+
8994function generate_docs() {
9095 echo " Generating markdown docs with terraform-docs"
9196 TMPFILE=$( mktemp)
@@ -97,12 +102,35 @@ function generate_docs() {
97102 rm -f " $TMPFILE "
98103}
99104
105+ function check_generate() {
106+ TMPDIR=$( mktemp -d)
107+ git worktree add --detach " $TMPDIR " > /dev/null
108+ cd " $TMPDIR " || exit 1
109+
110+ generate > /dev/null
111+ generate_docs > /dev/null
112+
113+ git diff --stat --exit-code > /dev/null
114+ rc=$?
115+ cd - > /dev/null || exit 1
116+
117+ if [[ $rc -ne 0 ]]; then
118+ echo ' "make generate" creates a diff, run "make generate" and commit the results'
119+ fi
120+ rm -rf " $TMPDIR "
121+ git worktree prune > /dev/null
122+
123+ echo " Code was generated properly"
124+
125+ exit $rc
126+ }
127+
100128function check_generate_docs() {
101129 TMPDIR=$( mktemp -d)
102130 git worktree add --detach " $TMPDIR " > /dev/null
103131 cd " $TMPDIR " || exit 1
104132
105- make generate_docs > /dev/null
133+ generate_docs > /dev/null
106134 git diff --stat --exit-code > /dev/null
107135 rc=$?
108136 cd - > /dev/null || exit 1
@@ -113,5 +141,7 @@ function check_generate_docs() {
113141 rm -rf " $TMPDIR "
114142 git worktree prune > /dev/null
115143
144+ echo " Docs were generated properly"
145+
116146 exit $rc
117147}
0 commit comments