2017-06-13 55 views
0

我對heroku pg:backups capture --app myapp命令有問題。MODULE_NOT_FOUND in heroku pg:備份

Heroku CLI submits usage information back to Heroku. If you would like to disable this, set `skip_analytics: true` in /home/ubuntu/.heroku/config.json 
heroku-cli: Updating to 4.99.0-e5f5ef4... done 
heroku-cli: Updating CLI...heroku-cli: Updating to 5.11.8-f58f4fa... done 
Starting backup of postgresql-spherical-5948... done 

Use Ctrl-C at any time to stop monitoring progress; the backup will continue running. 
Use heroku pg:backups:info to check progress. 
Stop a running backup with heroku pg:backups:cancel. 

Backing up DATABASE to b598... pending 
Backing up DATABASE to b598... ! 
▸ MODULE_NOT_FOUND: Cannot find module 'bytes' 

有沒有人有類似的問題?此命令在CircleCI上部署時啓動。

回答

2

我昨天開始遇到同樣的問題,終於能夠想出一個解決方案,爲我工作。

對於初學者來說,它看起來像bytesheroku-pg的依賴關係,它是用於備份命令的Heroku CLI的一部分。好像這個依賴沒有被包含或者與正在被用於運行備份命令的heroku-cli版本一起安裝。

我試過CircleCI的「用SSH重建」來解決問題,並在嘗試備份命令時遇到類似的錯誤消息。在嘗試使用npm重新安裝heroku-cli時,我發現npm和node版本遠遠落後於heroku-cli的想法,所以也許這就是問題的一部分?無論如何,用npm重新安裝只會產生更多破碎的Heroku CLI。

最後,我檢查了構建環境,它被設置爲Ubuntu 12.04(精確),這可能解釋了過時的npm/node包的方式。我將它更改爲Ubuntu 14.04(Trusty),並將一個新提交推送給CircleCI(單獨重建不足以更改操作系統版本),並且能夠成功運行失敗的備份命令!

解決方案:集CircleCI構建環境到Ubuntu 14.04

+0

非常感謝! :) – myf

相關問題