๐Ÿ›ผ study/๐Ÿ“ฒ tech

[infra] CI/CD ๊ฐœ๋…(feat. ๊นƒํ—ˆ๋ธŒ ์•ก์…˜ ์‚ฝ์งˆ๊ธฐ)

jcowwk 2024. 7. 19. 12:10

CI/CD ๊ฐœ๋…(feat. ๊นƒํ—ˆ๋ธŒ ์•ก์…˜ ์‚ฝ์งˆ๊ธฐ)


CI/CD ๊ณต๋ถ€ํ•˜๋ฉด์„œ ์ •๋ฆฌํ•œ ๋‚ด์šฉ์ž…๋‹ˆ๋‹ค!

 

1. CI/CD

2. Github Actions

3. ์‚ฝ์งˆ ์—ฌ์ •


1. CI/CD

๋‚ด๊ฐ€ ๋งŒ๋“  ํ”„๋กœ์ ํŠธ๋ฅผ ๋‹ค๋ฅธ ์‚ฌ๋žŒ๋“ค์—๊ฒŒ๋„ ๋ณด์—ฌ์ฃผ๋ ค๋ฉด ๋ฐฐํฌํ•˜๋Š” ๊ณผ์ •์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

์ด๋Ÿฌํ•œ ๋ฐฐํฌ๋ฅผ ํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์„œ๋ฒ„์— ํ”„๋กœ์ ํŠธ๋ฅผ ์˜ฌ๋ ค์ค˜์•ผ๊ฒ ์ฃ ?

 

CI/CD๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์ „์—๋Š” ์ตœ์ข… ํ”„๋กœ์ ํŠธ๋ฅผ ์„œ๋ฒ„์— ์˜ฌ๋ฆฌ๊ณ  ๋ฐ”๋€” ๋•Œ๋งˆ๋‹ค ๋˜ ์„œ๋ฒ„์— ์˜ฌ๋ฆฌ๊ณ  ์‹คํ–‰์‹œํ‚ค๋Š” ์ž‘์—…์„ ๋ฐ˜๋ณตํ–ˆ์„๊ฒ๋‹ˆ๋‹ค.

์ด๋ ‡๊ฒŒ ๋˜๋ฉด ๊ต‰์žฅํžˆ ๋ณต์žกํ•˜๊ณ  ๋ฒˆ๊ฑฐ๋กญ๊ฒ ์ฃ .

์กฐ๊ธˆ ๋” ํšจ์œจ์ ์ธ ๋ฐฐํฌ๋ฅผ ํ•˜๊ธฐ ์œ„ํ•ด CI/CD๊ฐ€ ์‚ฌ์šฉ๋ฉ๋‹ˆ๋‹ค.

 

- CI (์ง€์†์ ์ธ ํ†ตํ•ฉ)

๋กœ์ปฌ ํ”„๋กœ์ ํŠธ์—์„œ ๋ณ€๊ฒฝํ•œ ์‚ฌํ•ญ์ด ์žˆ์œผ๋ฉด ์„œ๋ฒ„๋ฅผ ์‹คํ–‰์‹œํ‚ค๊ณ  ์žˆ๋Š” ํ”„๋กœ์ ํŠธ ํŒŒ์ผ์˜ ์ฝ”๋“œ์—๋„ ๋ณ€๊ฒฝ์‚ฌํ•ญ์„ ์ ์šฉ์‹œ์ผœ์ค€๋‹ค๋Š” ๋œป์ž…๋‹ˆ๋‹ค. ์ฝ”๋“œ ๋ณ€๊ฒฝ์‚ฌํ•ญ ํ…Œ์ŠคํŠธ ํ†ต๊ณผ ํ›„ ๋ฐฐํฌ๊ฐ€ ๋  ์ค€๋น„๋ฅผ ํ•ฉ๋‹ˆ๋‹ค.

 

- CD (์ง€์†์ ์ธ ๋ฐฐํฌ)

์„œ๋ฒ„๋ฅผ ์‹คํ–‰์‹œํ‚ค๊ณ  ์žˆ๋Š” ํ”„๋กœ์ ํŠธ ํŒŒ์ผ์˜ ๋ณ€๊ฒฝ์ด ์ƒ๊ธฐ๋ฉด ์ด ๋ณ€๊ฒฝ๋œ ์‚ฌํ•ญ์„ ๋ฐ”๋กœ ์ ์šฉ์‹œ์ผœ์„œ ๋ฐฐํฌ๋ฅผ ํ•ด์ค€๋‹ค๋Š” ๋œป์ž…๋‹ˆ๋‹ค.

 

2. Github Actions

๋‹ค์Œ์œผ๋กœ๋Š” CI/CD๊ฐ€ ๋ญ”์ง€๋Š” ์•Œ๊ฒ ๋Š”๋ฐ, ๊ทธ๋ž˜์„œ ์–ด๋–ป๊ฒŒ ํ•˜๋Š”๊ฑด๋ฐ?! ๋ผ๊ณ  ํ•˜์‹ค๊ฒ๋‹ˆ๋‹ค.

Jenkins, Github Actions ๋“ฑ์ด ๋Œ€ํ‘œ์ ์ธ CI/CD ๋„๊ตฌ์ž…๋‹ˆ๋‹ค.

์ €๋Š” ๊ทธ ์ค‘์—์„œ Github Actions๋ฅผ ์‚ฌ์šฉํ•ด๋ณด์•˜๋Š”๋ฐ, ์ด์œ ๋Š” CI/CD๋ฅผ ์ฒ˜์Œ ํ•ด๋ณผ ๋•Œ ๊ฐ€์žฅ ์ ‘๊ทผ์„ฑ์ด ์ข‹๋‹ค๊ณ  ์ƒ๊ฐํ–ˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

 

Github Actions๋Š” Github์—์„œ ์ œ๊ณตํ•˜๋Š” CI/CD ์ž…๋‹ˆ๋‹ค.

Workflow๋ผ๋Š” ํ”„๋กœ์„ธ์Šค ์ˆœ์„œ๋„ ์•ˆ์˜ YAMLํŒŒ์ผ์— ๋™์ž‘์„ ์ž…๋ ฅํ•˜์—ฌ ์ „๋‹ฌํ•˜๋ฉด, ํ•ด๋‹น ํŒŒ์ผ์„ ๊ธฐ๋ฐ˜์œผ๋กœ ์‹คํ–‰์„ ์‹œํ‚ต๋‹ˆ๋‹ค.

 

3. ์‚ฝ์งˆ ์—ฌ์ •

 

 

2๊ฐœ์˜ ๋ ˆํผ์ง€ํ† ๋ฆฌ๋ฅผ ๋งŒ๋“ค์–ด์„œ ๊ธฐ๋ณธ spring ํ”„๋กœ์ ํŠธ ๋ฐฐํฌ ์—ฐ์Šต๋ถ€ํ„ฐ ์ง„ํ–‰ ํ–ˆ์Šต๋‹ˆ๋‹ค.

์˜คํƒ€ ๋•Œ๋ฌธ์— ์‚ฝ์งˆํ–ˆ๋˜..

 

 

์—ฐ์Šต์„ ์„ฑ๊ณต์ ์œผ๋กœ ๋งˆ์นœ ํ›„, ๊ฐœ์ธ ํ”„๋กœ์ ํŠธ๋„ CI/CD๋ฅผ ์ ์šฉ์‹œ์ผœ๋ดค์Šต๋‹ˆ๋‹ค.

 

 

๋•๋ถ„์— ํ”„๋กœ์ ํŠธ๋ฅผ ์„ฑ๊ณต์ ์œผ๋กœ ๋ฐฐํฌํ–ˆ์Šต๋‹ˆ๋‹ค.


CI/CD๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐฐํฌํ•˜๋Š” ๋ฐฉ๋ฒ•์€ ๋‹ค์Œ ํฌ์ŠคํŒ…์—์„œ ๋งŒ๋‚˜์š” !