77      - master 
88
99env :
10-   TERRAFORM_DOCS_VERSION : v0.19 .0 
11-   TFLINT_VERSION : v0.53.0  
10+   TERRAFORM_DOCS_VERSION : v0.20 .0 
11+   TFLINT_VERSION : v0.59.1  
1212
1313jobs :
1414  collectInputs :
@@ -18,11 +18,11 @@ jobs:
1818      directories : ${{ steps.dirs.outputs.directories }} 
1919    steps :
2020      - name : Checkout 
21-         uses : actions/checkout@v4  
21+         uses : actions/checkout@v5  
2222
2323      - name : Get root directories 
2424        id : dirs 
25-         uses : clowdhaus/terraform-composite-actions/directories@v1.9 .0 
25+         uses : clowdhaus/terraform-composite-actions/directories@v1.14 .0 
2626
2727  preCommitMinVersions :
2828    name : Min TF pre-commit 
@@ -32,27 +32,49 @@ jobs:
3232      matrix :
3333        directory : ${{ fromJson(needs.collectInputs.outputs.directories) }} 
3434    steps :
35+       - name : Install rmz 
36+ 37+         with :
38+           repo : SUPERCILEX/fuc 
39+           asset-name : x86_64-unknown-linux-gnu-rmz 
40+           rename-to : rmz 
41+           chmod : 0755 
42+           extension-matching : disable 
43+ 
3544      #  https://github.com/orgs/community/discussions/25678#discussioncomment-5242449
36-       - name : Delete huge  unnecessary tools folder  
45+       - name : Delete unnecessary files  
3746        run : | 
38-           rm -rf /opt/hostedtoolcache/CodeQL 
39-           rm -rf /opt/hostedtoolcache/Java_Temurin-Hotspot_jdk 
40-           rm -rf /opt/hostedtoolcache/Ruby 
41-           rm -rf /opt/hostedtoolcache/go 
47+           formatByteCount() { echo $(numfmt --to=iec-i --suffix=B --padding=7 $1'000'); } 
48+           getAvailableSpace() { echo $(df -a $1 | awk 'NR > 1 {avail+=$4} END {print avail}'); } 
49+ 
50+           BEFORE=$(getAvailableSpace) 
51+ 
52+           ln -s /opt/hostedtoolcache/SUPERCILEX/x86_64-unknown-linux-gnu-rmz/latest/linux-x64/rmz /usr/local/bin/rmz 
53+           rmz -f /opt/hostedtoolcache/CodeQL & 
54+           rmz -f /opt/hostedtoolcache/Java_Temurin-Hotspot_jdk & 
55+           rmz -f /opt/hostedtoolcache/PyPy & 
56+           rmz -f /opt/hostedtoolcache/Ruby & 
57+           rmz -f /opt/hostedtoolcache/go & 
58+ 
59+           wait 
60+ 
61+           AFTER=$(getAvailableSpace) 
62+           SAVED=$((AFTER-BEFORE)) 
63+           echo "=> Saved $(formatByteCount $SAVED)" 
4264
4365name : Checkout 
44-         uses : actions/checkout@v4  
66+         uses : actions/checkout@v5  
4567
4668      - name : Terraform min/max versions 
4769        id : minMax 
48-         uses : clowdhaus/terraform-min-max@v1.3.1  
70+         uses : clowdhaus/terraform-min-max@v2.1.0  
4971        with :
5072          directory : ${{ matrix.directory }} 
5173
5274      - name : Pre-commit Terraform ${{ steps.minMax.outputs.minVersion }} 
5375        #  Run only validate pre-commit check on min version supported
5476        if : ${{ matrix.directory !=  '.' }} 
55-         uses : clowdhaus/terraform-composite-actions/pre-commit@v1.11.1  
77+         uses : clowdhaus/terraform-composite-actions/pre-commit@v1.14.0  
5678        with :
5779          terraform-version : ${{ steps.minMax.outputs.minVersion }} 
5880          tflint-version : ${{ env.TFLINT_VERSION }} 
6183      - name : Pre-commit Terraform ${{ steps.minMax.outputs.minVersion }} 
6284        #  Run only validate pre-commit check on min version supported
6385        if : ${{ matrix.directory ==  '.' }} 
64-         uses : clowdhaus/terraform-composite-actions/pre-commit@v1.11.1  
86+         uses : clowdhaus/terraform-composite-actions/pre-commit@v1.14.0  
6587        with :
6688          terraform-version : ${{ steps.minMax.outputs.minVersion }} 
6789          tflint-version : ${{ env.TFLINT_VERSION }} 
@@ -72,26 +94,73 @@ jobs:
7294    runs-on : ubuntu-latest 
7395    needs : collectInputs 
7496    steps :
97+       - name : Install rmz 
98+ 99+         with :
100+           repo : SUPERCILEX/fuc 
101+           asset-name : x86_64-unknown-linux-gnu-rmz 
102+           rename-to : rmz 
103+           chmod : 0755 
104+           extension-matching : disable 
105+ 
75106      #  https://github.com/orgs/community/discussions/25678#discussioncomment-5242449
76-       - name : Delete huge  unnecessary tools folder  
107+       - name : Delete unnecessary files  
77108        run : | 
78-           rm -rf /opt/hostedtoolcache/CodeQL 
79-           rm -rf /opt/hostedtoolcache/Java_Temurin-Hotspot_jdk 
80-           rm -rf /opt/hostedtoolcache/Ruby 
81-           rm -rf /opt/hostedtoolcache/go 
109+           formatByteCount() { echo $(numfmt --to=iec-i --suffix=B --padding=7 $1'000'); } 
110+           getAvailableSpace() { echo $(df -a $1 | awk 'NR > 1 {avail+=$4} END {print avail}'); } 
111+ 
112+           BEFORE=$(getAvailableSpace) 
113+ 
114+           ln -s /opt/hostedtoolcache/SUPERCILEX/x86_64-unknown-linux-gnu-rmz/latest/linux-x64/rmz /usr/local/bin/rmz 
115+           rmz -f /opt/hostedtoolcache/CodeQL & 
116+           rmz -f /opt/hostedtoolcache/Java_Temurin-Hotspot_jdk & 
117+           rmz -f /opt/hostedtoolcache/PyPy & 
118+           rmz -f /opt/hostedtoolcache/Ruby & 
119+           rmz -f /opt/hostedtoolcache/go & 
120+           sudo rmz -f /usr/local/lib/android & 
121+ 
122+           if [[ ${{ github.repository }} == terraform-aws-modules/terraform-aws-security-group ]]; then 
123+             sudo rmz -f /usr/share/dotnet & 
124+             sudo rmz -f /usr/local/.ghcup & 
125+             sudo apt-get -qq remove -y 'azure-.*' 
126+             sudo apt-get -qq remove -y 'cpp-.*' 
127+             sudo apt-get -qq remove -y 'dotnet-runtime-.*' 
128+             sudo apt-get -qq remove -y 'google-.*' 
129+             sudo apt-get -qq remove -y 'libclang-.*' 
130+             sudo apt-get -qq remove -y 'libllvm.*' 
131+             sudo apt-get -qq remove -y 'llvm-.*' 
132+             sudo apt-get -qq remove -y 'mysql-.*' 
133+             sudo apt-get -qq remove -y 'postgresql-.*' 
134+             sudo apt-get -qq remove -y 'php.*' 
135+             sudo apt-get -qq remove -y 'temurin-.*' 
136+             sudo apt-get -qq remove -y kubectl firefox mono-devel 
137+             sudo apt-get -qq autoremove -y 
138+             sudo apt-get -qq clean 
139+           fi 
140+ 
141+           wait 
142+ 
143+           AFTER=$(getAvailableSpace) 
144+           SAVED=$((AFTER-BEFORE)) 
145+           echo "=> Saved $(formatByteCount $SAVED)" 
82146
83147name : Checkout 
84-         uses : actions/checkout@v4  
148+         uses : actions/checkout@v5  
85149        with :
86150          ref : ${{ github.event.pull_request.head.ref }} 
87151          repository : ${{github.event.pull_request.head.repo.full_name}} 
88152
89153      - name : Terraform min/max versions 
90154        id : minMax 
91- 155+ 156+ 
157+       - name : Hide template dir 
158+         #  Special to this repo, we don't want to check this dir
159+         if : ${{ github.repository ==  'terraform-aws-modules/terraform-aws-security-group' }} 
160+         run : rm -rf modules/_templates 
92161
93162      - name : Pre-commit Terraform ${{ steps.minMax.outputs.maxVersion }} 
94-         uses : clowdhaus/terraform-composite-actions/pre-commit@v1.11.1  
163+         uses : clowdhaus/terraform-composite-actions/pre-commit@v1.14.0  
95164        with :
96165          terraform-version : ${{ steps.minMax.outputs.maxVersion }} 
97166          tflint-version : ${{ env.TFLINT_VERSION }} 
0 commit comments