Skip to content

Commit 7d0f8f4

Browse files
authored
Create check_file_size.yml
1 parent ad91dad commit 7d0f8f4

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

.github/workflows/check_file_size.yml

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: Check file size
2+
on: pull_request
3+
4+
jobs:
5+
check_file_size:
6+
name: Check file size
7+
runs-on: ubuntu-latest
8+
steps:
9+
- name: Checkout
10+
uses: actions/checkout@v4
11+
- name: Get changed files
12+
id: get_changed_files
13+
uses: tj-actions/changed-files@v45
14+
with:
15+
write_output_files: true
16+
- name: List changed files
17+
run: |
18+
echo "# Changed Files" >> $GITHUB_STEP_SUMMARY
19+
echo "Files changed - ${{ steps.get_changed_files.outputs.all_changed_files_count }}" >> $GITHUB_STEP_SUMMARY
20+
echo "| File | Size | Check |" >> $GITHUB_STEP_SUMMARY
21+
echo "| :-- | :-- | :-- |" >> $GITHUB_STEP_SUMMARY
22+
for file in $(cat .github/outputs/all_changed_files.txt); do
23+
size=$(ls -lh ${file} | awk '{print $5}')
24+
check=$([[ -n $(find "${file}" -type f -size +50M) ]] && echo "❌" || echo "✅")
25+
echo "| ${file} | ${size} | ${check} |" >> $GITHUB_STEP_SUMMARY
26+
done
27+
- name: Check file size
28+
run: |
29+
for file in $(cat .github/outputs/all_changed_files.txt); do
30+
[[ -n $(find "${file}" -type f -size +50M) ]] && { echo "❌ $file exceeds file size limit"; exit 1; } || echo "✅ $file"
31+
done

0 commit comments

Comments
 (0)