GitLab์—์„œ ์†Œํ”„ํŠธ์›จ์–ด ํŒจ์น˜๋ฅผ ๋ฆด๋ฆฌ์Šคํ•˜๋Š” ๋ฐฉ๋ฒ•

GitLab์—์„œ ์†Œํ”„ํŠธ์›จ์–ด ํŒจ์น˜๋ฅผ ๋ฆด๋ฆฌ์Šคํ•˜๋Š” ๋ฐฉ๋ฒ•

GitLab์—์„œ๋Š” ์ˆ˜๋™ ๋ฐ ์ž๋™์˜ ๋‘ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์œผ๋กœ ์†Œํ”„ํŠธ์›จ์–ด ์ˆ˜์ •์„ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค. gitlab.com์— ๋Œ€ํ•œ ์ž๋™ ๋ฐฐํฌ๋ฅผ ํ†ตํ•ด ์ค‘์š”ํ•œ ์—…๋ฐ์ดํŠธ๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ์ œ๊ณตํ•˜๋Š” ๋ฆด๋ฆฌ์Šค ๊ด€๋ฆฌ์ž์˜ ์ž‘์—…๊ณผ ์‚ฌ์šฉ์ž๊ฐ€ ์ž์ฒด ์„ค์น˜์—์„œ ์ž‘์—…ํ•  ์ˆ˜ ์žˆ๋Š” ํŒจ์น˜์— ๋Œ€ํ•ด ์•Œ์•„ ๋ณด๋ ค๋ฉด ๊ณ„์† ์ฝ์–ด๋ณด์„ธ์š”.

์Šค๋งˆํŠธ์›Œ์น˜์— ์•Œ๋ฆผ์„ ์„ค์ •ํ•˜๋Š” ๊ฒƒ์ด ์ข‹์Šต๋‹ˆ๋‹ค. ๋งค๋‹ฌ 22์ผ์— ํ•ด๋‹น ์‹œ์„ค์—์„œ GitLab์„ ์‚ฌ์šฉํ•˜๋Š” ์‚ฌ์šฉ์ž๋Š” ํ˜„์žฌ ์ œํ’ˆ ๋ฒ„์ „์— ๋Œ€ํ•œ ์—…๋ฐ์ดํŠธ๋ฅผ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์›”๊ฐ„ ๋ฆด๋ฆฌ์Šค์—๋Š” ์ƒˆ๋กœ์šด ๊ธฐ๋Šฅ๊ณผ ๊ธฐ์กด ๊ธฐ๋Šฅ์˜ ๊ฐœ๋ฐœ์ด ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฉฐ ์ข…์ข… ๋„๊ตฌ ๋˜๋Š” ๋ณ‘ํ•ฉ์— ๋Œ€ํ•œ ์ปค๋ฎค๋‹ˆํ‹ฐ ์š”์ฒญ์˜ ์ตœ์ข… ๊ฒฐ๊ณผ๋ฅผ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ ์‹ค์Šต์—์„œ ์•Œ ์ˆ˜ ์žˆ๋“ฏ์ด ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ์— ๊ฒฐํ•จ์ด ์—†๋Š” ๊ฒฝ์šฐ๋Š” ๊ฑฐ์˜ ์—†์Šต๋‹ˆ๋‹ค. ๋ฒ„๊ทธ๋‚˜ ๋ณด์•ˆ ์ทจ์•ฝ์ ์ด ๋ฐœ๊ฒฌ๋˜๋ฉด ์ œ๊ณต ํŒ€์˜ ๋ฆด๋ฆฌ์Šค ๊ด€๋ฆฌ์ž๊ฐ€ ์‚ฌ์šฉ์ž ์„ค์น˜์— ๋Œ€ํ•œ ํŒจ์น˜๋ฅผ ๋งŒ๋“ญ๋‹ˆ๋‹ค. Gitlab.com์€ CD ํ”„๋กœ์„ธ์Šค ์ค‘์— ์—…๋ฐ์ดํŠธ๋ฉ๋‹ˆ๋‹ค. GitLab์˜ CD ๊ธฐ๋Šฅ๊ณผ์˜ ํ˜ผ๋™์„ ํ”ผํ•˜๊ธฐ ์œ„ํ•ด ์ด CD ํ”„๋กœ์„ธ์Šค๋ฅผ ์ž๋™ ๋ฐฐํฌ๋ผ๊ณ  ๋ถ€๋ฆ…๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์„ธ์Šค๋Š” ์‚ฌ์šฉ์ž, ๊ณ ๊ฐ ๋ฐ ๋‚ด๋ถ€ ๊ฐœ๋ฐœ ํŒ€์ด ์ œ์ถœํ•œ ํ’€ ์š”์ฒญ์˜ ์ œ์•ˆ์„ ํ†ตํ•ฉํ•  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ ํŒจ์น˜ ๋ฆด๋ฆฌ์Šค์˜ ์ง€๋ฃจํ•œ ๋ฌธ์ œ๋ฅผ ๋งค์šฐ ๋‹ค๋ฅธ ๋‘ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์œผ๋กœ ํ•ด๊ฒฐํ•ฉ๋‹ˆ๋‹ค.

ยซ์šฐ๋ฆฌ๋Š” ๊ฐœ๋ฐœ์ž๊ฐ€ ๋งŒ๋“œ๋Š” ๋ชจ๋“  ๊ฒƒ์ด GitLab.com์— ์ถœ์‹œ๋˜๊ธฐ ์ „์— ๋งค์ผ ๋ชจ๋“  ํ™˜๊ฒฝ์— ๋ฐฐํฌ๋˜๋„๋ก ํ•ฉ๋‹ˆ๋‹ค."๋ผ๊ณ  ์„ค๋ช…ํ•œ๋‹ค ๋งˆ๋ฆฐ ์–€์ฝ”ํ”„ํ‚ค, ์ธํ”„๋ผ ๋ถ€์„œ ์ˆ˜์„ ๊ธฐ์ˆ  ๊ด€๋ฆฌ์ž. "์„ค์น˜ ๋ฆด๋ฆฌ์Šค๋ฅผ gitlab.com ๋ฐฐํฌ๋ฅผ ์œ„ํ•œ ์Šค๋ƒ…์ƒท์œผ๋กœ ์ƒ๊ฐํ•˜์„ธ์š”. ์ด์— ๋Œ€ํ•ด ์šฐ๋ฆฌ๋Š” ์‚ฌ์šฉ์ž๊ฐ€ ํŒจํ‚ค์ง€๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์„ค์น˜์— ์„ค์น˜ํ•  ์ˆ˜ ์žˆ๋„๋ก ํŒจํ‚ค์ง€๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ณ„๋„์˜ ๋‹จ๊ณ„๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค.".

๋ฒ„๊ทธ๋‚˜ ์ทจ์•ฝ์ ์— ๊ด€๊ณ„์—†์ด gitlab.com ๊ณ ๊ฐ์€ ์ˆ˜์ • ์‚ฌํ•ญ์ด ๊ฒŒ์‹œ๋œ ํ›„ ์ฆ‰์‹œ ์ˆ˜์ • ์‚ฌํ•ญ์„ ๋ฐ›๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ์ด๋Š” ์ž๋™ํ™”๋œ CD ํ”„๋กœ์„ธ์Šค์˜ ์ด์ ์ž…๋‹ˆ๋‹ค. ์ž์ฒด์ ์œผ๋กœ ์„ค์น˜ํ•œ ์‚ฌ์šฉ์ž๋ฅผ ์œ„ํ•œ ํŒจ์น˜๋Š” ๋ฆด๋ฆฌ์Šค ๊ด€๋ฆฌ์ž๊ฐ€ ๋ณ„๋„๋กœ ์ค€๋น„ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ œ๊ณต ํŒ€์€ ๋ฆด๋ฆฌ์Šค ์ƒ์„ฑ๊ณผ ๊ด€๋ จ๋œ ๋Œ€๋ถ€๋ถ„์˜ ํ”„๋กœ์„ธ์Šค๋ฅผ ์ž๋™ํ™”ํ•˜๊ธฐ ์œ„ํ•ด ์—ด์‹ฌํžˆ ๋…ธ๋ ฅํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. MTTP (ํ‰๊ท  ์ƒ์‚ฐ ์‹œ๊ฐ„, ์ฆ‰ ์ƒ์‚ฐ์— ์†Œ์š”๋œ ์‹œ๊ฐ„), ๊ฐœ๋ฐœ์ž์˜ ๋ณ‘ํ•ฉ ์š”์ฒญ ์ฒ˜๋ฆฌ๋ถ€ํ„ฐ gitlab.com์— ๋ฐฐํฌ๊นŒ์ง€์˜ ๊ธฐ๊ฐ„์ž…๋‹ˆ๋‹ค.

ยซ๋ฐฐ๋‹ฌํŒ€์˜ ๋ชฉํ‘œ๋Š” ํšŒ์‚ฌ๋กœ์„œ ๋” ๋นจ๋ฆฌ ์›€์ง์ผ ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๊ฒƒ, ์•„๋‹ˆ๋ฉด ์ ์–ด๋„ ๋ฐฐ๋‹ฌ์›๋“ค์ด ๋” ๋นจ๋ฆฌ ์ผํ•  ์ˆ˜ ์žˆ๋„๋ก ํ•˜๋Š” ๊ฒƒ ์•„๋‹๊นŒ์š”??, ๋งˆ๋ฆฐ์ด ๋งํ•ฉ๋‹ˆ๋‹ค.

gitlab.com ๊ณ ๊ฐ๊ณผ ์„ค์น˜ ์‚ฌ์šฉ์ž ๋ชจ๋‘ ์ฃผ๊ธฐ ์‹œ๊ฐ„์„ ์ค„์ด๊ณ  ๋ฐฐํฌ ์†๋„๋ฅผ ๋†’์ด๋ ค๋Š” ์ œ๊ณต ํŒ€์˜ ๋…ธ๋ ฅ์œผ๋กœ ์ด์ต์„ ์–ป์Šต๋‹ˆ๋‹ค. ์ด ๊ธฐ์‚ฌ์—์„œ๋Š” ์ด ๋‘ ๊ฐ€์ง€ ๋ฐฉ๋ฒ•์˜ ์œ ์‚ฌ์ ๊ณผ ์ฐจ์ด์ ์„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ๋ฌธ์ œ, ๋˜ํ•œ ์ œ๊ณต ํŒ€์ด ์‹œ์„ค์—์„œ ์ž‘์—…ํ•˜๋Š” ์‚ฌ์šฉ์ž๋ฅผ ์œ„ํ•ด ํŒจ์น˜๋ฅผ ์ค€๋น„ํ•˜๋Š” ๋ฐฉ๋ฒ•๊ณผ ์ž๋™ ๋ฐฐํฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ gitlab.com์ด ์ตœ์‹  ์ƒํƒœ์ธ์ง€ ํ™•์ธํ•˜๋Š” ๋ฐฉ๋ฒ•์— ๋Œ€ํ•ด์„œ๋„ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

๋ฆด๋ฆฌ์Šค ๊ด€๋ฆฌ์ž๋Š” ๋ฌด์—‡์„ ํ•ฉ๋‹ˆ๊นŒ?

๋งค์›” ํŒ€์› ๋ฆด๋ฆฌ์Šค ๊ด€๋ฆฌ์ž ์—ญํ•  ์ด์ „ ๋ฆด๋ฆฌ์Šค ์‚ฌ์ด์— ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ๋Š” ํŒจ์น˜ ๋ฐ ๋ณด์•ˆ ๋ฆด๋ฆฌ์Šค๋ฅผ ํฌํ•จํ•˜์—ฌ ํ•ด๋‹น ์‹œ์„ค์˜ ์‚ฌ์šฉ์ž์—๊ฒŒ ๋ฆด๋ฆฌ์Šคํ•ฉ๋‹ˆ๋‹ค. ๋˜ํ•œ ํšŒ์‚ฌ์˜ ์ž๋™ํ™”๋œ ์ง€์†์ ์ธ ๋ฐฐํฌ๋กœ์˜ ์ „ํ™˜์„ ์ฃผ๋„ํ•˜๋Š” ์—ญํ• ๋„ ๋‹ด๋‹นํ•ฉ๋‹ˆ๋‹ค.

์ž์ฒด ์„ค์น˜ ๋ฆด๋ฆฌ์Šค์™€ gitlab.com ๋ฆด๋ฆฌ์Šค๋Š” ์œ ์‚ฌํ•œ ์ž‘์—… ํ๋ฆ„์„ ์‚ฌ์šฉํ•˜์ง€๋งŒ ์‹คํ–‰ ์‹œ๊ฐ„์€ ๋‹ค๋ฅด๋‹ค๊ณ  Marin์€ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

๋ฌด์—‡๋ณด๋‹ค๋„ ๋ฆด๋ฆฌ์Šค ๊ด€๋ฆฌ์ž๋Š” ๋ฆด๋ฆฌ์Šค ์œ ํ˜•์— ๊ด€๊ณ„์—†์ด ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜์ด gitlab.com์—์„œ ์‹คํ–‰๋˜๋Š” ์ˆœ๊ฐ„๋ถ€ํ„ฐ GitLab์„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๊ณ  ์•ˆ์ „ํ•˜๊ฒŒ ๋ณดํ˜ธํ•  ์ˆ˜ ์žˆ๋„๋ก ๋ณด์žฅํ•ฉ๋‹ˆ๋‹ค. ์ž์‹ ์˜ ์—ญ๋Ÿ‰.

GitLab์—์„œ ๋ฒ„๊ทธ๋‚˜ ์ทจ์•ฝ์ ์ด ์ˆ˜์ •๋œ ๊ฒƒ์œผ๋กœ ํ‘œ์‹œ๋˜๋ฉด ๋ฆด๋ฆฌ์Šค ๊ด€๋ฆฌ์ž๋Š” ํ•ด๋‹น ๋ฒ„๊ทธ๋‚˜ ์ทจ์•ฝ์ ์ด ์„ค์น˜๋œ ์‚ฌ์šฉ์ž๋ฅผ ์œ„ํ•œ ํŒจ์น˜๋‚˜ ๋ณด์•ˆ ์—…๋ฐ์ดํŠธ์— ํฌํ•จ๋  ๊ฒƒ์ธ์ง€ ํ‰๊ฐ€ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ฒ„๊ทธ๋‚˜ ์ทจ์•ฝ์ ์„ ์—…๋ฐ์ดํŠธํ•  ๊ฐ€์น˜๊ฐ€ ์žˆ๋‹ค๊ณ  ํŒ๋‹จํ•˜๋ฉด ์ค€๋น„ ์ž‘์—…์ด ์‹œ์ž‘๋ฉ๋‹ˆ๋‹ค.

๋ฆด๋ฆฌ์Šค ๊ด€๋ฆฌ์ž๋Š” ์ˆ˜์ • ์‚ฌํ•ญ์„ ์ค€๋น„ํ• ์ง€ ๋˜๋Š” ์–ธ์ œ ๋ฐฐํฌํ• ์ง€ ๊ฒฐ์ •ํ•ด์•ผ ํ•˜๋ฉฐ ์ด๋Š” ์ƒํ™ฉ์˜ ๋งฅ๋ฝ์— ๋”ฐ๋ผ ํฌ๊ฒŒ ๋‹ฌ๋ผ์ง‘๋‹ˆ๋‹ค.๊ทธ ๋™์•ˆ ๊ธฐ๊ณ„๋Š” ์‚ฌ๋žŒ๋งŒํผ ์ƒํ™ฉ์„ ์ž˜ ๊ด€๋ฆฌํ•˜์ง€ ๋ชปํ•ฉ๋‹ˆ๋‹ค."๋ผ๊ณ  ๋งˆ๋ฆฐ์€ ๋งํ•ฉ๋‹ˆ๋‹ค.

์ˆ˜์ • ์‚ฌํ•ญ์— ๊ด€ํ•œ ๋ชจ๋“  ๊ฒƒ

ํŒจ์น˜๋ž€ ๋ฌด์—‡์ด๋ฉฐ ์™œ ํ•„์š”ํ•œ๊ฐ€์š”?

๋ฆด๋ฆฌ์Šค ๊ด€๋ฆฌ์ž๋Š” ๋ฒ„๊ทธ์˜ ์‹ฌ๊ฐ๋„์— ๋”ฐ๋ผ ์ˆ˜์ • ์‚ฌํ•ญ์„ ๋ฆด๋ฆฌ์Šคํ• ์ง€ ์—ฌ๋ถ€๋ฅผ ๊ฒฐ์ •ํ•ฉ๋‹ˆ๋‹ค.

์˜ค๋ฅ˜๋Š” ์‹ฌ๊ฐ๋„์— ๋”ฐ๋ผ ๋‹ค๋ฆ…๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ S4 ๋˜๋Š” S3 ์˜ค๋ฅ˜๋Š” ํ”ฝ์…€์ด๋‚˜ ์•„์ด์ฝ˜ ๋ณ€์œ„์™€ ๊ฐ™์€ ๋ฌธ์ฒด์  ์˜ค๋ฅ˜์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Š” ๊ทธ๋‹ค์ง€ ์ค‘์š”ํ•˜์ง€ ์•Š์ง€๋งŒ ๋‹ค๋ฅธ ์‚ฌ๋žŒ์˜ ์ž‘์—… ํ๋ฆ„์— ํฐ ์˜ํ–ฅ์„ ๋ฏธ์น˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. ์ฆ‰, ๊ทธ๋Ÿฌํ•œ S3 ๋˜๋Š” S4 ์˜ค๋ฅ˜์— ๋Œ€ํ•œ ์ˆ˜์ • ์‚ฌํ•ญ์ด ์ƒ์„ฑ๋  ๊ฐ€๋Šฅ์„ฑ์ด ์ž‘๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธํ•œ๋‹ค๊ณ  Marin์€ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋Ÿฌ๋‚˜ S1 ๋˜๋Š” S2 ์ทจ์•ฝ์ ์€ ์‚ฌ์šฉ์ž๊ฐ€ ์ตœ์‹  ๋ฒ„์ „์œผ๋กœ ์—…๋ฐ์ดํŠธํ•ด์„œ๋Š” ์•ˆ๋˜๊ฑฐ๋‚˜ ์‚ฌ์šฉ์ž์˜ ์ž‘์—… ํ๋ฆ„์— ์˜ํ–ฅ์„ ๋ฏธ์น˜๋Š” ์‹ฌ๊ฐํ•œ ๋ฒ„๊ทธ๊ฐ€ ์žˆ์Œ์„ ์˜๋ฏธํ•ฉ๋‹ˆ๋‹ค. ํŠธ๋ž˜์ปค์— ํฌํ•จ๋˜์–ด ์žˆ์œผ๋ฉด ๋งŽ์€ ์‚ฌ์šฉ์ž๊ฐ€ ์ด๋ฅผ ์ ‘ํ•œ ๊ฒƒ์ด๋ฏ€๋กœ ๋ฆด๋ฆฌ์Šค ๊ด€๋ฆฌ์ž๋Š” ์ฆ‰์‹œ ์ˆ˜์ • ์ค€๋น„๋ฅผ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

์ทจ์•ฝ์  S1 ๋˜๋Š” S2์— ๋Œ€ํ•œ ํŒจ์น˜๊ฐ€ ์ค€๋น„๋˜๋ฉด ๋ฆด๋ฆฌ์Šค ๊ด€๋ฆฌ์ž๋Š” ํŒจ์น˜ ๋ฆด๋ฆฌ์Šค๋ฅผ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค.

์˜ˆ๋ฅผ ๋“ค์–ด, GitLab 12.10.1 ํŒจ์น˜๋Š” ์—ฌ๋Ÿฌ ๊ฐ€์ง€ ์ฐจ๋‹จ ๋ฌธ์ œ๊ฐ€ ํ™•์ธ๋œ ํ›„ ์ƒ์„ฑ๋˜์—ˆ์œผ๋ฉฐ ๊ฐœ๋ฐœ์ž๋Š” ์ด๋Ÿฌํ•œ ๋ฌธ์ œ๋ฅผ ์ผ์œผํ‚ค๋Š” ๊ทผ๋ณธ์ ์ธ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ–ˆ์Šต๋‹ˆ๋‹ค. ๋ฆด๋ฆฌ์Šค ๊ด€๋ฆฌ์ž๋Š” ํ• ๋‹น๋œ ์‹ฌ๊ฐ๋„ ์ˆ˜์ค€์˜ ์ •ํ™•์„ฑ์„ ํ‰๊ฐ€ํ•˜๊ณ  ํ™•์ธ ํ›„ ์ˆ˜์ • ์‚ฌํ•ญ์„ ๋ฆด๋ฆฌ์Šคํ•˜๋Š” ํ”„๋กœ์„ธ์Šค๊ฐ€ ์‹œ์ž‘๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ์ด ํ”„๋กœ์„ธ์Šค๋Š” ์ฐจ๋‹จ ๋ฌธ์ œ๊ฐ€ ๋ฐœ๊ฒฌ๋œ ํ›„ XNUMX์‹œ๊ฐ„ ์ด๋‚ด์— ์ค€๋น„๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

S4, S3, S2๊ฐ€ ๋งŽ์ด ์Œ“์ด๋ฉด ๋ฆด๋ฆฌ์Šค ๊ด€๋ฆฌ์ž๊ฐ€ ์ปจํ…์ŠคํŠธ๋ฅผ ์‚ดํŽด์„œ ์ˆ˜์ • ์‚ฌํ•ญ ๋ฆด๋ฆฌ์Šค์˜ ๊ธด๊ธ‰์„ฑ์„ ํŒ๋‹จํ•˜๊ณ  ์ผ์ • ์ˆ˜์— ๋„๋‹ฌํ•˜๋ฉด ๋ชจ๋‘ ๊ฒฐํ•ฉํ•˜์—ฌ ๋ฆด๋ฆฌ์Šคํ•ฉ๋‹ˆ๋‹ค. ์ถœ์‹œ ํ›„ ์ˆ˜์ • ์‚ฌํ•ญ์ด๋‚˜ ๋ณด์•ˆ ์—…๋ฐ์ดํŠธ๋Š” ๋ธ”๋กœ๊ทธ ๊ฒŒ์‹œ๋ฌผ์— ์š”์•ฝ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฆด๋ฆฌ์Šค ๊ด€๋ฆฌ์ž๊ฐ€ ํŒจ์น˜๋ฅผ ์ƒ์„ฑํ•˜๋Š” ๋ฐฉ๋ฒ•

์šฐ๋ฆฌ๋Š” GitLab CI์™€ ChatOps์™€ ๊ฐ™์€ ๊ธฐํƒ€ ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•˜์—ฌ ํŒจ์น˜๋ฅผ ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ๋ฆด๋ฆฌ์Šค ๊ด€๋ฆฌ์ž๋Š” ๋‚ด๋ถ€ ์ฑ„๋„์—์„œ ChatOps ํŒ€์„ ํ™œ์„ฑํ™”ํ•˜์—ฌ ์ˆ˜์ • ์‚ฌํ•ญ ๋ฆด๋ฆฌ์Šค๋ฅผ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค. #releases ์Šฌ๋ž™์—์„œ.

/chatops run release prepare 12.10.1

ChatOps๋Š” Slack ๋‚ด์—์„œ ์ž‘๋™ํ•˜์—ฌ ๋‹ค์–‘ํ•œ ์ด๋ฒคํŠธ๋ฅผ ํŠธ๋ฆฌ๊ฑฐํ•œ ํ›„ GitLab์—์„œ ์ฒ˜๋ฆฌํ•˜๊ณ  ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด ์ œ๊ณตํŒ€์€ ํŒจ์น˜๋ฅผ ์ถœ์‹œํ•˜๊ธฐ ์œ„ํ•ด ๋‹ค์–‘ํ•œ ์ž‘์—…์„ ์ž๋™ํ™”ํ•˜๋„๋ก ChatOps๋ฅผ ์„ค์ •ํ–ˆ์Šต๋‹ˆ๋‹ค.

๋ฆด๋ฆฌ์Šค ๊ด€๋ฆฌ์ž๊ฐ€ Slack์—์„œ ChatOps ํŒ€์„ ์‹œ์ž‘ํ•˜๋ฉด ๋‚˜๋จธ์ง€ ์ž‘์—…์€ CICD๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ GitLab์—์„œ ์ž๋™์œผ๋กœ ์ˆ˜ํ–‰๋ฉ๋‹ˆ๋‹ค. ๋ฆด๋ฆฌ์Šค ๊ด€๋ฆฌ์ž๊ฐ€ ํ”„๋กœ์„ธ์Šค์˜ ์ผ๋ถ€ ์ฃผ์š” ๋‹จ๊ณ„๋ฅผ ํ™œ์„ฑํ™”ํ•˜๋ฏ€๋กœ ๋ฆด๋ฆฌ์Šค ํ”„๋กœ์„ธ์Šค ์ค‘์— Slack์˜ ChatOps์™€ GitLab ๊ฐ„์— ์–‘๋ฐฉํ–ฅ ํ†ต์‹ ์ด ์ด๋ฃจ์–ด์ง‘๋‹ˆ๋‹ค.

์•„๋ž˜ ์˜์ƒ์€ GitLab์šฉ ํŒจ์น˜๋ฅผ ์ค€๋น„ํ•˜๋Š” ๊ธฐ์ˆ ์ ์ธ ๊ณผ์ •์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

gitlab.com์—์„œ ์ž๋™ ๋ฐฐํฌ๊ฐ€ ์ž‘๋™ํ•˜๋Š” ๋ฐฉ์‹

gitlab.com์„ ์—…๋ฐ์ดํŠธํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ํ”„๋กœ์„ธ์Šค์™€ ๋„๊ตฌ๋Š” ํŒจ์น˜๋ฅผ ๋งŒ๋“œ๋Š” ๋ฐ ์‚ฌ์šฉ๋˜๋Š” ๊ฒƒ๊ณผ ์œ ์‚ฌํ•ฉ๋‹ˆ๋‹ค. ๋ฆด๋ฆฌ์Šค ๊ด€๋ฆฌ์ž์˜ ๊ด€์ ์—์„œ gitlab.com์„ ์—…๋ฐ์ดํŠธํ•˜๋ฉด ์ˆ˜๋™ ์ž‘์—…์ด ๋œ ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

ChatOps๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐฐํฌ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋Œ€์‹  CI ๊ธฐ๋Šฅ์„ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ์ •๋œ ํŒŒ์ดํ”„๋ผ์ธ๋ฅผ ํ†ตํ•ด ๋ฆด๋ฆฌ์Šค ๊ด€๋ฆฌ์ž๋Š” ํ•„์š”ํ•œ ์‹œ๊ฐ„์— ํŠน์ • ์ž‘์—…์ด ์ˆ˜ํ–‰๋˜๋„๋ก ์˜ˆ์•ฝํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ˆ˜๋™ ํ”„๋กœ์„ธ์Šค ๋Œ€์‹  GitLab ํ”„๋กœ์ ํŠธ์˜ ์ƒˆ๋กœ์šด ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๋‹ค์šด๋กœ๋“œํ•˜๊ณ  ์ด๋ฅผ ํŒจํ‚ค์ง•ํ•˜๊ณ  ๋ฐฐํฌ๋ฅผ ์˜ˆ์•ฝํ•˜๊ณ  ํ…Œ์ŠคํŠธ, QA ๋ฐ ๊ธฐํƒ€ ํ•„์š”ํ•œ ๋‹จ๊ณ„๋ฅผ ์ž๋™์œผ๋กœ ์‹คํ–‰ํ•˜๋Š” ํŒŒ์ดํ”„๋ผ์ธ์ด ํ•œ ์‹œ๊ฐ„์— ํ•œ ๋ฒˆ์”ฉ ์ฃผ๊ธฐ์ ์œผ๋กœ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

Marin์€ "๋”ฐ๋ผ์„œ gitlab.com ์ด์ „์—๋Š” ๋‹ค์–‘ํ•œ ํ™˜๊ฒฝ์—์„œ ๋งŽ์€ ๋ฐฐํฌ๊ฐ€ ์‹คํ–‰๋˜๊ณ  ์žˆ์—ˆ๊ณ  ์ด๋Ÿฌํ•œ ํ™˜๊ฒฝ์ด ์–‘ํ˜ธํ•˜๊ณ  ํ…Œ์ŠคํŠธ ๊ฒฐ๊ณผ๊ฐ€ ์ข‹์€ ๊ฒฐ๊ณผ๋ฅผ ์–ป์€ ํ›„์— ๋ฆด๋ฆฌ์Šค ๊ด€๋ฆฌ์ž๊ฐ€ gitlab.com ๋ฐฐํฌ ์ž‘์—…์„ ์‹œ์ž‘ํ•ฉ๋‹ˆ๋‹ค"๋ผ๊ณ  ๋งํ•ฉ๋‹ˆ๋‹ค.

gitlab.com ์—…๋ฐ์ดํŠธ๋ฅผ ์ง€์›ํ•˜๊ธฐ ์œ„ํ•œ CICD ๊ธฐ์ˆ ์€ ๋ฆด๋ฆฌ์Šค ๊ด€๋ฆฌ์ž๊ฐ€ gitlab.com์— ๋Œ€ํ•œ ํ”„๋กœ๋•์…˜ ํ™˜๊ฒฝ ๋ฐฐํฌ๋ฅผ ์ˆ˜๋™์œผ๋กœ ์‹œ์ž‘ํ•ด์•ผ ํ•˜๋Š” ์ง€์ ๊นŒ์ง€ ์ „์ฒด ํ”„๋กœ์„ธ์Šค๋ฅผ ์ž๋™ํ™”ํ•ฉ๋‹ˆ๋‹ค.

Marin์€ ์•„๋ž˜ ๋น„๋””์˜ค์—์„œ gitlab.com ์—…๋ฐ์ดํŠธ ํ”„๋กœ์„ธ์Šค์— ๋Œ€ํ•ด ์ž์„ธํžˆ ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

๋ฐฐ์†กํŒ€์€ ๋˜ ๋ฌด์Šจ ์ผ์„ ํ•˜๋‚˜์š”?

gitlab.com ์—…๋ฐ์ดํŠธ ํ”„๋กœ์„ธ์Šค์™€ ์‚ฌ๋‚ด ๊ณ ๊ฐ์—๊ฒŒ ํŒจ์น˜๋ฅผ ๋ฆด๋ฆฌ์Šคํ•˜๋Š” ๊ฒƒ์˜ ์ฃผ์š” ์ฐจ์ด์ ์€ ํ›„์ž ํ”„๋กœ์„ธ์Šค์—๋Š” ๋ฆด๋ฆฌ์Šค ๊ด€๋ฆฌ์ž์˜ ๋” ๋งŽ์€ ์‹œ๊ฐ„๊ณผ ์ˆ˜๋™ ์ž‘์—…์ด ํ•„์š”ํ•˜๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

Marin์€ โ€œ๋ณด๊ณ ๋œ ๋ฌธ์ œ, ๋„๊ตฌ ๋ฌธ์ œ, ๊ทธ๋ฆฌ๊ณ  ๋‹จ์ผ ํŒจ์น˜๋ฅผ ์ถœ์‹œํ•  ๋•Œ ๊ณ ๋ คํ•ด์•ผ ํ•  ๋ฏธ๋ฌ˜ํ•œ ์ฐจ์ด๋กœ ์ธํ•ด ๊ณ ๊ฐ ์„ค์น˜์— ๋Œ€ํ•œ ํŒจ์น˜ ์ถœ์‹œ๋ฅผ ์—ฐ๊ธฐํ•˜๋Š” ๊ฒฝ์šฐ๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.โ€๋ผ๊ณ  ๋งํ•ฉ๋‹ˆ๋‹ค.

๋”œ๋ฆฌ๋ฒ„๋ฆฌ ํŒ€์˜ ๋‹จ๊ธฐ ๋ชฉํ‘œ ์ค‘ ํ•˜๋‚˜๋Š” ๋ฆด๋ฆฌ์Šค ๊ด€๋ฆฌ์ž ์ธก์˜ ์ˆ˜๋™ ์ž‘์—…๋Ÿ‰์„ ์ค„์—ฌ ๋ฆด๋ฆฌ์Šค ์†๋„๋ฅผ ๋†’์ด๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ํŒ€์€ ์‹ฌ๊ฐ๋„๊ฐ€ ๋‚ฎ์€ ๋ฌธ์ œ(S3 ๋ฐ S4, ์•ฝ. ์—ญ์ž). ์†๋„์— ์ดˆ์ ์„ ๋งž์ถ”๋Š” ๊ฒƒ์ด ํ•ต์‹ฌ ์„ฑ๊ณผ ์ง€ํ‘œ์ž…๋‹ˆ๋‹ค. MTTP(๋ณ‘ํ•ฉ ์š”์ฒญ์„ ๋ฐ›์€ ํ›„ ๊ฒฐ๊ณผ๋ฅผ gitlab.com์— ๋ฐฐํฌํ•˜๋Š” ๋ฐ ๊ฑธ๋ฆฌ๋Š” ์‹œ๊ฐ„)๋ฅผ ํ˜„์žฌ 50์‹œ๊ฐ„์—์„œ 8์‹œ๊ฐ„์œผ๋กœ ์ค„์—ฌ์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์ œ๊ณตํŒ€์€ gitlab.com์„ Kubernetes ๊ธฐ๋ฐ˜ ์ธํ”„๋ผ๋กœ ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜ํ•˜๋Š” ์ž‘์—…๋„ ์ง„ํ–‰ ์ค‘์ž…๋‹ˆ๋‹ค.

ํŽธ์ง‘์ž์˜ n.b.: ์ด๋ฏธ ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ๊ธฐ์ˆ ์— ๋Œ€ํ•ด ๋“ค์–ด๋ดค์ง€๋งŒ(๋ฌผ๋ก  ์•Œ๊ณ  ๊ณ„์‹œ๋ฆฌ๋ผ ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค), ์•„์ง ์†์œผ๋กœ ๋งŒ์ ธ๋ณด์ง€ ์•Š์œผ์…จ๋‹ค๋ฉด ์˜จ๋ผ์ธ ์ง‘์ค‘ ๊ฐ•์ขŒ์— ์ฐธ์—ฌํ•ด ๋ณด์‹œ๊ธฐ๋ฅผ ์ถ”์ฒœ๋“œ๋ฆฝ๋‹ˆ๋‹ค. ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ๋ฒ ์ด์Šค, 28์›” 30-XNUMX์ผ์— ๊ฐœ์ตœ๋˜๋ฉฐ, ์ฟ ๋ฒ„๋„คํ‹ฐ์Šค ๋ฉ”๊ฐ€14์›” 16~XNUMX์ผ์— ๊ฐœ์ตœ๋ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด ์ž์‹ ์žˆ๊ฒŒ ๊ธฐ์ˆ ์„ ํƒ์ƒ‰ํ•˜๊ณ  ์ž‘์—…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด๋Š” ๋™์ผํ•œ ๋ชฉํ‘œ๋ฅผ ์ถ”๊ตฌํ•˜๋Š” ๋‘ ๊ฐ€์ง€ ์ ‘๊ทผ ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. ์ฆ‰, gitlab.com๊ณผ ํ•ด๋‹น ์‹œ์„ค์˜ ํด๋ผ์ด์–ธํŠธ ๋ชจ๋‘์—๊ฒŒ ๋น ๋ฅธ ์—…๋ฐ์ดํŠธ ์ œ๊ณต์ž…๋‹ˆ๋‹ค.

์šฐ๋ฆฌ์—๊ฒŒ ์–ด๋–ค ์•„์ด๋””์–ด๋‚˜ ์ถ”์ฒœ์ด ์žˆ๋‚˜์š”?

๋ˆ„๊ตฌ๋‚˜ GitLab์— ๊ธฐ์—ฌํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ ๋…์ž๋“ค์˜ ํ”ผ๋“œ๋ฐฑ์„ ํ™˜์˜ํ•ฉ๋‹ˆ๋‹ค. ์ €ํฌ ๋ฐฐ์†กํŒ€์— ๋Œ€ํ•œ ์•„์ด๋””์–ด๊ฐ€ ์žˆ์œผ์‹œ๋ฉด ์ฃผ์ €ํ•˜์ง€ ๋งˆ์„ธ์š”. ์š”์ฒญ์„ ์ƒ์„ฑํ•˜๋‹ค ํ‘œ์‹œ๋œ team: Delivery.

์ถœ์ฒ˜ : habr.com

์ฝ”๋ฉ˜ํŠธ๋ฅผ ์ถ”๊ฐ€