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,22 +32,49 @@ jobs:
3232 matrix :
3333 directory : ${{ fromJson(needs.collectInputs.outputs.directories) }}
3434 steps :
35+ - name : Install rmz
36+ uses : jaxxstorm/action-install-gh-release@v2.1.0
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+
44+ # https://github.com/orgs/community/discussions/25678#discussioncomment-5242449
3545 - name : Delete unnecessary files
36- uses : xd009642/ci-hoover@0.1.1
46+ run : |
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)"
3764
3865 - name : Checkout
39- uses : actions/checkout@v4
66+ uses : actions/checkout@v5
4067
4168 - name : Terraform min/max versions
4269 id : minMax
43- uses : clowdhaus/terraform-min-max@v1.3.1
70+ uses : clowdhaus/terraform-min-max@v2.1.0
4471 with :
4572 directory : ${{ matrix.directory }}
4673
4774 - name : Pre-commit Terraform ${{ steps.minMax.outputs.minVersion }}
4875 # Run only validate pre-commit check on min version supported
4976 if : ${{ matrix.directory != '.' }}
50- uses : clowdhaus/terraform-composite-actions/pre-commit@v1.11.1
77+ uses : clowdhaus/terraform-composite-actions/pre-commit@v1.14.0
5178 with :
5279 terraform-version : ${{ steps.minMax.outputs.minVersion }}
5380 tflint-version : ${{ env.TFLINT_VERSION }}
5683 - name : Pre-commit Terraform ${{ steps.minMax.outputs.minVersion }}
5784 # Run only validate pre-commit check on min version supported
5885 if : ${{ matrix.directory == '.' }}
59- uses : clowdhaus/terraform-composite-actions/pre-commit@v1.11.1
86+ uses : clowdhaus/terraform-composite-actions/pre-commit@v1.14.0
6087 with :
6188 terraform-version : ${{ steps.minMax.outputs.minVersion }}
6289 tflint-version : ${{ env.TFLINT_VERSION }}
@@ -67,21 +94,73 @@ jobs:
6794 runs-on : ubuntu-latest
6895 needs : collectInputs
6996 steps :
97+ - name : Install rmz
98+ uses : jaxxstorm/action-install-gh-release@v2.1.0
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+
106+ # https://github.com/orgs/community/discussions/25678#discussioncomment-5242449
70107 - name : Delete unnecessary files
71- uses : xd009642/ci-hoover@0.1.1
108+ run : |
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)"
72146
73147 - name : Checkout
74- uses : actions/checkout@v4
148+ uses : actions/checkout@v5
75149 with :
76150 ref : ${{ github.event.pull_request.head.ref }}
77151 repository : ${{github.event.pull_request.head.repo.full_name}}
78152
79153 - name : Terraform min/max versions
80154 id : minMax
81- uses : clowdhaus/terraform-min-max@v1.3.1
155+ uses : clowdhaus/terraform-min-max@v2.1.0
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
82161
83162 - name : Pre-commit Terraform ${{ steps.minMax.outputs.maxVersion }}
84- uses : clowdhaus/terraform-composite-actions/pre-commit@v1.11.1
163+ uses : clowdhaus/terraform-composite-actions/pre-commit@v1.14.0
85164 with :
86165 terraform-version : ${{ steps.minMax.outputs.maxVersion }}
87166 tflint-version : ${{ env.TFLINT_VERSION }}
0 commit comments