ci: improve line break check ci to change file automatically#1977
ci: improve line break check ci to change file automatically#1977khg0712 wants to merge 3 commits intoDaleStudy:mainfrom
Conversation
SamTheKorean
left a comment
There was a problem hiding this comment.
ci์ ๊ฐํ ์ถ๊ฐ ์์ผ๋ฉด ์ ๋ง ์ข์ ๊ฒ ๊ฐ๋ค์! ๊ธฐ์ฌ๊ฐ์ฌ๋๋ฆฝ๋๋ค!
There was a problem hiding this comment.
๊ธฐ์กด์๋ ์ค๋ฐ๊ฟ ๋ฌธ์ ๋ก Check ์คํจ๋ฅผ ๋ฐ์์์ผฐ๋๋ฐ ์๋ ํด๊ฒฐ ํ์๋ ์์ง ๊ทธ๋ฌ๋ ๊ฒ ๊ฐ์์: https://github.com/khg0712/ci-test/actions/runs/19196438420/job/54878083183
์ exit 1 ๋ถ๋ถ๊น์ง ์ญ์ ํ๋ฉด ์ด์ ์ค๋ฐ๊ฟ ๋ฌธ์ ๋ Check ์คํจ๊ฐ ์๋ ๊ฑฐ๊ฒ ์ฃ ?
์๋๋ฉด ๋๊ตฐ๊ฐ Check ์๋ ์ฌ์คํ์ ํ๋ฒ ํด์ค์ผ ํ ๊น์?
| # .github ๋๋ ํ ๋ฆฌ ํ์ ํ์ผ ์ ์ธํ๊ณ ๋์ ํ์ผ๋ก ์ง์ | ||
| files=$(git diff --name-only "$merge_base" ${{ github.event.pull_request.head.sha }} -- . ':(exclude).github/**' | tr -d '"') |
There was a problem hiding this comment.
| # .github ๋๋ ํ ๋ฆฌ ํ์ ํ์ผ ์ ์ธํ๊ณ ๋์ ํ์ผ๋ก ์ง์ | |
| files=$(git diff --name-only "$merge_base" ${{ github.event.pull_request.head.sha }} -- . ':(exclude).github/**' | tr -d '"') | |
| files=$(git diff --name-only $merge_base ${{ github.event.pull_request.head.sha }} | tr -d '"') |
์ด ๋ถ๋ถ์ ๊ณ ์น๋ ๋์ maintenance label์ ๋ถ์ด๋ฉด ํด๊ฒฐ๋๋ ๋ฌธ์ ๋ ์๋๊น์?
There was a problem hiding this comment.
์ด ๋ถ๋ถ์ ๊ณ ์น๋ ๋์ maintenance label์ ๋ถ์ด๋ฉด ํด๊ฒฐ๋๋ ๋ฌธ์ ๋ ์๋๊น์?
์ด ๋ถ๋ถ์ด ์ ์ดํด๊ฐ ์๋์ด์. .github ํ์ ํ์ผ๋ค์ ์๊ณ ๋ฆฌ์ฆ ๊ด๋ จ ํ์ผ์ด ์๋๊ธฐ ๋๋ฌธ์ {github ๋๋ค์}.xxx ํ์ผ ์ปจ๋ฒค์
์ ์ ์ธํ๋๋ก ํ์ต๋๋ค. maintenance ๋ผ๋ฒจ์ ๋ถ์ด๋ฉด ์ด ๋ถ๋ถ์ด ํด๊ฒฐ๋์ง ์์ ๊ฒ ๊ฐ์๋ฐ, ๋ถ๊ฐ ์ค๋ช
๊ฐ๋ฅํ์ค๊น์?
There was a problem hiding this comment.
๋ค์ ๋ถ๋ถ ๋๋ถ์ #1970 ์์๋ ๋ฌธ์ ๊ฐ ์์์ด์.
leetcode-study/.github/workflows/integration.yaml
Lines 109 to 111 in be10c6c
.github ๋๋ ํ ๋ฆฌ ์ธ์๋ ์ผ์ผ์ด ์์ธ ์ฒ๋ฆฌํ๋ Whitelist๋ฅผ ๊ด๋ฆฌํ๋ ๊ฒ๋ณด๋ค ๊ฒ์ฌ ๋์ ๋๋ ํ ๋ฆฌ๋ง ์ง์ ํ๋ Blacklist ๋ฐฉ์๋ ์ข์ ๊ฒ ๊ฐ๊ณ ์. maintenance label์ ์ฌ์ ์ ์ ์ ์ผ๋ก ์ ์ํ ๋๋ ํ ๋ฆฌ ์์ค์ด ์๋๋ผ Pull Request ๋จ์๋ก ๊ฒ์ฌ ์ฌ๋ถ๋ฅผ ๋์ ์ผ๋ก ๊ฒฐ์ ํ ์ ์์ด์ ์ข์ ๊ฒ ๊ฐ์์.๋ํ
maintenance label์ด ์๋ ์ผ๋ฐ ํ์ด ์ ์ถ Pull Request๊ฐ ๋ง์ผ ์ง๊ธ์ฒ๋ผ .github ๋ด ํ์ผ์ ๋ณ๊ฒฝ์ ๊ณ ์ ๋๋ ์ค์๋ก ํฌํจํ๋ ๊ฒฝ์ฐ ๊ธฐ์กด๊ณผ ๊ฐ์ด ์คํจ ์ฒ๋ฆฌํ๋ ๊ฒ์ด ๋ ์์ ํ๋ค๋ ์๊ฐ๋ ๋๋ค์.
|
@khg0712 ์๋ ํ์ธ์! ๋ณํฉ์ ์ ํด๋น ๋ณ๊ฒฝ ๊ด๋ จํ์ฌ ์ด์์ง๋ถ๋ค๊ณผ ํจ๊ป ๋ ผ์ํด๋ณด์์ต๋๋ค!. ์ ํฌ ์๊ฐ์๋ ์ด๋ฌํ ์ํฌํ๋ก์ฐ์ ๋ณ๊ฒฝ ์ฐธ์ฌ์๋ค์ ๊ฒฝํ์ ์ด๋ค ์ํฅ์ ์ฃผ๋์ง์ ๋ํด์ ๊ณ ๋ฏผ์ด ์ข ๋ ํ์ํ ๊ฒ ๊ฐ์ต๋๋ค. ์ ํฌ ์๊ฐ์ผ๋ก๋ ๋จ์ํ ์ฒดํฌ ์์ค์ด ์๋๋ผ ์ฐธ์ฌ์๋ฅผ ๋์ ์์ ์ง์ commit์ ํ ๊ฒฝ์ฐ, ์ฐธ์ฌ์๋ฅผ ์ด๋ฅผ ๋ชจ๋ฅธ ์ฒด๋ก ๋ก์ปฌ์์ ๋ค๋ฅธ commit์ ํ์ ๊ฒฝ์ฐ, conflict๋ก ์ด์ด์ง ๊ฐ๋ฅ์ฑ์ด ๋๋ค๊ณ ์ฌ๊ฒจ์ง๋๋ฐ ํน์ ์ด ๋ถ๋ถ์ ๋ํด์ ๊ณ ๋ คํด๋ณด์ จ์๊น์? |
์ง๋๊ฐ๋ค ์์ด๋์ด๊ฐ ๋ ์ฌ๋ผ์ ๊ฐ๋จํ๊ฒ ๊ณต์ ๋ง ๋๋ ค์~ ํ์ฌ์ฒ๋ผ CI๊ฐ ๋จ์ ์คํจ๋ง ํ์ง ์๊ณ ํ์ผ ๋ ๊ฐํ ๋๋ฝ ์ PR์ ์ฝ๋ฉํธ๋ฅผ ๋จ๊ธฐ๋ ๋ฐฉ์์ผ๋ก ๊ฐ์ ํ๋ฉด
์๋ฅผ ๋ค์ด, ์๋์ ๊ฐ์ด ํ์ผ์ ๋ง์ง๋ง ์ค ๋ฒํธ๋ฅผ ๊ตฌํ๊ณ , ํด๋น ์ค์ ์ฝ๋ฉํธ๋ฅผ ๋ฌ์์ฃผ๋ ๋ฐฉ์์ผ๋ก ํ ์๋ ์์ง ์์๊น ์ถ์์ด์! - name: Check for missing end line breaks
env:
...
run: |
...
echo "## ์ค๋ฐ๊ฟ ๋๋ฝ ํ์ผ" >> $GITHUB_STEP_SUMMARY
for file in $files; do
if [ -f "$file" ]; then
if [ -s "$file" ] && [ "$(tail -c 1 "$file" | wc -l)" -eq 0 ]; then
echo "โ ์ค๋ฐ๊ฟ ๋๋ฝ: $file"
echo "- $file" >> $GITHUB_STEP_SUMMARY
success=false
# ๋ง์ง๋ง ์ค ๋ฒํธ ๊ตฌํ๊ธฐ
last_line=$(wc -l < "$file")
[ "$last_line" -eq 0 ] && last_line=1
# ์ฝ๋ฉํธ payload ๊ตฌ์ฑ
payload=$(jq -n \
--arg body "โ ํ์ผ ๋์ ์ค๋ฐ๊ฟ์ด ์์ต๋๋ค." \
--arg commit_id "${{ github.event.pull_request.head.sha }}"
--arg path "$file" \
--argjson line "$last_line" \
'{body: $body, commit_id: $commit_id, path: $path, line: $line, side: "RIGHT"}')
curl --silent --fail --show-error \
-H "Accept: application/vnd.github+json" \
-H "Authorization: Bearer $GITHUB_TOKEN" \
-H "X-GitHub-Api-Version: 2022-11-28" \
-d "$payload" \
"https://api.github.com/repos/${{ github.repository }}/pulls/${PR_NUMBER}/comments" \
|| echo "โ ๏ธ GitHub ์ฝ๋ฉํธ ๋ฑ๋ก ์คํจ (๊ถํ ๋ฌธ์ ๋๋ ์๋ชป๋ commit_id)"
else
...์ฐ๋ค๋ณด๋ ์ด ๋ฐฉ์์ ์ฌ์ฉํ ๋ ๋ช ๊ฐ์ง ์ ๊ฒฝ์จ์ผํ๋ ๋ถ๋ถ์ด ์๋๋ผ๊ณ ์..!
์ ๋ ์์ด๋์ด๋ง ์ ๊ณตํ๊ณ ๊ฐ๋ณด๊ฒ ์ต๋๋ค..! ์ ๊ฐ ์๋ชป ์ดํดํ ๋ถ๋ถ์ด ์๊ฑฐ๋, ๊ถ๊ธํ ๋ถ๋ถ์ด ์์ผ๋ฉด ์ฝ๋ฉํธ๋ก ๋จ๊ฒจ์ฃผ์ธ์! ํ์ดํ ์ ๋๋ค~! ๐ช |
|
์ ๊ฐ ์๊ฐํ๋ ๊ธฐ์กด PR ์ํฌ ํ๋ก์ฐ์ ๋ถํธํ ๋ถ๋ถ์ ๋ค์๊ณผ ๊ฐ์ ํ๋ฆ์ผ๋ก ๋๊ปด์ก์ต๋๋ค.
๋ง์ฝ ๋ก์ปฌ ๋ณ๊ฒฝ๊ณผ ๋ฆฌ๋ชจํธ ์์ค์ ์ฐจ์ด๋ก ์ธํด ์ปจํ๋ฆญ์ด ๋๋ ๊ฒ์ด ๊ฑฑ์ ๋์ ๋ค๋ฉด ci์์๋ ํ์ผ ์ปจ๋ฒค์
๊ฒ์ฌ๋ง ํ๊ณ ์ ์์ ์ ์ฐธ์ฌ์๋ค์ ์ธ์ง ๋ถํ๋ฅผ ์ค์ด๊ณ ์๋ํ๊ฐ๋ฅํ ์์ญ์ ์๋ํํ๋ฉด ์ข์ ๊ฒ ๊ฐ๋ค ์์ต๋๋ค. |
|
@khg0712 ์๋ ๊ฐํ ์ถ๊ฐ๊ฐ ์ฐธ์ฌ์ ํธ์์ ๋์์ด ๋๋ค๋ ์ ์ถฉ๋ถํ ๊ณต๊ฐํฉ๋๋ค. ๊ด๋ จ ๋ฌธ์ ์ธ์งํ์๊ณ PR ์์ฑํด์ฃผ์
์ ๊ฐ์ฌ๋๋ฆฝ๋๋ค! |
line break ci๊ฐ ์๋์ผ๋ก ํ์ผ์ ๊ฐํ ๋ฌธ์๋ฅผ ์ถ๊ฐํ๊ณ ์ปค๋ฐํ๋๋ก ๋ณ๊ฒฝํฉ๋๋ค.
ํ ์คํธ ๋ ํฌ๋ฅผ ๋ง๋ค์ด์ ํด๋น ๋ณ๊ฒฝ์ด ์ฑ๊ณตํ ์ฌ๋ก ๋จ๊น๋๋ค.