daadaadaah / codesoom-github-manage-bot

1 stars 0 forks source link

๐Ÿค– codesoom-github-manage-bot

๐ŸŽ ์†Œ๊ฐœ

๐Ÿค” ํ•ด๊ฒฐํ•˜๊ณ ์ž ํ–ˆ๋˜ ๋ฌธ์ œ

๐ŸŽ‰ ์„ฑ๊ณผ

๊ธฐ์กด ๋ฐฉ์‹

Discord Bot ์ด์šฉ ๋ฐฉ์‹

์ž‘์—… ํšจ์œจ ๊ณ„์‚ฐ

๐Ÿ‘ฉโ€๐Ÿ’ป ์‚ฌ์šฉ ๊ธฐ์ˆ 

๐Ÿ—“๏ธ ๊ธฐ๊ฐ„

โœ… ๊ธฐ๋Šฅ

๐Ÿš€ ๊ฐœ์„  ํฌ์ธํŠธ

1. ์„ฑ๋Šฅ์„ ํ–ฅ์ƒ์‹œํ‚ด์œผ๋กœ์จ UX ๊ฐœ์„ 

๐Ÿงจ [๋ฌธ์ œ]

๐Ÿšง [ํ•ด๊ฒฐ๊ณผ์ •]

  1. ๋จผ์ €, Github API์— PR์„ ์ผ๊ด„ Mergeํ•˜๋Š” API๊ฐ€ ์žˆ๋Š”์ง€ ๊ฒ€ํ† ํ–ˆ์Šต๋‹ˆ๋‹ค.
    • ์•„์‰ฝ๊ฒŒ๋„, Github API์—์„œ๋Š” PR์„ ์ผ๊ด„ Mergeํ•˜๋Š” API๋Š” ์—†์—ˆ์Šต๋‹ˆ๋‹ค.
  2. ๋‹ค์Œ์œผ๋กœ, ๋‹จ๊ฑด Merge API๋ฅผ JavaScript์˜ Promise API๋ฅผ ํ™œ์šฉํ•ด ๋น„๋™๊ธฐ์ ์œผ๋กœ ์ฒ˜๋ฆฌํ•˜๋Š” ๋ฐฉ๋ฒ•์„ ์ƒ๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค.
    • ์—ฌ๊ธฐ์„œ Promise.all๊ณผ Promise.allSettled ์ค‘ ์–ด๋Š ๊ฒƒ์„ ์‚ฌ์šฉํ• ์ง€ ๊ณ ๋ฏผํ–ˆ์Šต๋‹ˆ๋‹ค.
    • Promise.all : ์ฃผ์–ด์ง„ ๋ชจ๋“  ํ”„๋กœ๋ฏธ์Šค๊ฐ€ ์ดํ–‰๋˜๋ฉด ์™„๋ฃŒ๋˜๋ฉฐ, ํ•˜๋‚˜๋ผ๋„ ์‹คํŒจํ•˜๋ฉด ์ „์ฒด๊ฐ€ ์‹คํŒจ๋กœ ์ฒ˜๋ฆฌ๋ฉ๋‹ˆ๋‹ค.
    • Promise.allSettled : ์ฃผ์–ด์ง„ ๋ชจ๋“  ํ”„๋กœ๋ฏธ์Šค๊ฐ€ ์™„๋ฃŒ๋  ๋•Œ๊นŒ์ง€ ๊ธฐ๋‹ค๋ฆฌ๋ฉฐ, ๊ฐ ํ”„๋กœ๋ฏธ์Šค์˜ ์„ฑ๊ณต ๋˜๋Š” ์‹คํŒจ ์—ฌ๋ถ€์™€ ๊ด€๊ณ„์—†์ด ๊ฒฐ๊ณผ๋ฅผ ๋ฐฐ์—ด๋กœ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.
    • ์ˆ˜๊ฐ•์ƒ์˜ PR์ด ์„œ๋กœ ๊ด€๋ จ์ด ์—†๊ธฐ ๋•Œ๋ฌธ์—, ํ•˜๋‚˜๊ฐ€ ์‹คํŒจํ•˜๋”๋ผ๋„ ๋‹ค๋ฅธ ๊ฒƒ๋“ค์€ ์„ฑ๊ณต์‹œํ‚ค๋Š” ๊ฒƒ์ด ์ข‹์„ ๊ฒƒ ๊ฐ™์•„ Promise.allSettled๋ฅผ ์„ ํƒํ–ˆ์Šต๋‹ˆ๋‹ค.

โœจ [๊ฒฐ๊ณผ]

2. ์‚ฌ์šฉ์ž์—๊ฒŒ ์œ ์šฉํ•œ ์ •๋ณด๋ฅผ ์ œ๊ณตํ•จ์œผ๋กœ์จ UX ๊ฐœ์„ 

๐Ÿงจ [๋ฌธ์ œ]

๐Ÿšง [ํ•ด๊ฒฐ๊ณผ์ •]

โœจ [๊ฒฐ๊ณผ]