1
- name : ๐ Integration
2
-
3
- on :
4
- pull_request :
5
-
6
- jobs :
7
- linelint :
8
- runs-on : ubuntu-latest
9
- steps :
10
- - uses : actions/checkout@v4
11
- with :
12
- fetch-depth : 0
13
-
14
- - name : Check for 1. missing end line breaks and 2. control characters in filenames
1
+ - name : Find files with issues
15
2
run : |
16
3
files=$(git diff --name-only ${{ github.event.pull_request.base.sha }} ${{ github.sha }})
17
- success=true
4
+ echo "๋ณ๊ฒฝ๋ ํ์ผ ๋ชฉ๋ก:"
5
+ echo "$files"
18
6
7
+ success=true
8
+
19
9
# ์ค๋ฐ๊ฟ ์ฒดํฌ
20
10
echo "## ์ค๋ฐ๊ฟ ๋๋ฝ ํ์ผ" >> $GITHUB_STEP_SUMMARY
21
11
for file in $files; do
22
12
if [ -s "$file" ] && [ "$(tail -c 1 $file | wc -l)" -eq 0 ]; then
13
+ echo "๋ฐ๊ฒฌ๋ ์ค๋ฐ๊ฟ ๋๋ฝ: $file" # ๋๋ฒ๊น
๋ก๊ทธ
23
14
echo "- $file" >> $GITHUB_STEP_SUMMARY
24
15
success=false
25
16
fi
@@ -28,18 +19,18 @@ jobs:
28
19
# ์ ์ด๋ฌธ์ ์ฒดํฌ
29
20
echo -e "\n## ์ ์ด๋ฌธ์๊ฐ ํฌํจ๋ ํ์ผ๋ช
" >> $GITHUB_STEP_SUMMARY
30
21
for file in $files; do
31
- # ls -b๋ฅผ ํตํด ์ ์ด๋ฌธ์๋ฅผ ๋ฐฑ์ฌ๋์ ์ด์ค์ผ์ดํ ํํ๋ก ํ์
32
- filename=$(ls -b "$file" 2>/dev/null)
33
- # ์๋ณธ ํ์ผ๋ช
๊ณผ ์ด์ค์ผ์ดํ๋ ํ์ผ๋ช
์ด ๋ค๋ฅด๋ค๋ฉด ์ ์ด๋ฌธ์๊ฐ ํฌํจ๋ ๊ฒ
34
- if [ "$file" != "$filename" ]; then
35
- echo "- $filename" >> $GITHUB_STEP_SUMMARY
36
- success=false
22
+ if [ -e "$file" ]; then
23
+ clean_name=$(printf '%q' "$file")
24
+ if [ "$file" != "$clean_name" ]; then
25
+ echo "๋ฐ๊ฒฌ๋ ์ ์ด๋ฌธ์: $file -> $clean_name" # ๋๋ฒ๊น
๋ก๊ทธ
26
+ echo "- $file" >> $GITHUB_STEP_SUMMARY
27
+ success=false
28
+ fi
37
29
fi
38
30
done
39
31
40
32
if [ "$success" = false ]; then
41
- echo -e "\n:warning: ์ ๋ฌธ์ ๋ค์ ํด๊ฒฐํด์ฃผ์ธ์:" >> $GITHUB_STEP_SUMMARY
42
- echo "1. ํ์ผ ๋์ ๋๋ฝ๋ ์ค ๋ฐ๊ฟ์ ์ถ๊ฐํด ์ฃผ์ธ์." >> $GITHUB_STEP_SUMMARY
43
- echo "2. ํ์ผ๋ช
์์ ์ ์ด๋ฌธ์๋ฅผ ์ ๊ฑฐํด ์ฃผ์ธ์." >> $GITHUB_STEP_SUMMARY
33
+ echo -e "\n:warning: ์ ๋ฌธ์ ๋ค์ ํด๊ฒฐํด ์ฃผ์ธ์:" >> $GITHUB_STEP_SUMMARY
34
+ echo "ํ์ฌ ์ํ: success=$success" # ๋๋ฒ๊น
๋ก๊ทธ
44
35
exit 1
45
- fi
36
+ fi
0 commit comments