1- name : Fix Gradle Wrapper
1+ name : Fetch Gradle Wrapper
22
33on :
4- push :
5- branches :
6- - main
7- workflow_dispatch :
4+ workflow_dispatch : # Allows manual trigger
85
96jobs :
10- fix -wrapper :
7+ fetch -wrapper :
118 runs-on : ubuntu-latest
129
1310 steps :
14- - name : Checkout Repository
15- uses : actions/checkout@v4
16- with :
17- fetch-depth : 0
18-
1911 - name : Download Gradle Distribution & Checksum
2012 run : |
2113 GRADLE_VERSION="8.4"
@@ -26,54 +18,28 @@ jobs:
2618 wget -q "$JAR_URL" -O gradle.zip
2719 wget -q "$CHECKSUM_URL" -O gradle.zip.sha256
2820
29- - name : Verify ZIP Checksum (Manual Comparison)
21+ - name : Verify ZIP Checksum
3022 run : |
31- # Read the checksum from file (removing any extra spaces/newlines)
3223 EXPECTED_CHECKSUM=$(cat gradle.zip.sha256 | tr -d ' \n')
33-
34- # Compute the actual checksum
3524 ACTUAL_CHECKSUM=$(sha256sum gradle.zip | awk '{ print $1 }')
3625
3726 echo "Expected: $EXPECTED_CHECKSUM"
3827 echo "Actual: $ACTUAL_CHECKSUM"
3928
40- # Compare and fail if they don’t match
4129 if [[ "$EXPECTED_CHECKSUM" != "$ACTUAL_CHECKSUM" ]]; then
4230 echo "ZIP Checksum mismatch!"
4331 exit 1
44- else
45- echo "ZIP Checksum verified!"
4632 fi
4733
48- - name : List ZIP Contents (Debugging)
49- run : unzip -l gradle.zip
50-
51- - name : Extract and Rename Gradle Wrapper JAR
34+ - name : Extract Gradle Wrapper JAR
5235 run : |
53- # Extract the correct JAR file
36+ mkdir -p gradle/wrapper
5437 unzip -j gradle.zip "gradle-8.4/lib/plugins/gradle-wrapper-8.4.jar" -d gradle/wrapper/
55-
56- # Rename it to match expected filename
5738 mv gradle/wrapper/gradle-wrapper-8.4.jar gradle/wrapper/gradle-wrapper.jar
5839
59- # Cleanup
60- rm gradle.zip gradle.zip.sha256
61-
62- - name : Get Official Checksum for JAR
63- run : |
64- # Compute checksum for the extracted file
65- JAR_CHECKSUM=$(sha256sum gradle/wrapper/gradle-wrapper.jar | awk '{ print $1 }')
66-
67- # Print checksum for debugging
68- echo "Extracted JAR Checksum: $JAR_CHECKSUM"
69-
70- - name : Commit & Push Changes
71- run : |
72- git config --global user.name "github-actions"
73- git config --global user.email "actions@github.com"
74- git add gradle/wrapper/gradle-wrapper.jar
75- git commit -m "Fix: Replace corrupted Gradle Wrapper with verified version" || echo "No changes to commit"
76- git push
77- env :
78- GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
79- continue-on-error : true
40+ - name : Upload Wrapper JAR as Artifact
41+ uses : actions/upload-artifact@v4
42+ with :
43+ name : gradle-wrapper
44+ path : gradle/wrapper/gradle-wrapper.jar
45+ retention-days : 7 # Keep for 7 days
0 commit comments