๋ชฉ์ฐจ
์ ๊ธฐ
https://www.youtube.com/watch?v=3WZoVkvLE4A
3. ๊ฐ๋ฐํ๊ฒฝ ๋ฐ CI/CD์ ๊ธฐ๋ณธ ๋์ ์ดํด
- ๊ฐ๋ฐ ํ๊ฒฝ์ ์ข
๋ฅ
- ๊ฐ๋ฐ์์ ๋ก์ปฌ ํ๊ฒฝ
- ํตํฉํ ์คํธ
- QAํ๊ฒฝ
- ์ค์ ์ ํ๋ก๋์
- ๊ฐ๋ฐ ํ๋ก์ธ์ค
- ๊ฐ๋ฐ์๊ฐ ์์ ์ PC์์ ๊ฐ๋ฐ์ ์งํํ๋ค.
- ๋ค๋ฅธ ๊ฐ๋ฐ์๊ฐ ์์ฑํ ์ฝ๋์ ์ฐจ์ด๊ฐ ๋ฐ์ํ์ง ์๋์ง ๋ด๋ถ ํ ์คํธ๋ฅผ ์งํํ๋ค.
- ์งํํ ๋ด์ฉ์ ๋ค๋ฅธ ๊ฐ๋ฐ์๋ค๊ณผ ๋์ ํ๊ธฐ ์ํด git ๊ฐ์ SCM์ ์ฌ๋ฆฐ๋ค -> dev ๋ธ๋์น
- Dev๋ธ๋์น์ ๋ด์ฉ์ ๊ฐ๋ฐ ํ๊ฒฝ์ ๋ฐฐํฌํ๊ธฐ ์ ์ Lint๋ฑ ์ฝ๋ ํฌ๋ฉงํ ์ ํ๋ค
- ๋ฐฐํฌํ๊ธฐ ์ํ ๋น๋ ๊ณผ์ ์ ๊ฑฐ์น๋ค
- ์ฝ๋๋ฅผ ๋ฐฐํฌํ๋ค
- ํ ์คํธ๋ฅผ ์งํํ๋ค
- ์ ๊ณผ์ ์ Dev, QA, PRDํ๊ฒฝ์์ ๋ชจ๋ ํ๊ณ ๊ฐ๊ฐ ๋ง๋ ํ๊ฒฝ์ ๋ฐฐํฌํ๋ค.
- ์ฌ๋ฌ ๋ฐฐํฌํ๊ฒฝ์ ๊ด๋ฆฌ
- ์ฌ๋ฌ ๋ฐฐํฌํ๊ฒฝ์ ๊ด๋ฆฌ์์ ํต์ฌ์ ์ธํ๋ผ๋ฅผ ๋ชจ๋ํ ํ์ฌ ์ด๋ค๊ฒ์ด ๋ณ์์ธ์ง ์ ์ค์ ํ๊ณ ์ด๋ฅผ ์ ์ค๊ณํ๋๊ฒ
- ์๋ฅผ๋ค์ด, APP_ENV์ฒ๋ผ ํ์ฌ ๋ฐฐํฌํ๊ณ ์ ํ๋ ๊ฒ์ด ๋ฌด์จ ํ๊ฒฝ์ธ์ง ์ฑ ๋ด์์ ์ฌ์ฉํ๋ ๋ค์ํ ๋ณ์๋ค์ ํ๊ฒฝ์ ๋ง๊ฒ ์ ๊ฐ์ ธ๋ค ์ฐ๋๊ฒ์ด ํต์ฌ
- ์๋น์ค ๋ด๋ถ์ ๋ณ์ ๋ฟ ๋ง ์๋๋ผ ํด๋ผ์ฐ๋ ๋ฆฌ์์ค๋ฅผ ๋ง์ด ํ์ฉํด์ ๊ฐ๋ฐํ๋ ์์ฆ์๋ ํด๋ผ์ฐ๋ ๋ฆฌ์์ค ๋ด์์ ์ธํ๋ผ ๋ณ ํค ๊ด๋ฆฌ๊ฐ ๋งค์ฐ ์ค์ํด์ System Manager Parameter Store์ ๊ฐ์ ํค ๊ด๋ฆฌ ์๋น์ค๋ฅผ ์ฐ๋๊ฒ ๊ฐ์ถ
- ์์ ๋ฐฐํฌ ํ๊ฒฝ
- ์น์ฌ์ดํธ ์ฝ๋๋ฅผ ์์ฑํ๋ค
- ์น์ฌ์ดํธ ์ฝ๋๋ฅผ ๋ฆฐํธ, ์นํฉ ๋น๋ํด์ AWS S3 bucket์ Htmlํ์ผ์ ์ ๋ก๋ ํ๋ค.
- Node.js ๋ฐฑ์๋ ์ฝ๋๋ฅผ typescript ์์ฑํ๋ค
- ์ ์ฝ๋๋ฅผ javascript complie ํ๊ณ , ํ ์คํธ ์ฝ๋๋ฅผ ๋๋ ค์ ๋์ปค ์ด๋ฏธ์ง๋ฅผ ๋ง๋ค์ด ECR์ ์ ๋ก๋ ํ๋ค
- ์ ๋ก๋ํ ECR ์ด๋ฏธ์ง๋ก ECS์๋น์ค๋ฅผ ์ฌ์์ํ๋ค. (rolling deploy) --> cd
728x90