.npmrc
์์ Github ํ ํฐ์ ๊ฒ์ํ๋ ์ด์ ๋ ๋ฌด์์
๋๊น?
๋ํ GH_TOKEN
process.env.NPM_TOKEN
๊ฐ ํ์ธ๋์ง ์๋ ์ด์ ๋ ๋ฌด์์
๋๊น?
auto-release
์ด ์ฌ์ฉ์๋ฅผ ์ํด $NPM_TOKEN
๋ฅผ .npmrc
์ ์ฃผ์
ํ ์ ์์ต๋๊น? (CI ๋น๋์์ ์ ์ฌ์ ์ผ๋ก ์ ์ฉํจ)
์ด๊ฒ์ GitHub ์ํฐํ๋ผ์ด์ฆ์ ๋๋ค. @adierkens ๋ ๋ด๊ฐ ๊ฒฝํํ์ง ์์๊ธฐ ๋๋ฌธ์ ๋ ๋ง์ ๊ฒ์ ์๋ ค์ค ์ ์์ต๋๋ค.
์๋ ๋ฆด๋ฆฌ์ค๊ฐ ์ฌ์ฉ์๋ฅผ ์ํด $NPM_TOKEN์ .npmrc์ ์ฃผ์ ํ ์ ์์ต๋๊น? (CI ๋น๋์์ ์ ์ฌ์ ์ผ๋ก ์ ์ฉํจ)
๋๋ ์ด๊ฒ์ ์ข์ํ๋ค. ํ ์ ์์ด์ผ ํ๋ค
์ด ๊ธฐ๋ฅ์ CI์์๋ง ํ์ฑํํด์ผ ํฉ๋๋ค. ๋ก์ปฌ์์ ์คํํ๋ ๊ฒฝ์ฐ ์ค์๋ก ํ ํฐ์ ์ปค๋ฐํ ์ ์์ต๋๋ค.
์ด ํจํค์ง๊ฐ ์ํ๋ ๋์์ ์ํํ ์ ์์ต๋๊น?
https://www.npmjs.com/package/@hutson/set -npm-auth-token-for-ci
๋ฌผ๋ก , ํ์ง๋ง ์์ค ์ฝ๋๋ฅผ ๋ณด๋ฉด ๋งค์ฐ ๊ธฐ๋ณธ์ ์ธ ๊ตฌํ์ด ๋๋ฌ๋ฌ์ผ๋ฏ๋ก ์ฌ์ฉ์๊ฐ ๋ค๋ฅธ ์ข
์์ฑ์ ์ค์นํ๋๋ก ๊ฐ์ ํ๋ ๊ฒ๋ณด๋ค auto-release
์ ํฌํจํ๋ ๊ฒ์ด ์ข์ต๋๋ค.
๊ทธ๋๋ ๊ฝค ์ํ๋ ๊ฒ ๊ฐ์ต๋๋ค.
์ด๊ฒ์ ์ฐ๋ฆฌ๊ฐ ๋ชจ๋ ์ฌ์ฉ ์ฌ๋ก๋ฅผ ๋ค๋ฃจ๊ณ ์ถ๋ค๋ฉด ์์ ๋ชจ๋ ์ฌํญ๋ ์ฝ๋ฉํด์ผ ํ๋(๋๋ ์ต์ํ ๋์ผํ ํจํค์ง๋ฅผ ์ฌ์ฉํ๋) ๊ธฐ๋ฅ์ ๋๋ค.
๋ช ๊ฐ์ง ๋ค๋ฅธ ๊ฒฝ์ฐ์๋ ์ฐ๋ฆฌ๋ ๊ฐ์ ์ผ์ ํฉ๋๋ค. git ์์ฑ์๋ฅผ ์ฌ๋ฐ๋ฅด๊ฒ ๊ตฌ๋ฌธ ๋ถ์ํ๊ณ github URL์ ๋ํด parse-github-url ์ ๊ตฌ๋ฌธ ๋ถ์ํ๊ธฐ ์ํด parse-author ๋ฅผ ์ฐ๊ธฐํฉ๋๋ค. ๋ฐ๋ผ์ ํจํค์ง๋ฅผ ์ฌ์ฉํ์ฌ ์ด๋ฅผ ์ํํ๋ ๊ฒ์ ๋ฌด๋ฆฌ๊ฐ ์๋๋๋ค.
๋๋ ๋ํ ์ด์ ๊ฐ์ ํจํค์ง์ ์์กดํ๋ ๊ฒ์ ์ข์ํ๋ฏ๋ก ์ธ์์ ์ฝ๋ ์ค๋ณต์ด ์ ์ต๋๋ค. ์ด ํจํค์ง๋ฅผ ์ฌ์ฉํ๊ณ ๋ฌธ์ ๋ฅผ ์ฐพ์ผ๋ฉด ๋ฏธ๋์ ๊ฐ๋ฐ์๋ ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์์ต๋๋ค!
ํจํค์ง์ ๋ํ ๋์ ์ฃผ์ ๋ฌธ์ ๋ API์ ํจ๊ป CLI๋ ์ ๊ณตํ๋ ๋ฐฉ๋ฒ์ ๋๋ค. ๊ทธ๊ฒ์ ์ํด ๋๋ ์ฌ๊ธฐ ์์ ๋ฌธ์ ๋ฅผ ์ด์์ต๋๋ค.
๊ทธ ๋์ ์ฐ๋ฆฌ๋ ํจํค์ง๋ฅผ ํฌํฌํด์ผ ํฉ๋๋ค(๊ทธ๋ฆฌ๊ณ ์๋ง๋ PR์ ์ด ์๋ ์์ต๋๋ค). ๐
๋ค, PR์ ํ ์๊ฐ์ ๋๋ค! ์๊ฐ๊ฐ ๋ฌด์์ ์ํ๋์ง ์๊ณ ์ถ์ ๋ฟ์ ๋๋ค. ๊ทธ๋ฌ๋ ํด๋น ํจํค์ง์ ๋ํ ์ต์ ์ ๊ฒฝ๋ก๋ ์๋ง๋ ๋ ๊ฐ์ง๋ฅผ ๋ชจ๋ ์ํํ๋ ๊ฒ์ ๋๋ค. ๋จ์ผ ์ ์ฅ์๋ฅผ ๋ง๋ค๊ณ ๋ ์์ CLI ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ์ฌ์ฉํ์ญ์์ค.
๊ด๋ฆฌ์๋ ์ด๋ฏธ ์ด๊ฒ์ ๊ตฌํํ์ต๋๋ค! https://gitlab.com/hyper-expanse/open-source/set-npm-auth-token-for-ci/issues/2