๐Ÿ“บ ์˜์ƒ ์š”์•ฝ ์•„์นด์ด๋ธŒ
โ† ๋ชฉ๋ก

Rebuilding CI for AI-Scale Commit Volume โ€” Gautam Korlam, SonarSource

AI Engineer ยท 2026-10-14 23:00 ยท 19:19

ํ•œ ์ค„ ํ•ต์‹ฌ

์—์ด์ „ํŠธ๊ฐ€ ์ปค๋ฐ‹์„ ๋Œ€๋Ÿ‰ ์ƒ์„ฑํ•˜๋Š” ์‹œ๋Œ€์—๋Š” CI, ๋ฆฌ๋ทฐ, ์Šน์ธ, ๊ฐ์‚ฌ ๊ธฐ๋ก์„ ์‚ฌ๋žŒ ์†๋„์— ๋งž์ถ˜ ๋ฐฉ์‹์—์„œ ๋ฒ—์–ด๋‚˜ ๋” ๋น ๋ฅธ ๊ฒ€์ฆ๊ณผ ์ •์ฑ… ์ง‘ํ–‰, ์ฆ๊ฑฐ ๋ณด์กด์„ ํ•จ๊ป˜ ์„ค๊ณ„ํ•ด์•ผ ํ•œ๋‹ค.

์‹œ๊ฐ„๋ณ„ ์š”์•ฝ

  1. 0:00
    ์ฝ”๋”ฉ ์—์ด์ „ํŠธ๊ฐ€ ๋ณ‘๋ชฉ์„ CI๋กœ ์˜ฎ๊ธด๋‹ค ์ฝ”๋”ฉ ์—์ด์ „ํŠธ๊ฐ€ ์ฝ”๋“œ๋ฅผ ๋Œ€๋Ÿ‰์œผ๋กœ ์ƒ์„ฑํ•˜๋ฉด์„œ ๋ณ‘๋ชฉ์€ ์ž‘์„ฑ ๋‹จ๊ณ„๊ฐ€ ์•„๋‹ˆ๋ผ CI์™€ ๋จธ์ง€ ์ธํ”„๋ผ๋กœ ์ด๋™ํ•œ๋‹ค. ํŠนํžˆ ๊ทœ์ œ๊ฐ€ ๊ฐ•ํ•œ ์‚ฐ์—…์—์„œ๋Š” ๋น ๋ฅธ ์†๋„์™€ ํ•จ๊ป˜ ์ค€์ˆ˜ ๊ฐ€๋Šฅ์„ฑ๊ณผ ๊ฐ์‚ฌ ๊ฐ€๋Šฅ์„ฑ์„ ๋™์‹œ์— ํ™•๋ณดํ•ด์•ผ ํ•œ๋‹ค.
  2. 1:13
    ๋จธ์ง€ ์ „์— ์กฐํ•ฉ์„ ์‹œํ—˜ํ•˜๋Š” SubmitQueue ๋Œ€๊ทœ๋ชจ ๋ชจ๋…ธ๋ ˆํฌ์—์„œ๋Š” ๋ณ€๊ฒฝ์„ ํ•˜๋‚˜์”ฉ ์ง๋ ฌ๋กœ ๋จธ์ง€ํ•˜๋ฉด ๋„ˆ๋ฌด ๋А๋ฆฌ๊ณ , ๋™์‹œ์— ๋‹ค ์—ด์–ด๋‘๋ฉด trunk๊ฐ€ ์‰ฝ๊ฒŒ ๊นจ์ง„๋‹ค. ์ด๋ฅผ ํ•ด๊ฒฐํ•˜๊ธฐ ์œ„ํ•ด ๋“ค์–ด์˜ค๋Š” ์ปค๋ฐ‹ ์กฐํ•ฉ์„ ๋ณ‘๋ ฌ๋กœ ์‹œํ—˜ํ•˜๊ณ , ๊นจ์งˆ ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ๋Š” PR์€ ํ์—์„œ ๋Œ๋ ค๋ณด๋‚ด๋ฉด์„œ trunk๋ฅผ ๊นจ๋—ํ•˜๊ฒŒ ์œ ์ง€ํ•œ๋‹ค.
  3. 2:53
    ์‚ฌ๋žŒ ์†๋„๋กœ ๋งŒ๋“  ํ์˜ ํ•œ๊ณ„ ๋ฆฌ๋ทฐ์™€ CI ํ๋Š” ์›๋ž˜ ์‚ฌ๋žŒ์ด ํ•˜๋ฃจ ๋ช‡ ๋ฒˆ ๋ณ€๊ฒฝํ•˜๋˜ ์†๋„์— ๋งž์ถฐ์ ธ ์žˆ์–ด, ์—์ด์ „ํŠธ๊ฐ€ ์ˆ˜์‹ญ ๊ฐœ์˜ PR์„ ํ•œ๊บผ๋ฒˆ์— ๋งŒ๋“œ๋Š” ํ™˜๊ฒฝ์—์„œ๋Š” ๊ธˆ์„ธ ํฌํ™”๋œ๋‹ค. ๊ทธ ๊ฒฐ๊ณผ CI์™€ ๋ฆฌ๋ทฐ๊ฐ€ ์ค‘์•™ ๋ณ‘๋ชฉ์ด ๋˜์–ด ์ „์ฒด ์†Œํ”„ํŠธ์›จ์–ด ํŒฉํ† ๋ฆฌ์˜ ์ฒ˜๋ฆฌ๋Ÿ‰์ด ๊ธ‰๊ฒฉํžˆ ๋–จ์–ด์ง„๋‹ค.
  4. 5:24
    ์†Œํ”„ํŠธ์›จ์–ด ํŒฉํ† ๋ฆฌ์™€ ๋ฐ˜๋ณต์  ์ˆ˜๋ฆฌ ๋ฃจํ”„ ์‚ฌ์–‘๋งŒ ์ธ๊ฐ„์ด ๊ด€๋ฆฌํ•˜๊ณ  ๋‚˜๋จธ์ง€๋ฅผ ์—์ด์ „ํŠธ๊ฐ€ ์ž‘์„ฑํ•˜๋Š” ์†Œํ”„ํŠธ์›จ์–ด ํŒฉํ† ๋ฆฌ๋„ ์ธ๊ฐ„ ์†๋„๋กœ ์„ค๊ณ„๋œ ๊ณต์ • ์œ„์—์„œ๋Š” ๋ณ‘๋ชฉ์ด ์ƒ๊ธด๋‹ค. ๋นŒ๋“œ ์žฌ์‹คํ–‰, ๋ถˆ์•ˆ์ •ํ•œ ํ…Œ์ŠคํŠธ, ๋ฆฌ๋ทฐ ์ ์ฒด, ์Šน์ธ ํ˜•์‹ํ™”, ๋กœ๊ทธ ๋งŒ๋ฃŒ ๋ฌธ์ œ๊นŒ์ง€ ๊ฒน์น˜๊ธฐ ๋•Œ๋ฌธ์— ๊ณต์ • ์ž์ฒด๋ฅผ ๋‹ค์‹œ ์„ค๊ณ„ํ•ด์•ผ ํ•œ๋‹ค.
  5. 7:08
    CI ์‹คํŒจ์™€ ํ”ผ๋“œ๋ฐฑ ๋น„์šฉ PR์˜ 13%์—์„œ CI ์‹คํŒจ๊ฐ€ ๊ธฐ๋ก๋  ์ •๋„๋กœ, ์‹คํŒจ๋Š” ๊ฐœ๋ฐœ์ž์™€ ์—์ด์ „ํŠธ์˜ ์™•๋ณต ์ˆ˜์ • ๋น„์šฉ์„ ํฌ๊ฒŒ ๋งŒ๋“ ๋‹ค. CI๊ฐ€ ๋…น์ƒ‰์ด์–ด์•ผ ๋ฆฌ๋ทฐ๊ฐ€ ์‹œ์ž‘๋˜๋Š” ๊ตฌ์กฐ์—์„œ๋Š” ๊ฒ€์ฆ๊ณผ ๋ฆฌ๋ทฐ๊ฐ€ ์ง๋ ฌํ™”๋˜์–ด ์ „์ฒด ๋ฆฌ๋“œํƒ€์ž„์ด ๋” ๊ธธ์–ด์ง„๋‹ค.
  6. 8:11
    ์ฆ๋ถ„ ๋นŒ๋“œ, ์บ์‹ฑ, ๋ณ‘๋ ฌ ์ฒ˜๋ฆฌ ๊ฐ€์žฅ ํšจ๊ณผ์ ์ธ ๋Œ€์‘์€ CI๋ฅผ ์ตœ๋Œ€ํ•œ ๋น ๋ฅด๊ฒŒ ๋งŒ๋“ค๊ณ , ๋น„์‹ผ ๊ฒ€์‚ฌ๋Š” ๊ฐ€๋Šฅํ•œ ํ•œ ๋’ค๋กœ ๋ฏธ๋ฃจ๋ฉฐ, ์บ์‹ฑ๊ณผ ์ƒค๋”ฉ์œผ๋กœ ์ฆ๋ถ„ ๋นŒ๋“œ ๋น„์šฉ์„ ๋‚ฎ์ถ”๋Š” ๊ฒƒ์ด๋‹ค. ๋˜ํ•œ ์œ„ํ—˜๋„์— ๋”ฐ๋ผ ๋น ๋ฅธ AI ๋ฆฌ๋ทฐ์™€ ๋” ๊นŠ์€ ์‚ฌ๋žŒ ๋ฆฌ๋ทฐ๋ฅผ ๋‚˜๋ˆ„๊ณ , ์ •์ฑ… ์œ„๋ฐ˜์€ CI ์ดํ›„๊ฐ€ ์•„๋‹ˆ๋ผ ๋” ์•ž๋‹จ์—์„œ ์žก์•„์•ผ ํ•œ๋‹ค.
  7. 10:16
    CI๋ฅผ ๋„˜์–ด ์ •์ฑ…์„ ๊ฐ•์ œํ•˜๊ธฐ ์ปดํŒŒ์ผ์ด ํ†ต๊ณผํ–ˆ๋‹ค๊ณ  ํ•ด์„œ HIPPA๋‚˜ ๋‚ด๋ถ€ ๊ทœ์ • ๊ฐ™์€ ์ •์ฑ…์„ ๋งŒ์กฑํ•˜๋Š” ๊ฒƒ์€ ์•„๋‹ˆ๋ฏ€๋กœ, ๊ทœ์น™ ์ง‘ํ–‰์€ CI ๋ฐ–์—์„œ๋„ ์ด๋ค„์ ธ์•ผ ํ•œ๋‹ค. ์ •์ฑ…์ด ์‹ค์ œ๋กœ ์ ์šฉ๋˜์—ˆ์Œ์„ ๊ธฐ๋กํ•ด ๋‘์–ด์•ผ ๊ฐ์‚ฌ์™€ ์ค€์ˆ˜ ํ™•์ธ์— ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค.
  8. 13:28
    ์œ„ํ—˜๋„ ๊ธฐ๋ฐ˜ ๋จธ์ง€์™€ ์Šน์ธ ์ •์ฑ… ๋ฌธ์„œ ์ˆ˜์ •, dependency bump, ์ผ๋ถ€ ๋‚ด๋ถ€ ๋„๊ตฌ ๋ณ€๊ฒฝ์ฒ˜๋Ÿผ ๋‚ฎ์€ ์œ„ํ—˜์˜ ๋ณ€๊ฒฝ์€ ์ž๋™ ์Šน์ธ๊ณผ ์ž๋™ ๋จธ์ง€๊ฐ€ ๊ฐ€๋Šฅํ•˜๋‹ค. ๋ฐ˜๋Œ€๋กœ ๊ฒฐ์ œ๋‚˜ ๋ฏผ๊ฐ ์˜์—ญ์€ ์ธ๊ฐ„ ์Šน์ธ์ž๋ฅผ ์š”๊ตฌํ•˜๊ณ , ๋ณ€๊ฒฝํ•œ ์—์ด์ „ํŠธ๊ฐ€ ์ž๊ธฐ ๋ณ€๊ฒฝ์„ ์Šน์ธํ•˜์ง€ ๋ชปํ•˜๋„๋ก ์ œ๋กœ ํŠธ๋Ÿฌ์ŠคํŠธ ๊ธฐ์ค€์„ ์ ์šฉํ•ด์•ผ ํ•œ๋‹ค.
  9. 15:21
    ํ…Œ์ŠคํŠธ๋œ ์ปค๋ฐ‹, ์˜ˆ์™ธ ์ฒ˜๋ฆฌ, ๊ฐ์‚ฌ ์ฆ๊ฑฐ CI ๊ฒฐ๊ณผ๋งŒ ์ €์žฅํ•ด์„œ๋Š” ์‹œ๊ฐ„์ด ์ง€๋‚˜ ๋กœ๊ทธ๊ฐ€ ๋งŒ๋ฃŒ๋˜๋ฉด ๋ฌด์—‡์ด ๊ฒ€์ฆ๋˜์—ˆ๋Š”์ง€ ์ฆ๋ช…ํ•  ์ˆ˜ ์—†์œผ๋ฏ€๋กœ, PR์— ์›์ธ, ํ•ด๊ฒฐ ๋ฐฉ์‹, ์Šน์ธ์ž, ์˜ค๋ฒ„๋ผ์ด๋“œ ์‚ฌ์œ  ๊ฐ™์€ ์ฆ๊ฑฐ๋ฅผ ๋‚จ๊ฒจ์•ผ ํ•œ๋‹ค. ์ด๋ ‡๊ฒŒ ํ•ด์•ผ ์—์ด์ „ํŠธ๊ฐ€ ๋งŒ๋“  ๋ณ€๊ฒฝ๋„ ๋ˆ„๊ฐ€ ์–ด๋–ค ๊ทผ๊ฑฐ๋กœ ์Šน์ธํ–ˆ๊ณ  ์–ด๋–ค ํ…Œ์ŠคํŠธ๋ฅผ ํ†ต๊ณผํ–ˆ๋Š”์ง€ ์ถ”์ ํ•  ์ˆ˜ ์žˆ๋‹ค.

์‹ค๋ฌด ์ธ์‚ฌ์ดํŠธ

  • ์—์ด์ „ํŠธ ๋„์ž…์˜ ํ•ต์‹ฌ ๋ณ‘๋ชฉ์€ ์ฝ”๋“œ ์ƒ์„ฑ์ด ์•„๋‹ˆ๋ผ CIยท๋ฆฌ๋ทฐยท์Šน์ธยท๊ฐ์‚ฌ ๊ธฐ๋ก์˜ ์ฒ˜๋ฆฌ๋Ÿ‰์ด๋ฏ€๋กœ, ์ž๋™ํ™”๋Š” ์ž‘์„ฑ ๋„๊ตฌ๋ณด๋‹ค ๊ฒ€์ฆ ํŒŒ์ดํ”„๋ผ์ธ๋ถ€ํ„ฐ ์†๋ด์•ผ ํšจ๊ณผ๊ฐ€ ํฌ๋‹ค.
  • ๋‚ฎ์€ ์œ„ํ—˜ ๋ณ€๊ฒฝ์€ ์ž๋™ ์Šน์ธ์œผ๋กœ ํ˜๋ฆฌ๊ณ , ๋ฏผ๊ฐ ๋ณ€๊ฒฝ๋งŒ ์‚ฌ๋žŒ์—๊ฒŒ ์˜ฌ๋ฆฌ๋Š” ์œ„ํ—˜๋„ ๊ธฐ๋ฐ˜ ์ •์ฑ…์ด ๋Œ€๋Ÿ‰ ๋ณ€๊ฒฝ ์‹œ๋Œ€์˜ ๊ฐ€์žฅ ํ˜„์‹ค์ ์ธ ์šด์˜ ๋ฐฉ์‹์ด๋‹ค.
  • CI ๊ฒฐ๊ณผ ๊ทธ ์ž์ฒด๋ณด๋‹ค PR์— ๋‚จ๋Š” ๊ฒฐ์ • ๊ธฐ๋ก๊ณผ ํ•ด๊ฒฐ ์ด๋ ฅ์ด ์žฅ๊ธฐ์ ์œผ๋กœ ๋” ์ค‘์š”ํ•˜๋ฏ€๋กœ, ๊ฐ์‚ฌ ๊ฐ€๋Šฅ์„ฑ์€ ๋ณ„๋„ ๊ธฐ๋Šฅ์ด ์•„๋‹ˆ๋ผ ๊ฐœ๋ฐœ ํŒŒ์ดํ”„๋ผ์ธ์˜ ๊ธฐ๋ณธ ์š”๊ตฌ์‚ฌํ•ญ์œผ๋กœ ๋‹ค๋ค„์•ผ ํ•œ๋‹ค.