Skip to content

GitHub action test #718

GitHub action test

GitHub action test #718

Workflow file for this run

name: ๐Ÿ”„ Integration
on:
pull_request:
jobs:
linelint:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Check for 1. missing end line breaks and 2. control characters in filenames
run: |
files=$(git diff --name-only ${{ github.event.pull_request.base.sha }} ${{ github.sha }})
echo "๋ณ€๊ฒฝ๋œ ํŒŒ์ผ ๋ชฉ๋ก:"
echo "$files"
success=true
# ์ค„๋ฐ”๊ฟˆ ์ฒดํฌ
echo "## ์ค„๋ฐ”๊ฟˆ ๋ˆ„๋ฝ ํŒŒ์ผ" >> $GITHUB_STEP_SUMMARY
for file in $files; do
if [ -s "$file" ] && [ "$(tail -c 1 $file | wc -l)" -eq 0 ]; then
echo "๋ฐœ๊ฒฌ๋œ ์ค„๋ฐ”๊ฟˆ ๋ˆ„๋ฝ: $file"
echo "- $file" >> $GITHUB_STEP_SUMMARY
success=false
fi
done
# ์ œ์–ด๋ฌธ์ž ์ฒดํฌ
echo -e "\n## ์ œ์–ด๋ฌธ์ž๊ฐ€ ํฌํ•จ๋œ ํŒŒ์ผ๋ช…" >> $GITHUB_STEP_SUMMARY
for file in $files; do
# ์—ฌ๋Ÿฌ ๋ฐฉ๋ฒ•์œผ๋กœ ์ œ์–ด๋ฌธ์ž ๊ฒ€์‚ฌ
if echo -n "$file" | LC_ALL=C grep -q '[^[:print:][:space:]]' || \
[[ "$file" =~ $'\b' ]] || \
[[ "$file" != "$(echo -n "$file" | tr -d '[:cntrl:]')" ]]; then
echo "๋ฐœ๊ฒฌ๋œ ์ œ์–ด๋ฌธ์ž: $file"
echo "- $file" >> $GITHUB_STEP_SUMMARY
# ํŒŒ์ผ๋ช… ๋ถ„์„์„ ์œ„ํ•œ ๋””๋ฒ„๊ทธ ์ •๋ณด
echo " Hex dump:" >> $GITHUB_STEP_SUMMARY
echo -n "$file" | xxd >> $GITHUB_STEP_SUMMARY
success=false
fi
done
if [ "$success" = false ]; then
echo -e "\n:warning: ์œ„ ๋ฌธ์ œ๋“ค์„ ํ•ด๊ฒฐํ•ด ์ฃผ์„ธ์š”:" >> $GITHUB_STEP_SUMMARY
echo "1. ํŒŒ์ผ ๋์˜ ๋ˆ„๋ฝ๋œ ์ค„๋ฐ”๊ฟˆ์„ ์ถ”๊ฐ€ํ•ด ์ฃผ์„ธ์š”." >> $GITHUB_STEP_SUMMARY
echo "2. ํŒŒ์ผ๋ช…์—์„œ ์ œ์–ด๋ฌธ์ž๋ฅผ ์ œ๊ฑฐํ•ด ์ฃผ์„ธ์š”." >> $GITHUB_STEP_SUMMARY
exit 1
fi