giip
SES Proposal
2 min read

GitHub ์›Œํฌํ”Œ๋กœ์šฐ ์—ฐ๋™ ๊ฐ€์ด๋“œ

GIIP ํ”Œ๋žซํผ๊ณผ GitHub ์ €์žฅ์†Œ๋ฅผ ์—ฐ๊ฒฐํ•˜์—ฌ ์†Œ์Šค ์ฝ”๋“œ ๋ณ€๊ฒฝ ์‚ฌํ•ญ์„ ๋ชจ๋‹ˆํ„ฐ๋งํ•˜๊ณ  ์ธํ”„๋ผ ์ž‘์—…๊ณผ ์—ฐ๋™ํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์•ˆ๋‚ดํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ”„ GitHub ์›Œํฌํ”Œ๋กœ์šฐ ํŽ˜์ด์ง€๋กœ ์ด๋™ โ†’

๐Ÿ“‹ ๊ฐœ์š”

GitHub ์›Œํฌํ”Œ๋กœ์šฐ ์—ฐ๋™์„ ํ†ตํ•ด ์‹œ์Šคํ…œ ๊ด€๋ฆฌ์ž์™€ ๊ฐœ๋ฐœ์ž๋Š” ์ธํ”„๋ผ์˜ ๋ณ€ํ™”๊ฐ€ ์–ด๋–ค ์ฝ”๋“œ ๋ณ€๊ฒฝ์—์„œ ๊ธฐ์ธํ–ˆ๋Š”์ง€ ์‰ฝ๊ฒŒ ํŒŒ์•…ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. GIIP ๋‚ด์—์„œ ์ง์ ‘ GitHub์˜ ์ปค๋ฐ‹ ์ด๋ ฅ๊ณผ Pull Request ์ƒํƒœ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ์–ด ์—…๋ฌด ์ปจํ…์ŠคํŠธ ์ „ํ™˜์„ ์ตœ์†Œํ™”ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ” ์ฃผ์š” ๊ธฐ๋Šฅ

1. ์ €์žฅ์†Œ(Repository) ์—ฐ๊ฒฐ

  • OAuth ์ธ์ฆ: GitHub ๊ณ„์ •์„ ์—ฐ๋™ํ•˜์—ฌ ์ ‘๊ทผ ๊ฐ€๋Šฅํ•œ ์ €์žฅ์†Œ ๋ชฉ๋ก์„ ๊ฐ€์ ธ์˜ต๋‹ˆ๋‹ค.
  • ํ”„๋กœ์ ํŠธ ๋งตํ•‘: ํŠน์ • GitHub Repo๋ฅผ GIIP ๋‚ด์˜ ํ”„๋กœ์ ํŠธ์™€ ์—ฐ๊ฒฐํ•˜์—ฌ ์ž์‚ฐ(์„œ๋ฒ„ ๋“ฑ)๊ณผ ์ฝ”๋“œ๋ฅผ ๋งค์นญ์‹œํ‚ต๋‹ˆ๋‹ค.

2. ์‹ค์‹œ๊ฐ„ Webhook ์•Œ๋ฆผ

  • ์ด๋ฒคํŠธ ์ˆ˜์ง‘: Push, Pull Request, Release ๋“ฑ์˜ ์ด๋ฒคํŠธ๊ฐ€ ๋ฐœ์ƒํ•˜๋ฉด GIIP ์ด์Šˆ ๊ด€๋ฆฌ ์‹œ์Šคํ…œ์— ์ž๋™์œผ๋กœ ๊ธฐ๋ก๋ฉ๋‹ˆ๋‹ค.
  • ์ž๋™ ์ด์Šˆ ์—…๋ฐ์ดํŠธ: ํŠน์ • ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€์— GIIP ์ด์Šˆ ๋ฒˆํ˜ธ๋ฅผ ํฌํ•จํ•˜๋ฉด(์˜ˆ: fix #123), ํ•ด๋‹น ์ด์Šˆ์˜ ์ƒํƒœ๊ฐ€ ์ž๋™์œผ๋กœ ์—…๋ฐ์ดํŠธ๋ฉ๋‹ˆ๋‹ค.

3. CI/CD ๋ฐ ์ฝ”๋“œ ํ’ˆ์งˆ ์—ฐ๋™

  • Action ์ƒํƒœ ํ™•์ธ: GitHub Actions์˜ ๋นŒ๋“œ ๋ฐ ๋ฐฐํฌ ์„ฑ๊ณต ์—ฌ๋ถ€๋ฅผ GIIP ๋Œ€์‹œ๋ณด๋“œ์—์„œ ์ฆ‰์‹œ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
  • ๋ณด์•ˆ ์Šค์บ” ๊ฒฐ๊ณผ: ์ฝ”๋“œ ๋‚ด ๋ณด์•ˆ ์ทจ์•ฝ์  ์Šค์บ” ๊ฒฐ๊ณผ(Dependabot ๋“ฑ)๋ฅผ GIIP ๋ณด์•ˆ ์„ผํ„ฐ์™€ ๊ณต์œ ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ› ๏ธ ์„ค์ • ๋ฐฉ๋ฒ•

  1. GIIP [ํ™˜๊ฒฝ ์„ค์ •] > [GitHub ์—ฐ๋™] ๋ฉ”๋‰ด๋กœ ์ด๋™ํ•ฉ๋‹ˆ๋‹ค.
  2. [Connect GitHub] ๋ฒ„ํŠผ์„ ๋ˆŒ๋Ÿฌ ๊ถŒํ•œ์„ ์Šน์ธํ•ฉ๋‹ˆ๋‹ค.
  3. ์—ฐ๋™ํ•  ์ €์žฅ์†Œ๋ฅผ ์„ ํƒํ•˜๊ณ  [ํ”„๋กœ์ ํŠธ ํ• ๋‹น]์„ ์™„๋ฃŒํ•ฉ๋‹ˆ๋‹ค.
  4. ํ•„์š” ์‹œ Webhook URL์„ ๋ณต์‚ฌํ•˜์—ฌ GitHub Repo ์„ค์ •์— ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

๐Ÿ’ก ํ™œ์šฉ ํŒ

  • ์žฅ์•  ์›์ธ ์ถ”์ : ์„œ๋ฒ„ ๋ถ€ํ•˜๊ฐ€ ๊ธ‰์ฆํ•œ ์‹œ์ ์— ์–ด๋–ค ์ฝ”๋“œ๊ฐ€ ๋จธ์ง€๋˜์—ˆ๋Š”์ง€ GitHub ์ด๋ ฅ ํƒญ์—์„œ ์ฆ‰์‹œ ๋Œ€์กฐํ•ด ๋ณด์„ธ์š”.
  • ํ˜‘์—… ๊ฐ•ํ™”: ์ธํ”„๋ผ ๋ณ€๊ฒฝ์ด ํ•„์š”ํ•œ PR์˜ ๊ฒฝ์šฐ, GIIP์˜ ์—์ด์ „ํŠธ ์ž‘์—… ๊ฒฐ๊ณผ ๋งํฌ๋ฅผ PR ์ฝ”๋ฉ˜ํŠธ์— ๋‚จ๊ฒจ ๋ฆฌ๋ทฐ ํšจ์œจ์„ ๋†’์ด์„ธ์š”.

API ์ฐธ์กฐ

์ด ๊ธฐ๋Šฅ์˜ API ์ƒ์„ธ ์‚ฌ์–‘์€ ๋ณ„๋„ ๊ฐ€์ด๋“œ๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

๐Ÿ“˜ GitHub ์—ฐ๋™ API ๊ฐ€์ด๋“œ

๋ฌธ์ œ ํ•ด๊ฒฐ

์ฆ์ƒ์›์ธํ•ด๊ฒฐ
์—ฐ๋™ํ•  ์ €์žฅ์†Œ ๋ชฉ๋ก์ด ๋‚˜ํƒ€๋‚˜์ง€ ์•Š๋Š”๋‹คGitHub OAuth ์ธ์ฆ ๋˜๋Š” ๊ถŒํ•œ ์Šน์ธ์ด ์™„๋ฃŒ๋˜์ง€ ์•Š์Œ[Connect GitHub] ๋ฒ„ํŠผ์„ ๋ˆŒ๋Ÿฌ ๊ถŒํ•œ์„ ๋‹ค์‹œ ์Šน์ธํ•ฉ๋‹ˆ๋‹ค.
์ปค๋ฐ‹ํ•ด๋„ GIIP ์ด์Šˆ ์ƒํƒœ๊ฐ€ ์ž๋™์œผ๋กœ ๋ณ€๊ฒฝ๋˜์ง€ ์•Š๋Š”๋‹ค์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€์— ์ด์Šˆ ๋ฒˆํ˜ธ(์˜ˆ: fix #123)๊ฐ€ ํฌํ•จ๋˜์ง€ ์•Š์Œ์ปค๋ฐ‹ ๋ฉ”์‹œ์ง€์— ์˜ฌ๋ฐ”๋ฅธ ํ˜•์‹์œผ๋กœ ์ด์Šˆ ๋ฒˆํ˜ธ๋ฅผ ํฌํ•จ์‹œ์ผœ ๋‹ค์‹œ ์ปค๋ฐ‹ํ•ฉ๋‹ˆ๋‹ค.
Push/PR ์ด๋ฒคํŠธ๊ฐ€ GIIP์— ๊ธฐ๋ก๋˜์ง€ ์•Š๋Š”๋‹คGitHub Repo์— Webhook URL์ด ๋“ฑ๋ก๋˜์ง€ ์•Š์Œ์„ค์ • ํ™”๋ฉด์˜ Webhook URL์„ ๋ณต์‚ฌํ•ด GitHub Repo ์„ค์ •์— ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.
GitHub Actions ์ƒํƒœ๊ฐ€ ๋Œ€์‹œ๋ณด๋“œ์— ๋ณด์ด์ง€ ์•Š๋Š”๋‹ค์ €์žฅ์†Œ๊ฐ€ GIIP ํ”„๋กœ์ ํŠธ์— ํ• ๋‹น๋˜์ง€ ์•Š์Œ์ €์žฅ์†Œ ์„ ํƒ ํ›„ [ํ”„๋กœ์ ํŠธ ํ• ๋‹น]์„ ์™„๋ฃŒํ•ฉ๋‹ˆ๋‹ค.

๋ฒ„์ „: 1.0 ์ตœ์ข… ์—…๋ฐ์ดํŠธ: 2026-03-19 ์†Œ์Šค ํŒŒ์ผ: giipv3/public/help/github-workflow.ko.md