2014-06-12 24 views
3

更換ENV爲了使用我的Heroku的部署節點應用的私人包註冊表,我已經包括以下內容.npmrc文件在我的項目:的Heroku和節點0.10.29:無法在配置

_auth = ${NPM_AUTH} 
always-auth = true 
registry = https://myprivateregistry.com/ 

NPM_AUTH是npm期望的名稱/密碼哈希。

這使我可以將憑據保留在版本控制之外。一切工作正常,直到節點0.10.29當我開始力推的Heroku時收到以下錯誤:

♥ → git push heroku HEAD:master 
Fetching repository, done. 
Counting objects: 11, done. 
Delta compression using up to 8 threads. 
Compressing objects: 100% (9/9), done. 
Writing objects: 100% (11/11), 915 bytes | 0 bytes/s, done. 
Total 11 (delta 8), reused 4 (delta 1) 

-----> Node.js app detected 
-----> Requested node range: ~0.10.15 
-----> Resolved node version: 0.10.29 
-----> Downloading and installing node 
-----> Restoring node_modules directory from cache 
-----> Pruning cached dependencies not specified in package.json 
     Error: Failed to replace env in config: ${NPM_AUTH} 
      at /tmp/build_fb6a1362-16ae-4753-b169-3a1bed157306/vendor/node/lib/node_modules/npm/node_modules/npmconf/npmconf.js:371:13 
      at String.replace (native) 
      at envReplace (/tmp/build_fb6a1362-16ae-4753-b169-3a1bed157306/vendor/node/lib/node_modules/npm/node_modules/npmconf/npmconf.js:366:12) 
      at parseField (/tmp/build_fb6a1362-16ae-4753-b169-3a1bed157306/vendor/node/lib/node_modules/npm/node_modules/npmconf/npmconf.js:345:7) 
      at /tmp/build_fb6a1362-16ae-4753-b169-3a1bed157306/vendor/node/lib/node_modules/npm/node_modules/npmconf/npmconf.js:290:15 
      at Array.forEach (native) 
      at Conf.add (/tmp/build_fb6a1362-16ae-4753-b169-3a1bed157306/vendor/node/lib/node_modules/npm/node_modules/npmconf/npmconf.js:289:21) 
      at ConfigChain.addString (/tmp/build_fb6a1362-16ae-4753-b169-3a1bed157306/vendor/node/lib/node_modules/npm/node_modules/npmconf/node_modules/config-chain/index.js:244:8) 
      at Conf.<anonymous> (/tmp/build_fb6a1362-16ae-4753-b169-3a1bed157306/vendor/node/lib/node_modules/npm/node_modules/npmconf/npmconf.js:278:10) 
      at fs.js:271:14 


     /tmp/build_fb6a1362-16ae-4753-b169-3a1bed157306/vendor/node/lib/node_modules/npm/lib/npm.js:33 
      throw new Error('npm.load() required') 
       ^
     Error: npm.load() required 
      at Object.npm.config.get (/tmp/build_fb6a1362-16ae-4753-b169-3a1bed157306/vendor/node/lib/node_modules/npm/lib/npm.js:33:11) 
      at exit (/tmp/build_fb6a1362-16ae-4753-b169-3a1bed157306/vendor/node/lib/node_modules/npm/lib/utils/error-handler.js:49:27) 
      at process.errorHandler (/tmp/build_fb6a1362-16ae-4753-b169-3a1bed157306/vendor/node/lib/node_modules/npm/lib/utils/error-handler.js:316:3) 
      at process.emit (events.js:95:17) 
      at process._fatalException (node.js:272:26) 

!  Push rejected, failed to compile Node.js app 

To [email protected]:myproject.git 
! [remote rejected] HEAD -> master (pre-receive hook declined) 
error: failed to push some refs to '[email protected]:myproject.git' 

環境變量設置和我能夠在指定版本0.10.28再次推我package.json的engines字段。

我希望能找出以下幾點:

  1. 哪件的改變:節點,NPM,npmconf或Heroku的? (鏈接到相關的承諾和問題將是巨大的。)
  2. 這種變化是故意的還是我應該提交一個錯誤報告?

回答