--- id: P-REINFORCE-AUTO-057C1E category: "10_Wiki/๐Ÿ’ก Topics/Programming & Language" confidence_score: 0.90 tags: [auto-reinforced] last_reinforced: 2026-04-20 github_commit: "[P-Reinforce] Continuous Worker - CI_CD ํŒŒ์ดํ”„๋ผ์ธ" --- # [[CI_CD แ„‘แ…กแ„‹แ…ตแ„‘แ…ณแ„…แ…กแ„‹แ…ตแ†ซ|CI_CD ํŒŒ์ดํ”„๋ผ์ธ]] ## ๐Ÿ“Œ ํ•œ ์ค„ ํ†ต์ฐฐ (The Karpathy Summary) > CI/CD ํŒŒ์ดํ”„๋ผ์ธ์€ ์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ์ˆ˜๋ช… ์ฃผ๊ธฐ(SDLC)์—์„œ ์ฝ”๋“œ์˜ ํ†ตํ•ฉ, ํ…Œ์ŠคํŠธ ๋ฐ ๋ฐฐํฌ๋ฅผ ์ž๋™ํ™”ํ•˜๋Š” ์›Œํฌํ”Œ๋กœ์šฐ์ž…๋‹ˆ๋‹ค [1-3]. ์ด ํŒŒ์ดํ”„๋ผ์ธ์—๋Š” ์ •์  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ณด์•ˆ ํ…Œ์ŠคํŠธ(SAST) ๋ฐ ์ž๋™ํ™”๋œ ์ฝ”๋“œ ๋ฆฌ๋ทฐ ๋„๊ตฌ๋“ค์ด ํ†ตํ•ฉ๋˜์–ด, ์ฝ”๋“œ๊ฐ€ ํ”„๋กœ๋•์…˜ ํ™˜๊ฒฝ์— ๋„๋‹ฌํ•˜๊ธฐ ์ „์— ๋ณด์•ˆ ์ทจ์•ฝ์ , ๋ฒ„๊ทธ ๋ฐ ์Šคํƒ€์ผ ์œ„๋ฐ˜์„ ์กฐ๊ธฐ์— ๋ฐœ๊ฒฌํ•ฉ๋‹ˆ๋‹ค [3-6]. ๊ฒฐ๊ณผ์ ์œผ๋กœ ์กฐ์ง์€ ๊ฐœ๋ฐœ ์†๋„๋ฅผ ๋Šฆ์ถ”์ง€ ์•Š์œผ๋ฉด์„œ๋„ ๋ณด์•ˆ์„ ๊ฐ•ํ™”ํ•˜๊ณ  ๋†’์€ ์†Œํ”„ํŠธ์›จ์–ด ํ’ˆ์งˆ ๊ธฐ์ค€์„ ์ผ๊ด€๋˜๊ฒŒ ์ ์šฉํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค [7-9]. ## ๐Ÿ“– ๊ตฌ์กฐํ™”๋œ ์ง€์‹ (Synthesized Content) - **์ •์  ๋ถ„์„ ๋ฐ ๋ณด์•ˆ ๋„๊ตฌ์˜ ํ†ตํ•ฉ:** CI/CD ํŒŒ์ดํ”„๋ผ์ธ์€ SonarQube, Snyk, CodeQL, Qodana, Semgrep๊ณผ ๊ฐ™์€ SAST ๋ฐ ์ฝ”๋“œ ๋ฆฌ๋ทฐ ๋„๊ตฌ๋“ค์„ ํ†ตํ•ฉํ•˜๋Š” ํ•ต์‹ฌ ๋‹จ๊ณ„์ž…๋‹ˆ๋‹ค [3, 4, 7, 10, 11]. ์ด ๋„๊ตฌ๋“ค์€ ํŒŒ์ดํ”„๋ผ์ธ ์‹คํ–‰ ์ค‘ ์ €์žฅ๋œ ์†Œ์Šค ์ฝ”๋“œ๋ฅผ ์Šค์บ”ํ•˜์—ฌ ๋…ผ๋ฆฌ์  ๊ฒฐํ•จ, ๋ณด์•ˆ ์ทจ์•ฝ์  ๋ฐ ์ฝ”๋“œ ๋ƒ„์ƒˆ(code smells)๋ฅผ ๊ฐœ๋ฐœ ์ดˆ๊ธฐ ๋‹จ๊ณ„์—์„œ ์‹๋ณ„ํ•ฉ๋‹ˆ๋‹ค [1, 2, 12]. - **ํ’ˆ์งˆ ๊ฒŒ์ดํŠธ(Quality Gates)๋ฅผ ํ†ตํ•œ ํ†ต์ œ:** CI/CD ํŒŒ์ดํ”„๋ผ์ธ ๋‚ด์— ํ†ตํ•ฉ๋œ ๋ถ„์„ ๋„๊ตฌ๋“ค์€ ํ’€ ๋ฆฌํ€˜์ŠคํŠธ(Pull Request)๋‚˜ ๋นŒ๋“œ ๊ณผ์ •์—์„œ 'ํ’ˆ์งˆ ๊ฒŒ์ดํŠธ' ์—ญํ• ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค [13-16]. ์‹ฌ๊ฐํ•œ ๋ณด์•ˆ ์ทจ์•ฝ์ ์ด๋‚˜ ํ’ˆ์งˆ ๊ธฐ์ค€์— ๋ฏธ๋‹ฌํ•˜๋Š” ์ฝ”๋“œ๊ฐ€ ๋ฐœ๊ฒฌ๋  ๊ฒฝ์šฐ, ํŒŒ์ดํ”„๋ผ์ธ์€ ์ž๋™์œผ๋กœ ๋นŒ๋“œ๋ฅผ ์‹คํŒจ ์ฒ˜๋ฆฌํ•˜๊ฑฐ๋‚˜ ๋ณ‘ํ•ฉ(merge)์„ ์ฐจ๋‹จํ•˜์—ฌ ํ”„๋กœ๋•์…˜ ํ™˜๊ฒฝ์„ ๋ณดํ˜ธํ•ฉ๋‹ˆ๋‹ค [9, 17-20]. - **์‹œํ”„ํŠธ ๋ ˆํ”„ํŠธ(Shift-Left) ๋ณด์•ˆ ์‹คํ˜„:** CI/CD ํŒŒ์ดํ”„๋ผ์ธ์— ์ฝ”๋“œ ๊ฒ€์‚ฌ๊ธฐ๋ฅผ ๊ตฌ์ถ•ํ•˜๋Š” ๊ฒƒ์€ ๊ฐœ๋ฐœ ์ฃผ๊ธฐ ์ดˆ๊ธฐ์— ๋ณด์•ˆ์„ ์ ๊ฒ€ํ•˜๋Š” '์‹œํ”„ํŠธ ๋ ˆํ”„ํŠธ' ์ ‘๊ทผ ๋ฐฉ์‹์˜ ๋Œ€ํ‘œ์ ์ธ ๋ชจ๋ฒ” ์‚ฌ๋ก€์ž…๋‹ˆ๋‹ค [3, 6, 8, 9]. ์ทจ์•ฝ์ ์ด ์šด์˜ ํ™˜๊ฒฝ์— ๋„๋‹ฌํ•˜๊ธฐ ์ „์ธ ํŒŒ์ดํ”„๋ผ์ธ ๋‹จ๊ณ„์—์„œ ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•จ์œผ๋กœ์จ ๋ฌธ์ œ ์ˆ˜์ •์— ๋“œ๋Š” ๋น„์šฉ๊ณผ ์‹œ๊ฐ„์„ ํฌ๊ฒŒ ์ค„์ผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค [3, 9, 21]. - **๋กœ์ปฌ ๊ฒ€์ฆ ๋„๊ตฌ์™€์˜ ์ƒํ˜ธ ๋ณด์™„:** ๊ฐœ๋ฐœ์ž๊ฐ€ ๋กœ์ปฌ์—์„œ ์‚ฌ์šฉํ•˜๋Š” Git Hook(์˜ˆ: Husky ๋ฐ lint-staged)์ด ์ฝ”๋“œ๋ฅผ ์ปค๋ฐ‹ํ•˜๊ธฐ ์ „ 1์ฐจ์ ์ธ ๋ฐฉ์–ด์„  ์—ญํ• ์„ ํ•œ๋‹ค๋ฉด, CI/CD ํŒŒ์ดํ”„๋ผ์ธ์€ ์ตœ์ข…์ ์ธ ๊ถŒํ•œ์„ ๊ฐ€์ง„ ์•ˆ์ „๋ง ์—ญํ• ์„ ํ•ฉ๋‹ˆ๋‹ค [22-24]. ๊ฐœ๋ฐœ์ž๊ฐ€ ๋กœ์ปฌ ๊ฒ€์‚ฌ๋ฅผ ์šฐํšŒํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ€๋Šฅ์„ฑ์ด ์žˆ๊ธฐ ๋•Œ๋ฌธ์—, ํŒŒ์ดํ”„๋ผ์ธ์—์„œ ์ „์ฒด ๋ฆฐํŒ…, ํ…Œ์ŠคํŠธ ๋„๊ตฌ ์‹คํ–‰, ํƒ€์ž… ๊ฒ€์‚ฌ ๋ฐ ๋นŒ๋“œ ๊ฒ€์ฆ์„ ์—„๊ฒฉํ•˜๊ฒŒ ์žฌ์‹คํ–‰ํ•˜๋Š” ๊ฒƒ์ด ํ•„์ˆ˜์ ์ž…๋‹ˆ๋‹ค [23, 25-27]. ## โš ๏ธ ๋ชจ์ˆœ ๋ฐ ์—…๋ฐ์ดํŠธ (Contradictions & RL Update) - **๊ณผ๊ฑฐ ๋ฐ์ดํ„ฐ์™€์˜ ์ถฉ๋Œ:** ์ž๋™ํ™” ์—”์ง„์— ์˜ํ•ด ๋งคํ•‘๋œ ์ง€์‹์œผ๋กœ, ์ถ”ํ›„ ์ •๋ฐ€ ๊ฒ€์ฆ ํ•„์š”. - **์ •์ฑ… ๋ณ€ํ™”:** Programming & Language ๋ถ„์•ผ์˜ ์ž๋™ ์ž์‚ฐํ™” ์ˆ˜ํ–‰. ## ๐Ÿ”— ์ง€์‹ ์—ฐ๊ฒฐ (Graph) - **Related Topics:** ์ž๋™ํ™”๋œ ์ฝ”๋“œ ๋ฆฌ๋ทฐ(Automated Code Review), [[แ„Œแ…ฅแ†ผแ„Œแ…ฅแ†จ แ„‹แ…ขแ„‘แ…ณแ†ฏแ„…แ…ตแ„แ…ฆแ„‹แ…ตแ„‰แ…งแ†ซ แ„‡แ…ฉแ„‹แ…กแ†ซ แ„แ…ฆแ„‰แ…ณแ„แ…ณ(SAST)|์ •์  ์• ํ”Œ๋ฆฌ์ผ€์ด์…˜ ๋ณด์•ˆ ํ…Œ์ŠคํŠธ(SAST)]], ํ’ˆ์งˆ ๊ฒŒ์ดํŠธ(Quality Gates), [[แ„‰แ…ตแ„‘แ…ณแ„แ…ณ แ„…แ…ฆแ„‘แ…ณแ„แ…ณ(Shift-Left)|์‹œํ”„ํŠธ ๋ ˆํ”„ํŠธ(Shift-Left)]] - **Projects/Contexts:** [[แ„‰แ…ฉแ„‘แ…ณแ„แ…ณแ„‹แ…ฐแ„‹แ…ฅ แ„€แ…ขแ„‡แ…กแ†ฏ แ„‰แ…ฎแ„†แ…งแ†ผ แ„Œแ…ฎแ„€แ…ต (SDLC)|์†Œํ”„ํŠธ์›จ์–ด ๊ฐœ๋ฐœ ์ˆ˜๋ช… ์ฃผ๊ธฐ(SDLC)]], ๋ฐ๋ธŒ์„น์˜ต์Šค(DevSecOps), ํ’€ ๋ฆฌํ€˜์ŠคํŠธ(Pull Request) ์›Œํฌํ”Œ๋กœ์šฐ - **Contradictions/Notes:** CI/CD ํŒŒ์ดํ”„๋ผ์ธ์— SonarQube Cloud๋‚˜ ๋Œ€๊ทœ๋ชจ SAST ๋„๊ตฌ๋ฅผ ํ†ตํ•ฉํ•˜๋ฉด ์ฝ”๋“œ ํ’ˆ์งˆ๊ณผ ๋ณด์•ˆ์„ ๊ฐ•๋ ฅํ•˜๊ฒŒ ํ†ต์ œํ•  ์ˆ˜ ์žˆ์ง€๋งŒ, ์ผ๋ถ€ ํ™˜๊ฒฝ์—์„œ๋Š” ํŒŒ์ดํ”„๋ผ์ธ ์‹คํ–‰ ์‹œ๊ฐ„์ด ์ถ”๊ฐ€๋กœ ์†Œ์š”๋  ์ˆ˜ ์žˆ๋‹ค๋Š” ๋‹จ์ ์ด ์กด์žฌํ•ฉ๋‹ˆ๋‹ค [5, 17, 28]. ๋˜ํ•œ, ๋กœ์ปฌ Git Hook ํ™˜๊ฒฝ์ด ํšจ์œจ์ ์ด๋”๋ผ๋„ CI ํ™˜๊ฒฝ์—์„œ์˜ ์ „์ฒด ๊ฒ€์ฆ ๊ณผ์ •์„ ๊ฒฐ์ฝ” ๋Œ€์ฒดํ•  ์ˆ˜ ์—†์œผ๋ฉฐ, ๋ฐ˜๋“œ์‹œ CI ํŒŒ์ดํ”„๋ผ์ธ์˜ ํ›„์† ๊ฒ€์ฆ์ด ๋™๋ฐ˜๋˜์–ด์•ผ ํ•œ๋‹ค๊ณ  ๊ฐ•์กฐ๋ฉ๋‹ˆ๋‹ค [23, 24, 29]. --- *Last updated: 2026-04-18* - Raw Source: 00_Raw/2026-04-20/CI_CD ํŒŒ์ดํ”„๋ผ์ธ.md ---