Auto: GitHub Actions v2(CI/CD)๋กœ ์ž๋™ ๋ช…๋ น์„ ์‹คํ–‰ํ•˜์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

์— ๋งŒ๋“  2019๋…„ 08์›” 20์ผ  ยท  4์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: intuit/auto

๊ธฐ๋Šฅ ์š”์ฒญ์ด ๋ฌธ์ œ์™€ ๊ด€๋ จ๋˜์–ด ์žˆ์Šต๋‹ˆ๊นŒ?

๋ฌธ์ œ์—†์–ด์š” ๐Ÿ˜„

์›ํ•˜๋Š” ์†”๋ฃจ์…˜ ์„ค๋ช…

CircleCI๋ผ๊ณ  ํ•˜๋Š” ๋Œ€์‹  GitHub Actions CI/CD๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ auto ๋ช…๋ น์„ ์‹คํ–‰ํ•ด ๋ณด์…จ์Šต๋‹ˆ๊นŒ?

๊ณ ๋ คํ•œ ๋Œ€์•ˆ์„ ๊ธฐ์ˆ ํ•˜์‹ญ์‹œ์˜ค

์„œํดCI

์ถ”๊ฐ€ ์ปจํ…์ŠคํŠธ

GitHub Actions๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์šฐ๋ฆฌ ๊ณ ์œ ์˜ ๊ฒŒ์‹œ ๋ฐฉ์‹(์ง€๊ธˆ์€ ์ผ๋ถ€ ์ˆ˜๋™ ๋ฆด๋ฆฌ์Šค ๋‹จ๊ณ„๊ฐ€ ์žˆ๋Š” Lerna๋งŒ ์‚ฌ์šฉ)์„ ์‹คํ–‰ํ•˜๋ ค๊ณ  ์‹œ๋„ํ–ˆ์ง€๋งŒ ์ƒˆ ํƒœ๊ทธ๊ฐ€ ์ƒ์„ฑ๋  ๋•Œ๋งŒ ์›Œํฌํ”Œ๋กœ๋ฅผ ์‹คํ–‰ํ•˜๋Š” ๋ฐ ์–ด๋ ค์›€์„ ๊ฒช๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค(๋‹น์‹ ์ด ์–ธ๊ธ‰ํ•œ CircleCI๋กœ ์ด๊ฒƒ์ด ๊ฐ€๋Šฅํ•˜๋‹ค๋Š” ๊ฒƒ์„ ์••๋‹ˆ๋‹ค. ๋ฌธ์„œ์—์„œ).

enhancement hacktoberfest

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

๋ฌธ์„œ ์›น์‚ฌ์ดํŠธ์— github ์ž‘์—…์— ๋Œ€ํ•œ ๋ฌธ์„œ๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ถ”๊ฐ€ ์ง€์›์ด ํ•„์š”ํ•˜๋ฉด ์–ธ์ œ๋“ ์ง€ ๋‹ค๋ฅธ ๋ฌธ์ œ๋ฅผ ์—ฌ์‹ญ์‹œ์˜ค!

๋ชจ๋“  4 ๋Œ“๊ธ€

๋˜ํ•œ Lerna ๋ฐ auto ๊ฐœ์ธ ํŒจํ‚ค์ง€๋ฅผ ๊ฒŒ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ์ด๊ฒƒ์ด ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜๋„๋ก ํ•˜๋Š” ๋ฐ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ฐ์‚ฌ ํ•ด์š”!

CircleCI๋ผ๊ณ  ํ•˜๋Š” ๋Œ€์‹  GitHub Actions CI/CD๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ž๋™ ๋ช…๋ น์„ ์‹คํ–‰ํ•ด ๋ณด์…จ์Šต๋‹ˆ๊นŒ?

์˜ˆ, ์•ฝ๊ฐ„์˜ ์ถ”๊ฐ€ ์„ค์ •์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค. github ์ž‘์—…์ด ์ž‘์—…์—์„œ ์ €์žฅ์†Œ๋กœ ๋‹ค์‹œ ํ‘ธ์‹œํ•˜๋„๋ก ์„ค์ •๋˜์ง€ ์•Š์€ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. ๋‹ค์Œ์€ ๋‚ด๊ฐ€ ์ˆ˜ํ–‰ํ•œ ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค.

https://github.com/hipstersmoothie/eslint-formatter-github/blob/master/.github/workflows/push.yml#L24

๋˜ํ•œ Lerna ๋ฐ auto๋กœ ๊ฐœ์ธ ํŒจํ‚ค์ง€๋ฅผ ๊ฒŒ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๊นŒ? ์ด๊ฒƒ์ด ์ œ๋Œ€๋กœ ์ž‘๋™ํ•˜๋„๋ก ํ•˜๋Š” ๋ฐ ๋ฌธ์ œ๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ฐœ์ธ ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ๋ฅผ ์ข‹์•„ํ•˜์‹œ๋‚˜์š”?

๋น„๊ณต๊ฐœ ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ์— ๊ฒŒ์‹œํ•˜๋ ค๋ฉด ๋‹ค์Œ๋„ ์ˆ˜ํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

  1. ๋ ˆ์ง€์ŠคํŠธ๋ฆฌ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฃจํŠธ package.json์—์„œ publishConfig ์„ค์ •
  "publishConfig": {
    "registry": "https://registry.npmjs.YOURS.com"
  },
  1. ์ด ๊ฐ’์„ 'lerna.json'์— ์ถ”๊ฐ€ํ•˜์„ธ์š”.
{
  "registry": "https://registry.npmjs.YOURS.com",
  "packages": [
    "packages/*"
  ],
  "version": "0.76.0",
  "npmClient": "yarn",
  "useWorkspaces": true
}

ํ•˜์œ„ ํŒจํ‚ค์ง€์—๋„ ๊ฒŒ์‹œ ๊ตฌ์„ฑ์„ ์„ค์ •ํ•ด์•ผ ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

์‹œ๊ฐ„์„ ๋‚ด์–ด ๋‹ต๋ณ€ํ•ด ์ฃผ์…”์„œ ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค.

auto์— ๋Œ€ํ•œ ํ›Œ๋ฅญํ•œ ์ž‘์—…์„ ๊ณ„์†ํ•˜์‹ญ์‹œ์˜ค!

๋ฌธ์„œ ์›น์‚ฌ์ดํŠธ์— github ์ž‘์—…์— ๋Œ€ํ•œ ๋ฌธ์„œ๋ฅผ ์ถ”๊ฐ€ํ–ˆ์Šต๋‹ˆ๋‹ค. ์ถ”๊ฐ€ ์ง€์›์ด ํ•„์š”ํ•˜๋ฉด ์–ธ์ œ๋“ ์ง€ ๋‹ค๋ฅธ ๋ฌธ์ œ๋ฅผ ์—ฌ์‹ญ์‹œ์˜ค!

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰