|
7 | 7 | description: 'Cache entries (JSON array format)' |
8 | 8 | required: true |
9 | 9 | type: string |
10 | | - default: '[ # from a `gh api` command |
11 | | - { |
12 | | - "key": "n71Gg/JormzoitmBpVjBCZCcL6Y=", |
13 | | - "version": "0c867ee6264758fbca938e6c6d38a3160cb478f2770da2f831e22e4c9e3720d8" |
14 | | - }, |
15 | | - { |
16 | | - "key": "PFxRDTsQC2CBRTRk3TMxWNYXnd0=", |
17 | | - "version": "4793076103aa823b0a4c97942d7385d4346f77a3c30a0bad6e0f1d748becbab5" |
18 | | - }, |
19 | | - { |
20 | | - "key": "yarn-cache-Profiling-windows-b4e1dc4e46ec063c714cab2e6a48b2f1c42c37b4546d1f2592a517159bbd52d8-v2", |
21 | | - "version": "dfeaf94a5df020ad999e6dd827afacf94f5a2ddf5418288305ef5b91f639b181" |
22 | | - }, |
23 | | - { |
24 | | - "key": "Aktlxw4hnyBVd/vZJbkdxGmq8Tw=", |
25 | | - "version": "3dbcc4f8dfd5fbbab9759602b7adb19c466cf9edfc277687f97ba9efbdc86d90" |
26 | | - }, |
27 | | - { |
28 | | - "key": "yarn-cache-APM Capabilities-tracing-windows-b4e1dc4e46ec063c714cab2e6a48b2f1c42c37b4546d1f2592a517159bbd52d8-v2", |
29 | | - "version": "dfeaf94a5df020ad999e6dd827afacf94f5a2ddf5418288305ef5b91f639b181" |
30 | | - }, |
31 | | - { |
32 | | - "key": "yarn-cache-AppSec-windows-b4e1dc4e46ec063c714cab2e6a48b2f1c42c37b4546d1f2592a517159bbd52d8-v2", |
33 | | - "version": "dfeaf94a5df020ad999e6dd827afacf94f5a2ddf5418288305ef5b91f639b181" |
34 | | - }, |
35 | | - { |
36 | | - "key": "playwright-browsers-oldest-dd6", |
37 | | - "version": "4f7514040e3a28a321a9658d8e3a51fd52c29410f6844d0d51bcb9b20ca5e3a6" |
38 | | - }, |
39 | | - { |
40 | | - "key": "PFxRDTsQC2CBRTRk3TMxWNYXnd0=", |
41 | | - "version": "c95311a28e589c62f14651d2e6001da3e2afe6e855380a412a583dabc576b960" |
42 | | - }, |
43 | | - { |
44 | | - "key": "cypress-binary-10.2.0", |
45 | | - "version": "09038f5f1eb279f921ac07849ccf00ea0cadd76685c868eab628a2e3f47ef0b7" |
46 | | - }, |
47 | | - { |
48 | | - "key": "playwright-browsers-Linux-1.57.0", |
49 | | - "version": "b11b119dfd10565044882f81f06d3a75b1602bec6f8658ac905dd63583b2a885" |
50 | | - }, |
51 | | - { |
52 | | - "key": "cypress-binary-14.5.4", |
53 | | - "version": "09038f5f1eb279f921ac07849ccf00ea0cadd76685c868eab628a2e3f47ef0b7" |
54 | | - }, |
55 | | - { |
56 | | - "key": "yarn-cache-OpenFeature-windows-b4e1dc4e46ec063c714cab2e6a48b2f1c42c37b4546d1f2592a517159bbd52d8-v2", |
57 | | - "version": "dfeaf94a5df020ad999e6dd827afacf94f5a2ddf5418288305ef5b91f639b181" |
58 | | - }, |
59 | | - { |
60 | | - "key": "runner_venv-Linux-/opt/hostedtoolcache/Python/3.12.12/x64-dbe133b0a76747625e6c8139943b9dc2dbf5814e9ccf9f4a8ed5b7fa66dd2976", |
61 | | - "version": "f488f6875b536eb746450004e6f18bf74d514ad2cad78c86d6d5147ddbf9f9b0" |
62 | | - }, |
63 | | - { |
64 | | - "key": "yarn-cache-AI Guard-windows-b4e1dc4e46ec063c714cab2e6a48b2f1c42c37b4546d1f2592a517159bbd52d8-v2", |
65 | | - "version": "dfeaf94a5df020ad999e6dd827afacf94f5a2ddf5418288305ef5b91f639b181" |
66 | | - }, |
67 | | - { |
68 | | - "key": "actionlint-1.7.9-Linux-X64", |
69 | | - "version": "2c5831b0ad32de99a644bc2cdd9a58421edce007c9b47f4c1c7d25220f9d6578" |
70 | | - }, |
71 | | - { |
72 | | - "key": "codeql-trap-1-2.23.6-javascript-b95a717ca0b9997ce46ac31aa272f2f0a4217c86", |
73 | | - "version": "801c2033d34f5527515cf4db177503fe272d4179b9f27199bff1b2af3a149cfb" |
74 | | - }, |
75 | | - { |
76 | | - "key": "codeql-trap-1-2.23.6-javascript-4b11d913758bf8d79a981bda34da3f344bc03a4d", |
77 | | - "version": "801c2033d34f5527515cf4db177503fe272d4179b9f27199bff1b2af3a149cfb" |
78 | | - }, |
79 | | - { |
80 | | - "key": "yarn-cache-APM Capabilities-tracing-windows-fb549679c373d69609fa2a9cb9d91ea28340fb792c23402062a41ac1dd036060-v2", |
81 | | - "version": "dfeaf94a5df020ad999e6dd827afacf94f5a2ddf5418288305ef5b91f639b181" |
82 | | - }, |
83 | | - { |
84 | | - "key": "codeql-trap-1-2.23.6-javascript-2ce287255420fbb23bccc718f5439d0491592d8c", |
85 | | - "version": "801c2033d34f5527515cf4db177503fe272d4179b9f27199bff1b2af3a149cfb" |
86 | | - }, |
87 | | - { |
88 | | - "key": "codeql-trap-1-2.23.6-javascript-f62588731f9a65a8ea0b95af7a8646783b74cc1b", |
89 | | - "version": "801c2033d34f5527515cf4db177503fe272d4179b9f27199bff1b2af3a149cfb" |
90 | | - }, |
91 | | - { |
92 | | - "key": "codeql-trap-1-2.23.6-javascript-490a6ffec2f836cafd4309bd83e881531490d4a9", |
93 | | - "version": "801c2033d34f5527515cf4db177503fe272d4179b9f27199bff1b2af3a149cfb" |
94 | | - }, |
95 | | - { |
96 | | - "key": "codeql-trap-1-2.23.6-javascript-a408e505263e323f5c98a6b19800f4e076677728", |
97 | | - "version": "801c2033d34f5527515cf4db177503fe272d4179b9f27199bff1b2af3a149cfb" |
98 | | - }, |
99 | | - { |
100 | | - "key": "playwright-browsers-oldest-dd5", |
101 | | - "version": "4f7514040e3a28a321a9658d8e3a51fd52c29410f6844d0d51bcb9b20ca5e3a6" |
102 | | - }, |
103 | | - { |
104 | | - "key": "cypress-binary-6.7.0", |
105 | | - "version": "09038f5f1eb279f921ac07849ccf00ea0cadd76685c868eab628a2e3f47ef0b7" |
106 | | - }, |
107 | | - { |
108 | | - "key": "[Release Proposal]-branch-diff-3.1.1", |
109 | | - "version": "c242501c19ada3dcced7a83b074ccb8e79f816602d4125493924624b38591de2" |
110 | | - }, |
111 | | - { |
112 | | - "key": "yarn-cache-OpenFeature-windows-e46dd60b36a97e7796be9940bbfce4059ac6dd358edff7736633e32cd05c0eef-v2", |
113 | | - "version": "dfeaf94a5df020ad999e6dd827afacf94f5a2ddf5418288305ef5b91f639b181" |
114 | | - }, |
115 | | - { |
116 | | - "key": "yarn-cache-APM Capabilities-tracing-windows-e46dd60b36a97e7796be9940bbfce4059ac6dd358edff7736633e32cd05c0eef-v2", |
117 | | - "version": "dfeaf94a5df020ad999e6dd827afacf94f5a2ddf5418288305ef5b91f639b181" |
118 | | - }, |
119 | | - { |
120 | | - "key": "yarn-cache-AppSec-windows-e46dd60b36a97e7796be9940bbfce4059ac6dd358edff7736633e32cd05c0eef-v2", |
121 | | - "version": "dfeaf94a5df020ad999e6dd827afacf94f5a2ddf5418288305ef5b91f639b181" |
122 | | - }, |
123 | | - { |
124 | | - "key": "yarn-cache-Profiling-windows-e46dd60b36a97e7796be9940bbfce4059ac6dd358edff7736633e32cd05c0eef-v2", |
125 | | - "version": "dfeaf94a5df020ad999e6dd827afacf94f5a2ddf5418288305ef5b91f639b181" |
126 | | - }, |
127 | | - { |
128 | | - "key": "yarn-cache-AI Guard-windows-e46dd60b36a97e7796be9940bbfce4059ac6dd358edff7736633e32cd05c0eef-v2", |
129 | | - "version": "dfeaf94a5df020ad999e6dd827afacf94f5a2ddf5418288305ef5b91f639b181" |
130 | | - } |
131 | | -] |
132 | | -' |
| 10 | + default: '[ {"key": "n71Gg/JormzoitmBpVjBCZCcL6Y=","version": "0c867ee6264758fbca938e6c6d38a3160cb478f2770da2f831e22e4c9e3720d8"}, {"key": "PFxRDTsQC2CBRTRk3TMxWNYXnd0=","version": "4793076103aa823b0a4c97942d7385d4346f77a3c30a0bad6e0f1d748becbab5"} ]' |
133 | 11 |
|
134 | 12 | jobs: |
135 | 13 | extract-cache: |
@@ -214,63 +92,6 @@ jobs: |
214 | 92 | env: |
215 | 93 | GH_TOKEN: ${{ github.token }} |
216 | 94 |
|
217 | | - - name: Analyze extracted caches |
218 | | - run: | |
219 | | - echo "# Cache Extraction Report" > cache-artifacts/REPORT.md |
220 | | - echo "" >> cache-artifacts/REPORT.md |
221 | | - echo "Extraction Time: $(date -u)" >> cache-artifacts/REPORT.md |
222 | | - echo "" >> cache-artifacts/REPORT.md |
223 | | - |
224 | | - for dir in cache-artifacts/*/; do |
225 | | - if [ -d "$dir" ]; then |
226 | | - echo "## $(basename "$dir")" >> cache-artifacts/REPORT.md |
227 | | - echo "" >> cache-artifacts/REPORT.md |
228 | | - |
229 | | - # Show metadata |
230 | | - if [ -f "$dir/metadata.json" ]; then |
231 | | - echo "### Metadata" >> cache-artifacts/REPORT.md |
232 | | - echo '```json' >> cache-artifacts/REPORT.md |
233 | | - cat "$dir/metadata.json" >> cache-artifacts/REPORT.md |
234 | | - echo '```' >> cache-artifacts/REPORT.md |
235 | | - echo "" >> cache-artifacts/REPORT.md |
236 | | - fi |
237 | | - |
238 | | - # Show restore status |
239 | | - if [ -f "$dir/restore_status.txt" ]; then |
240 | | - status=$(cat "$dir/restore_status.txt") |
241 | | - echo "**Restore Status:** $status" >> cache-artifacts/REPORT.md |
242 | | - echo "" >> cache-artifacts/REPORT.md |
243 | | - fi |
244 | | - |
245 | | - # List contents if restored |
246 | | - if [ "$(cat "$dir/restore_status.txt" 2>/dev/null)" = "true" ]; then |
247 | | - echo "### Contents" >> cache-artifacts/REPORT.md |
248 | | - echo '```' >> cache-artifacts/REPORT.md |
249 | | - find "$dir" -type f -exec ls -lh {} \; >> cache-artifacts/REPORT.md |
250 | | - echo '```' >> cache-artifacts/REPORT.md |
251 | | - echo "" >> cache-artifacts/REPORT.md |
252 | | - |
253 | | - # Search for suspicious patterns |
254 | | - echo "### Suspicious Pattern Scan" >> cache-artifacts/REPORT.md |
255 | | - echo '```' >> cache-artifacts/REPORT.md |
256 | | - |
257 | | - # Look for embedded JavaScript |
258 | | - if find "$dir" -type f -name "*.tar*" -o -name "*.tgz" -o -name "*.zip" 2>/dev/null | head -1 | xargs -I {} sh -c 'tar -tzf {} 2>/dev/null || unzip -l {} 2>/dev/null' | grep -E '\.(js|sh|py)$'; then |
259 | | - echo "⚠️ Found executable files in archive" >> cache-artifacts/REPORT.md |
260 | | - fi |
261 | | - |
262 | | - # Look for malware signatures: should be the same script that's been injected |
263 | | - grep -r "discord.com/api/webhooks" "$dir" 2>/dev/null && echo "🚨 DISCORD WEBHOOK FOUND" >> cache-artifacts/REPORT.md || true |
264 | | - |
265 | | - echo '```' >> cache-artifacts/REPORT.md |
266 | | - echo "" >> cache-artifacts/REPORT.md |
267 | | - fi |
268 | | - |
269 | | - echo "---" >> cache-artifacts/REPORT.md |
270 | | - echo "" >> cache-artifacts/REPORT.md |
271 | | - fi |
272 | | - done |
273 | | - |
274 | 95 | - name: Create file hashes |
275 | 96 | run: | |
276 | 97 | echo "# File Hashes (SHA256)" > cache-artifacts/HASHES.txt |
|
0 commit comments