Cli: [BUG] CI ν™˜κ²½μ—μ„œ npx λ™μž‘

에 λ§Œλ“  2020λ…„ 10μ›” 09일  Β·  14μ½”λ©˜νŠΈ  Β·  좜처: npm/cli

이것은 μ‹€μ œλ‘œ λ²„κ·ΈλŠ” μ•„λ‹ˆμ§€λ§Œ CI ν™˜κ²½μ—μ„œ npx λ³€κ²½μ˜ 잠재적 영ν–₯을 λ…Όμ˜ν•˜κΈ° μœ„ν•΄ 버그λ₯Ό μ œκΈ°ν•©λ‹ˆλ‹€.

ν˜„μž¬ 행동 :

npx mocha
Need to install the following packages:
 mocha
Ok to proceed? (y)

npx -y mocha 은 (λŠ”) μžλ™ μ„€μΉ˜ λ™μž‘μ„ κ°€μ Έ μ˜€μ§€λ§Œ μ‚¬μš©μžκ°€ CI 슀크립트λ₯Ό μ—…λ°μ΄νŠΈν•΄μ•Όν•©λ‹ˆλ‹€.

λ˜ν•œ npm @ 6의 npx -y mocha 였λ₯˜λŠ” λ‹€μŒκ³Ό κ°™μŠ΅λ‹ˆλ‹€.

npx -y mocha
ERROR: You must supply a command.
Execute binaries from npm packages.
  npx [options] <command>[@version] [command-arg]...

μ—¬λŸ¬ Node.js / npm λ²„μ „μ—μ„œ μ‹€ν–‰ν•  λ•Œ CI μŠ€ν¬λ¦½νŠΈμ— ν•„μš”ν•œ 논리가 λ³΅μž‘ν•΄μ§ˆ 것이라고 μƒκ°ν•©λ‹ˆλ‹€.

_ λͺ¨μΉ΄λ₯Ό 예둜 λ“€μ–΄ λ³΄κ² μŠ΅λ‹ˆλ‹€. Node.jsμ—μ„œλŠ” GH Actions ꡬ성에 npx λ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€. GH Actionsκ°€ npm@7._을 ν¬ν•¨ν•˜λŠ” Node.js 버전을 μ‚¬μš©ν•˜λ„λ‘ μ—…λ°μ΄νŠΈν•˜λ©΄ 손상 될 κ²ƒμœΌλ‘œ μ˜ˆμƒλ©λ‹ˆλ‹€.

μ˜ˆμƒλ˜λŠ” λ™μž‘ :

  • ν™•μ‹€ν•˜μ§€ μ•Šμ§€λ§Œ μ‚¬μš©μžκ°€ 슀크립트λ₯Ό νŽΈμ§‘ ν•  ν•„μš”κ°€μ—†λŠ” ν•΄κ²° 방법이 μžˆλŠ”μ§€ κΆκΈˆν•©λ‹ˆλ‹€.

μž¬ν˜„ 단계 :

  • CI ν™˜κ²½μ—μ„œ npx <module> .

ν™˜κ²½:

  • λͺ¨λ“  CI ν™˜κ²½

/ cc @MylesBorins @richardlau

Bug Release 7.x

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

이 문제λ₯Ό ν•΄κ²°ν•  μˆ˜μžˆλŠ” 7.0.6을 였늘 κ²Œμ‹œν–ˆμŠ΅λ‹ˆλ‹€. 이제 CI ν™˜κ²½μ—μ„œ 싀행쀑인 κ²ƒμ²˜λŸΌ 보이면 ν”„λ‘¬ν”„νŠΈλ₯Ό μ™„μ „νžˆ κ±΄λ„ˆ λœλ‹ˆλ‹€.

λ¬Έμ œκ°€ κ³„μ†λ˜λ©΄ μ•Œλ €μ£Όμ„Έμš”!

λͺ¨λ“  14 λŒ“κΈ€

@ruyadorno λŠ” μŠ¬λž™ λŒ€ν™”μ—μ„œ 이것이 μ˜λ„μ  인 λ³€κ²½ 사항

μ•ˆλ…•ν•˜μ„Έμš” @BethGriggs μ €ν¬μ—κ²Œ μ•Œλ € μ£Όμ…”μ„œ κ°μ‚¬ν•©λ‹ˆλ‹€ πŸ˜„

λΉ„λŒ€ν™” ν˜• ν„°λ―Έλ„μ˜ 경우 λ˜μ§€λŠ” λŒ€μ‹  WARNμ—λ§Œ 패치 (ref # 1936) npx λ₯Ό μ μš©ν•˜λ―€λ‘œ Unix νŒŒμ΄ν”„ 라인의 쑰합도 ν”„λ‘¬ν”„νŠΈ / 확인을 ν”Όν•  수 μžˆλ‹€λŠ” 점을 μ–ΈκΈ‰ ν•  κ°€μΉ˜κ°€ μžˆμŠ΅λ‹ˆλ‹€.

  • npx mocha < /dev/null

μŠ¬λž™ μ±„λ„μ—μ„œλ„ μ–ΈκΈ‰ν–ˆλ“―μ΄ : npm_config_yes=true npx mocha λŠ” μž‘λ™ν•˜λŠ” npm6-7 ν˜Έν™˜ λ²„μ „μž…λ‹ˆλ‹€.

μš°λ¦¬λŠ” 였늘 7.0.0-rc.4λ₯Ό κ²Œμ‹œν–ˆμŠ΅λ‹ˆλ‹€.이 λ©”μ‹œμ§€λŠ” λ©”μ‹œμ§€λ₯Ό κ±΄λ„ˆ 뛰지 만 λΉ„λŒ€ν™” ν˜• ν™˜κ²½μ—μ„œ 싀행될 λ•Œ κ²½κ³ λ₯Ό 좜λ ₯ν•©λ‹ˆλ‹€. μ΄λ ‡κ²Œν•˜λ©΄ 무언가가 μ„€μΉ˜λ˜κ³  μžˆλ‹€λŠ” κ²½κ³ κ°€ 계속 ν‘œμ‹œλ˜μ§€λ§Œ CI ν™˜κ²½μ—μ„œλŠ” μ€‘λ‹¨λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

λŒ€ν™” ν˜• ν™˜κ²½μ˜ 경우 μœ„μ˜ ν•΄κ²° 방법이 νŠΈλ¦­μ„ μˆ˜ν–‰ν•΄μ•Όν•©λ‹ˆλ‹€.

@BethGriggs λ¬Έμ œκ°€ ν•΄κ²°λ˜λŠ”μ§€ μ•Œλ €μ£Όμ‹œκ² μŠ΅λ‹ˆκΉŒ?

μš°λ¦¬λŠ” 였늘 7.0.0-rc.4λ₯Ό κ²Œμ‹œν–ˆμŠ΅λ‹ˆλ‹€.이 λ©”μ‹œμ§€λŠ” λ©”μ‹œμ§€λ₯Ό κ±΄λ„ˆ 뛰지 만 λΉ„λŒ€ν™” ν˜• ν™˜κ²½μ—μ„œ 싀행될 λ•Œ κ²½κ³ λ₯Ό 좜λ ₯ν•©λ‹ˆλ‹€. μ΄λ ‡κ²Œν•˜λ©΄ 무언가가 μ„€μΉ˜λ˜κ³  μžˆλ‹€λŠ” κ²½κ³ κ°€ 계속 ν‘œμ‹œλ˜μ§€λ§Œ CI ν™˜κ²½μ—μ„œλŠ” μ€‘λ‹¨λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€.

λŒ€ν™” ν˜• ν™˜κ²½μ˜ 경우 μœ„μ˜ ν•΄κ²° 방법이 νŠΈλ¦­μ„ μˆ˜ν–‰ν•΄μ•Όν•©λ‹ˆλ‹€.

@BethGriggs λ¬Έμ œκ°€ ν•΄κ²°λ˜λŠ”μ§€ μ•Œλ €μ£Όμ‹œκ² μŠ΅λ‹ˆκΉŒ?

root<strong i="9">@localhost</strong> ~# npm install -g [email protected]
npm ERR! code MODULE_NOT_FOUND
npm ERR! Cannot find module 'agentkeepalive'
npm ERR! Require stack:
npm ERR! - /usr/local/lib/node_modules/npm/node_modules/make-fetch-happen/agent.js
npm ERR! - /usr/local/lib/node_modules/npm/node_modules/make-fetch-happen/index.js
npm ERR! - /usr/local/lib/node_modules/npm/node_modules/npm-registry-fetch/index.js
npm ERR! - /usr/local/lib/node_modules/npm/lib/utils/metrics.js
npm ERR! - /usr/local/lib/node_modules/npm/lib/npm.js
npm ERR! - /usr/local/lib/node_modules/npm/lib/cli.js
npm ERR! - /usr/local/lib/node_modules/npm/bin/npm-cli.js

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2020-10-10T03_17_28_890Z-debug.log

@BethGriggs λ¬Έμ œκ°€ ν•΄κ²°λ˜λŠ”μ§€ μ•Œλ €μ£Όμ‹œκ² μŠ΅λ‹ˆκΉŒ?

CI ν™˜κ²½μ— λ―ΈμΉ˜λŠ” 영ν–₯을 쀄이기 μœ„ν•΄ λ¬Έμ œκ°€ ν•΄κ²°λ˜μ—ˆλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. κ°μ‚¬ν•©λ‹ˆλ‹€!

μ›λž˜ λ¬Έμ œκ°€ ν•΄κ²°λ˜μ—ˆμœΌλ―€λ‘œ μ’…λ£Œλ©λ‹ˆλ‹€.

@gengjiawen μ—…λ°μ΄νŠΈ ν•œ 문제λ₯Ό μž¬ν˜„ ν•  수 μžˆλ‹€λ©΄ λ‹€λ₯Έ 문제λ₯Ό μ—΄μ–΄ μ£Όμ‹œλ©΄ λ…Όμ˜ ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

FWIW, TravisCIμ—μ„œμ΄ λ¬Έμ œμ— λΆ€λ”ͺ ν˜”μŠ΅λ‹ˆλ‹€ : https://travis-ci.com/github/kentcdodds/advanced-react-hooks/builds/191260988

image

@BethGriggs 의 μ›λž˜ κ΄€μ‹¬μ‚¬λŠ” μ—¬μ „νžˆ 문제라고 μƒκ°ν•©λ‹ˆλ‹€ 😬

hmmm πŸ€” μ•„λ§ˆλ„ process.stdin.isTTY @nlf ν™•μΈν•˜λŠ” 것 외에도 @npmcli/ci-detect λ₯Ό μ‚¬μš©ν•˜μ—¬ ν™˜κ²½μ„ 확인해야 ν•  μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€.

이것도 치면 우리의 λͺ¨λ“  CI μŠ€ν¬λ¦½νŠΈκ°€ κΉ¨μ‘ŒμŠ΅λ‹ˆλ‹€. μ™œ λ§ˆμ΄λ„ˆ / 패치 λ¦΄λ¦¬μŠ€μ— λΈŒλ ˆμ΄ν‚Ή 체인지λ₯Ό λ„μž… ν–ˆλ‚˜μš”?

Circle CIμ—μ„œμ΄ λ¬Έμ œκ°€μžˆλŠ” μ‚¬λžŒμ€ μ „μ—­ ν™˜κ²½ λ³€μˆ˜λ₯Ό μ„€μ •ν•˜μ—¬ npm_config_yes λ³€μˆ˜λ₯Ό λͺ¨λ“  μž‘μ—…μ— true μ„€μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

@FezVrasta λŠ” 7.0.0 Semver-Major λ³€κ²½μ—μ„œ λ³€κ²½λ˜μ—ˆμŠ΅λ‹ˆλ‹€. μš°λ¦¬λŠ” TTYλ₯Ό ν™•μΈν•˜μ—¬ CI 문제λ₯Ό ν•΄κ²°ν–ˆλ‹€κ³  μƒκ°ν–ˆμ§€λ§Œ μš°λ¦¬κ°€ λ†“μΉœ κ°€μž₯자리 μ‚¬λ‘€κ°€μžˆλŠ” 것 κ°™μŠ΅λ‹ˆλ‹€. 더 λ§Žμ€ CI ν™˜κ²½μ—μ„œμ΄ 문제λ₯Ό ν•΄κ²°ν•˜κΈ° μœ„ν•΄ # 2047이 μ—΄λ €μžˆλŠ” 것 κ°™μŠ΅λ‹ˆλ‹€.

이 문제λ₯Ό ν•΄κ²°ν•  μˆ˜μžˆλŠ” 7.0.6을 였늘 κ²Œμ‹œν–ˆμŠ΅λ‹ˆλ‹€. 이제 CI ν™˜κ²½μ—μ„œ 싀행쀑인 κ²ƒμ²˜λŸΌ 보이면 ν”„λ‘¬ν”„νŠΈλ₯Ό μ™„μ „νžˆ κ±΄λ„ˆ λœλ‹ˆλ‹€.

λ¬Έμ œκ°€ κ³„μ†λ˜λ©΄ μ•Œλ €μ£Όμ„Έμš”!

μ§€κΈˆ 우리λ₯Ό μœ„ν•΄ μΌν•©λ‹ˆλ‹€ : https://github.com/testing-library/react-testing-library/pull/809/files

λΉ λ₯Έ μˆ˜μ •μ— κ°μ‚¬λ“œλ¦½λ‹ˆλ‹€!

질문 : npx7 λ©”μ‹œμ§€κ°€ ν‘œμ‹œλ˜κ³  μ‚¬μš©μžκ°€ λˆ„λ½ 된 νŒ¨ν‚€μ§€λ₯Ό μ„€μΉ˜ν•˜λ©΄

  1. νŒ¨ν‚€μ§€λŠ” 어디에 μ €μž₯λ©λ‹ˆκΉŒ? λΆ„λͺ…νžˆ κΈ€λ‘œλ²Œ npm νŒ¨ν‚€μ§€λ‘œ μ„€μΉ˜λ˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€.
  2. npx makeκ°€ "makes"의 μ΅œμ‹  버전을 ν™•μΈν•˜κ³  λ‹€μš΄λ‘œλ“œν•˜λ„λ‘ κ°•μ œν•˜λŠ” 방법은 λ¬΄μ—‡μž…λ‹ˆκΉŒ? npx makeκ°€ λ‘œμ»¬μ— μ„€μΉ˜λœ "makes"의 이전 버전에 κ°‡νžˆλŠ” λ¬Έμ œκ°€ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€.
이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰