-
Notifications
You must be signed in to change notification settings - Fork 2
๐ง Chore: GitHub Actions CI ํ์ดํ๋ผ์ธ ๊ตฌ์ถ #36
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weโll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
Walkthrough์๋ก์ด GitHub Actions ์ํฌํ๋ก์ฐ ํ์ผ์ด ์ถ๊ฐ๋์ด, Changes
Sequence Diagram(s)sequenceDiagram
participant GitHub
participant Runner
participant Node.js
participant ESLint
GitHub->>Runner: ์ํฌํ๋ก์ฐ ํธ๋ฆฌ๊ฑฐ (push/pull_request)
Runner->>Runner: ์ฝ๋ ์ฒดํฌ์์
Runner->>Node.js: Node.js 18 ํ๊ฒฝ ์ค์ (npm ์บ์ ํฌํจ)
Runner->>Runner: npm ci (์์กด์ฑ ์ค์น)
Runner->>ESLint: npm run lint (ESLint ๊ฒ์ฌ ์คํ)
Possibly related issues
Poem
๐ชง TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 0
๐งน Nitpick comments (3)
.github/workflows/ci.yml (3)
1-2: ์ํฌํ๋ก์ฐ ์ด๋ฆ ๋ช ํํ ์ ์
ํ์ฌCI Pipeline์ด๋ผ๋ ์ด๋ฆ์ด ๋ค์ ์ผ๋ฐ์ ์ ๋๋ค. ์:ESLint CI๋๋Lint Check์ฒ๋ผ ๊ตฌ์ฒด์ ์ผ๋ก ๋ช ์ํด ๋ณด์ธ์.
10-12: ๋ฌ๋ ํ๊ฒฝ ์ธ๋ถ ์ง์ ๋ฐ ๋ฆฌ์์ค ๊ณ ๋ ค
runs-on: self-hosted๋์self-hosted,linux,x64๋ฑ์ ๋ผ๋ฒจ์ ์ถ๊ฐํด ํน์ ๋ฌ๋๋ฅผ ์ง์ ํ๋ ๊ฒ์ ๊ถ์ฅํฉ๋๋ค.
๋ํ t2.micro ์ธ์คํด์ค์ ๋ฉ๋ชจ๋ฆฌ ์ ์ฝ์ผ๋ก OOM์ด ๋ฐ์ํ ์ ์์ผ๋ฏ๋ก, ๋ชจ๋ํฐ๋งํ๊ฑฐ๋ ํ์ ์ t2.small๋ก ์ ๊ทธ๋ ์ด๋๋ฅผ ๊ฒํ ํ์ธ์.
31-32: ESLint ์คํ ์คํฌ๋ฆฝํธ ์ ์
npm run lint๋ก ํ ํ์ค ์คํฌ๋ฆฝํธ๋ฅผ ํธ์ถํ๋ ๊ตฌ์ฑ์ ์ผ๊ด์ฑ์ด ๋์ต๋๋ค.์ต์ :
npm run lint -- --max-warnings 0์ ์ถ๊ฐํด ๊ฒฝ๊ณ ๊ฐ ์์ ๊ฒฝ์ฐ CI๋ฅผ ์คํจ ์ฒ๋ฆฌํ๋๋ก ์ค์ ํ ์ ์์ต๋๋ค.
๐ Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
๐ Files selected for processing (1)
.github/workflows/ci.yml(1 hunks)
๐งฐ Additional context used
๐ช actionlint (1.7.7)
.github/workflows/ci.yml
17-17: the runner of "actions/checkout@v3" action is too old to run on GitHub Actions. update the action's version to fix this issue
(action)
๐ Additional comments (4)
.github/workflows/ci.yml (4)
3-8: ํธ๋ฆฌ๊ฑฐ ์ค์ ์ ์
develop๋ฐmain๋ธ๋์น์ ๋ํ PR ์์ฑยท์์ ๋ฐ push ์ด๋ฒคํธ์ ๋ํด ESLint ๊ฒ์ฌ๋ฅผ ์๋์ผ๋ก ์คํํ๋๋ก ์ฌ๋ฐ๋ฅด๊ฒ ๊ตฌ์ฑ๋์ด ์์ต๋๋ค.
16-17: actions/checkout ๋ฒ์ ๊ฒฝ๊ณ ๋ฌด์ ๊ฐ๋ฅ
static analysis ๋๊ตฌ(actionlint)์ ๊ฒฝ๊ณ ๋ false positive๋ก ๋ณด์ ๋๋ค.actions/checkout@v3๋ ํ์ฌ ์์ ๋ ์ต์ Major ๋ฒ์ ์ด๋ฏ๋ก ์ ๋ฐ์ดํธ๊ฐ ํ์ํ์ง ์์ต๋๋ค.๐งฐ Tools
๐ช actionlint (1.7.7)
17-17: the runner of "actions/checkout@v3" action is too old to run on GitHub Actions. update the action's version to fix this issue
(action)
20-24: Node.js ์ค์ ๋ฐ ์บ์ ํ์ฉ ์ ์
Node.js 18 ํ๊ฒฝ ์ค์ ๊ณผcache: 'npm'์ต์ ์ ํตํด ์ข ์์ฑ ์ค์น ์๋๋ฅผ ๊ฐ์ ํ ๊ตฌ์ฑ์ด ์ ์ด๋ฃจ์ด์ก์ต๋๋ค.
27-28: ์์กด์ฑ ์ค์น ๋จ๊ณ ๋ฌธ์ ์์
npm ci๋ฅผ ์ฌ์ฉํด ์ผ๊ด๋ ๋ฐฉ์์ผ๋ก ์์กด์ฑ์ ์ค์นํ๋ ์ ๊ทผ์ด ์ ํฉํฉ๋๋ค.
Insung-Jo
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
๊ณ ์ํ์ จ์ต๋๋ค! ๐ ๐
|
์๊ณ ํ์ จ์ต๋๋ค~~ |
๐ ๋ณ๊ฒฝ ์ฌํญ ๊ฐ์
์ํฌํ๋ก์ฐ ๊ฐ์ ์ ์ํ GitHub Actions CI ํ์ดํ๋ผ์ธ ๊ตฌ์ถ. ESLint ์๋ ๊ฒ์ฌ, PR ์์ฑ ์ ์๋์ผ๋ก ์ฝ๋ ๊ฒ์ฌ๋ฅผ ์ํํ์ฌ ๋ฌธ์ ๊ฐ ์๋ ์ฝ๋์ ๋จธ์ง๋ฅผ ๋ฐฉ์งํ๊ณ ์ ํจ.
โจ ์์ฝ
GitHub Actions๋ฅผ ํ์ฉํ ๊ธฐ๋ณธ CI ํ์ดํ๋ผ์ธ์ ๊ตฌ์ถํ์ฌ develop/main ๋ธ๋์น๋ก์ PR ๋ฐ push ์ ESLint ๊ฒ์ฌ๊ฐ ์๋์ผ๋ก ์คํ๋๋๋ก ๊ตฌํํ์ต๋๋ค. self-hosted runner ํ๊ฒฝ์์ ์คํ๋์ด ์ค์ ๋ฐฐํฌ ํ๊ฒฝ๊ณผ ๋์ผํ ์กฐ๊ฑด์์ ์ฝ๋ ํ์ง์ ๊ฒ์ฆํฉ๋๋ค.
๐ ์์ธ ๋ด์ฉ
๊นํ๋ธ ์ก์ ์ํฌํ๋ก์ฐ ๊ตฌ์ฑ
ํธ๋ฆฌ๊ฑฐ: develop/main ๋ธ๋์น PR ์์ฑ/์์ ์, push ์
์คํ ํ๊ฒฝ: self-hosted runner (EC2 t2.micro)
ํ์์์: 10๋ถ ์ค์
CI ํ์ดํ๋ผ์ธ ๋จ๊ณ
ํ์ฉ๋๋ ๊ธฐ์กด ์ค์
TypeScript, React, Next.js ESLint ๊ท์น
TailwindCSS ๊ฒ์ฆ ํฌํจ
ํ ์ฝ๋ฉ ์ปจ๋ฒค์ ์๋ ์ค์ ํ์ธ
๐ ๊ด๋ จ ์ด์
#31
๐ผ๏ธ ์คํฌ๋ฆฐ์ท
โ ์ฒดํฌ๋ฆฌ์คํธ
๐ก ์ฐธ๊ณ ์ฌํญ
Summary by CodeRabbit