2017-02-13 76 views
0

我在將一些代碼部署到我的環境之一時遇到問題。部署到彈性beanstalk的問題「50npm.sh失敗」

Creating application version archive "app-aa68e-170213_103330". 
Uploading PAS-API/app-aa68e-170213_103330.zip to S3. This may take a while. 
Upload Complete. 
INFO: Environment update is starting.        
INFO: Deploying new version to instance(s).       
ERROR: Failed to run npm install. Snapshot logs for more details. 
ERROR: [Instance: i-0ee97a5c7bcab8d51] Command failed on instance. Return code: 1 Output: (TRUNCATED)..."/opt/elasticbeanstalk/containerfiles/ebnode.py", line 180, in npm_install 
    raise e 
subprocess.CalledProcessError: Command '['/opt/elasticbeanstalk/node-install/node-v4.4.6-linux-x64/bin/npm', '--production', 'install']' returned non-zero exit status 1. 
Hook /opt/elasticbeanstalk/hooks/appdeploy/pre/50npm.sh failed. For more detail, check /var/log/eb-activity.log using console or EB CLI. 
INFO: Command execution completed on all instances. Summary: [Successful: 0, Failed: 1]. 
ERROR: Unsuccessful command execution on instance id(s) 'i-0ee97a5c7bcab8d51'. Aborting the operation. 

當服務器上運行npm install似乎部署失敗。

回答

0

當我檢查似乎有些DEPS的package.json添加爲壓縮包,而不是一個版本號,這意味着當它安裝並保存它看起來是這樣的:

"basic-auth": "https://registry.npmjs.org/basic-auth/-/basic-auth-1.0.4.tgz" 

不是

"basic-auth": "^1.1.0", 

這在eb實例上的npm install上失敗了,它現在看起來很有效。