GitHub Apps ์ ๋ณด
GitHub Apps์(๋) GitHub์ ๊ธฐ๋ฅ์ ํ์ฅํ๋ ๋๊ตฌ์ ๋๋ค. GitHub Apps์(๋) GitHub์์ ๋ฌธ์ ์ด๊ธฐ, ๋์ด์ค๊ธฐ ์์ฒญ์ ๋ํ ์ฃผ์ ๋ฐ ํ๋ก์ ํธ ๊ด๋ฆฌ์ ๊ฐ์ ์์ ์ ์ํํ ์ ์์ต๋๋ค. GitHub์์ ๋ฐ์ํ๋ ์ด๋ฒคํธ๋ฅผ ๊ธฐ๋ฐ์ผ๋ก GitHub ์ธ๋ถ์์ ์์ ์ ์ํํ ์๋ ์์ต๋๋ค. ์๋ฅผ ๋ค์ด GitHub App์(๋) GitHub์์ ๋ฌธ์ ๊ฐ ์ด๋ฆฌ๋ฉด Slack์ ๊ฒ์ํ ์ ์์ต๋๋ค.
GitHub Apps ์ฐพ๊ธฐ
GitHub Marketplace์์ GitHub Apps์(๋ฅผ) ์ฐพ์ ์ ์์ต๋๋ค. ์ํฐํ๋ผ์ด์ฆ ๊ณ์ ์๋ ํ์ฌ ์ ํ๋ฆฌ์ผ์ด์ ์ ์ค์นํ ์ ์์ต๋๋ค. ํด๋น ์ ํ๋ฆฌ์ผ์ด์ ์ ์ํฐํ๋ผ์ด์ฆ ๋๋ ์ํฐํ๋ผ์ด์ฆ ๋ด ์กฐ์ง์ด ์์ ํด์ผ ํฉ๋๋ค.
์ฐธ๊ณ ํญ๋ชฉ
GitHub Marketplace์ ์ฑ์ ํ์ฌ GHE.com์์ ์ฌ์ฉํ ์ ์์ต๋๋ค.
์ฌ์ฉ์ ๊ณ ์ ์ GitHub App์(๋ฅผ) ๋น๋ํ ์๋ ์์ต๋๋ค. ์์ธํ ๋ด์ฉ์ GitHub ์ฑ ๋ง๋ค๊ธฐ ์ ๋ณด์(๋ฅผ) ์ฐธ์กฐํ์ธ์.
GitHub Apps ์ฌ์ฉ
GitHub App์ ์ฌ์ฉํ๋ ค๋ฉด ์ํฐํ๋ผ์ด์ฆ, ์ฌ์ฉ์, ์กฐ์ง ๊ณ์ ์ ์ฑ์ ์ค์นํด์ผ ํฉ๋๋ค. ์ฑ์ ์ค์นํ ๋ ์ฌ์ฉ์ ๊ณ์ ๋ฐ์ดํฐ๋ฅผ ์ฝ๊ฑฐ๋ ์์ ํ ์ ์๋ ๊ถํ์ ์ฑ์ ๋ถ์ฌํฉ๋๋ค. ํน์ ๊ถํ์ ์ฑ์ ๋ฐ๋ผ ๋ฌ๋ผ์ง๋๋ค. GitHub์(๋) ์ฑ์ ์ค์นํ๊ธฐ ์ ์ ์ฑ์์ ์์ฒญํ ๊ถํ์ด ๋ฌด์์ธ์ง ์๋ ค์ค๋๋ค. ์กฐ์ง ๋๋ ์ฌ์ฉ์ ๊ณ์ ์ ์ฑ์ ์ค์นํ ๋ ์ฑ์ด ์ก์ธ์คํ ์ ์๋ ๋ฆฌํฌ์งํ ๋ฆฌ๋ ์ง์ ํด์ผ ํฉ๋๋ค. ์ํฐํ๋ผ์ด์ฆ ๊ณ์ ์ ์ค์น๋ ์ฑ์ ์ํฐํ๋ผ์ด์ฆ ์์ฒด๋ง ๊ด๋ฆฌํ ์ ์์ผ๋ฉฐ ์กฐ์ง ๋๋ ๋ฆฌํฌ์งํ ๋ฆฌ ๊ถํ์ ๋ถ์ฌ๋์ง ์์ต๋๋ค.
์ฑ์ ์ถ๊ฐ ๊ตฌ์ฑ์ด ํ์ํ ๊ฒฝ์ฐ ์ฑ์์ ์ด๋ฅผ ์ํํ๋๋ก ์๋ดํฉ๋๋ค. ์์ธํ ๋ด์ฉ์ ๊ฐ์ธ ๊ณ์ ์ ์ํด GitHub ๋ง์ผํ๋ ์ด์ค์์ GitHub ์ฑ ์ค์น, ์กฐ์ง์ฉ GitHub ๋ง์ผํ๋ ์ด์ค์์ GitHub ์ฑ ์ค์น, ํ์ฌ์์ GitHub ์ฑ ์ค์น ๋ฐ ์์ ๋ง์ GitHub ์ฑ ์ค์น์(๋ฅผ) ์ฐธ์กฐํ์ธ์.
๋ํ ID๋ฅผ ํ์ธํ๊ฑฐ๋, ์ฌ์ฉ์๊ฐ ์ก์ธ์คํ ์ ์๋ ๋ฆฌ์์ค๋ฅผ ํ์ธํ๊ฑฐ๋, ์ฌ์ฉ์๋ฅผ ๋์ ํ์ฌ ์กฐ์น๋ฅผ ์ทจํ๋๋ก ํ๊ธฐ์ํด GitHub App์ ๊ถํ์ ๋ถ์ฌํด์ผ ํ ์๋ ์์ต๋๋ค. ์ฑ์ ๊ถํ์ ๋ถ์ฌํด์ผ ํ๋ ๊ฒฝ์ฐ ์ฑ์์ ๊ถํ์ ๋ถ์ฌํ๋ผ๋ ํ๋กฌํํธ๊ฐ ํ์๋ฉ๋๋ค. ์ฑ์ด ์ฌ์ฉ์๋ฅผ ๋์ ํ์ฌ ์๋ํ๋ ๊ฒฝ์ฐ, ํด๋น ์ฑ์ด ๋ฆฌ์์ค๋ฅผ ์์ ํ ๊ณ์ ์ ์ค์น๋์ด ์๊ณ ์ฌ์ฉ์๊ฐ ์ฑ์ ์ฌ๋ฐ๋ฅธ ๊ถํ์ ๋ถ์ฌํ ๊ฒฝ์ฐ, ์ฑ์ ์ฌ์ฉ์๊ฐ ์ฌ์ฉํ๋ ๊ฒ๊ณผ ๋์ผํ ๋ฆฌ์์ค์ ์ก์ธ์คํ ์ ์์ต๋๋ค. ์์ธํ ๋ด์ฉ์ GitHub ์ฑ์ ๊ถํ ๋ถ์ฌ์(๋ฅผ) ์ฐธ์กฐํ์ธ์.
๊ฒฝ์ฐ์ ๋ฐ๋ผ GitHub App์์ ์ ๋ฐ์ดํธ๋ ๊ถํ์ ์์ฒญํฉ๋๋ค. ์ด ๊ฒฝ์ฐ GitHub์(๋) ์๋ฆผ์ผ๋ก ์๋ ค์ค๋๋ค. ์ฑ์ด ๊ณ์ ์๋ํ๋ ค๋ฉด ์ ๋ฐ์ดํธ๋ ๊ถํ์ ๊ฒํ ํ๊ณ ์น์ธํด์ผ ํฉ๋๋ค. ์์ธํ ๋ด์ฉ์ GitHub ์ฑ์ ๋ํ ์ ๋ฐ์ดํธ๋ ๊ถํ ์น์ธ์(๋ฅผ) ์ฐธ์กฐํ์ธ์.
GitHub App์(๋ฅผ) ์ค์นํ๊ฑฐ๋ ๊ถํ์ ๋ถ์ฌํ๊ธฐ ์ ์ ์ฑ ๊ฐ๋ฐ์๋ฅผ ์ ๋ขฐํด์ผ ํฉ๋๋ค. ์ฑ์ ๋ ์ด์ ์ฌ์ฉํ์ง ์๋ ๊ฒฝ์ฐ ์ฑ์ ์ผ์ ์ค๋จํ๊ฑฐ๋ ์ ๊ฑฐํ๊ฑฐ๋ ์ฑ์ ๊ถํ ๋ถ์ฌ๋ฅผ ์ฒ ํํด์ผ ํฉ๋๋ค. ์์ธํ ๋ด์ฉ์ ์ค์น๋ GitHub ์ฑ ๊ฒํ ๋ฐ ์์ ๋ฐ GitHub ์ฑ์ ๊ถํ ๋ถ์ฌ ๊ฒํ ๋ฐ ์ทจ์์(๋ฅผ) ์ฐธ์กฐํ์ธ์.
GitHub Apps ๋ฐ OAuth apps
GitHub์(๋) OAuth apps๋ ์ง์ํฉ๋๋ค. GitHub Apps์(๊ณผ) ๋ฌ๋ฆฌ OAuth app์(๋ฅผ) ์ค์นํ๊ฑฐ๋ ์ก์ธ์คํ ์ ์๋ ๋ฆฌํฌ์งํ ๋ฆฌ๋ฅผ ์ ์ดํ์ง ์์ต๋๋ค.
OAuth apps ๋ฐ GitHub Apps ๋ชจ๋ OAuth 2.0์ ์ฌ์ฉํฉ๋๋ค.
OAuth apps์(๋) ์ฌ์ฉ์๋ฅผ ๋์ ํด์๋ง ์์ ํ ์ ์์ง๋ง GitHub Apps์(๋) ์ฌ์ฉ์๋ฅผ ๋์ ํด ์๋ํ๊ฑฐ๋ ์ฌ์ฉ์์ ๋ ๋ฆฝ์ ์ผ๋ก ์๋ํ ์ ์์ต๋๋ค.
์์ธํ ๋ด์ฉ์ GitHub ์ฑ๊ณผ OAuth ์ฑ ๊ฐ์ ์ฐจ์ด์ ๋ฐ OAuth ์ฑ ๊ถํ ๋ถ์ฌ์(๋ฅผ) ์ฐธ์กฐํ์ธ์.