2014-06-11 135 views
1

我試圖將我的真正簡單的ghost測試站點升級到最新版本的Ghost 0.4.2。我已按照其網站上的升級說明進行操作,並能夠在本地運行項目的升級版本。使用Git部署將Ghost 0.4.2部署到Azure站點

當我嘗試使用GIT Deploy流程將升級版推送到我的azure實例時,我收到以下錯誤日誌。任何人都可以闡明發生了什麼問題。我最好的猜測是他們的新版本的sqlite有問題。

Command: "D:\home\site\deployments\tools\deploy.cmd" 
Handling node.js deployment. 
KuduSync.NET from: 'D:\home\site\repository' to: 'D:\home\site\wwwroot' 
Copying file: 'iisnode.yml' 
Copying file: 'package.json' 
Node.js versions available on the platform are: 0.6.17, 0.6.20, 0.8.2, 0.8.19, 0.8.26, 0.10.5, 0.10.18, 0.10.21, 0.10.24, 0.10.26, 0.10.28. 
Selected node.js version 0.10.28. Use package.json file to choose a different version. 
Updating iisnode.yml at D:\home\site\wwwroot\iisnode.yml 
npm http GET https://registry.npmjs.org/sqlite3 
npm http 304 https://registry.npmjs.org/sqlite3 
npm ERR! error rolling back Error: EPERM, unlink 'D:\home\site\wwwroot\node_modules\sqlite3\lib\binding\Release\node-v11-win32-ia32\node_sqlite3.node' 
Failed exitCode=50, command="D:\Program Files (x86)\nodejs\0.10.28\node.exe" "D:\Program Files (x86)\npm\1.4.9\node_modules\npm\bin\npm-cli.js" install --production 
npm ERR! error rolling back [email protected] { [Error: EPERM, unlink 'D:\home\site\wwwroot\node_modules\sqlite3\lib\binding\Release\node-v11-win32-ia32\node_sqlite3.node'] 
An error has occurred during web site deployment. 
npm ERR! error rolling back errno: 50, 
npm ERR! error rolling back code: 'EPERM', 
npm ERR! error rolling back path: 'D:\\home\\site\\wwwroot\\node_modules\\sqlite3\\lib\\binding\\Release\\node-v11-win32-ia32\\node_sqlite3.node' } 
npm ERR! Error: EPERM, unlink 'D:\home\site\wwwroot\node_modules\sqlite3\lib\binding\Release\node-v11-win32-ia32\node_sqlite3.node' 
npm ERR! { [Error: EPERM, unlink 'D:\home\site\wwwroot\node_modules\sqlite3\lib\binding\Release\node-v11-win32-ia32\node_sqlite3.node'] 
npm ERR! errno: 50, 
npm ERR! code: 'EPERM', 
npm ERR! path: 'D:\\home\\site\\wwwroot\\node_modules\\sqlite3\\lib\\binding\\Release\\node-v11-win32-ia32\\node_sqlite3.node' } 
npm ERR! 
npm ERR! Please try running this command again as root/Administrator. 
npm ERR! System Windows_NT 6.2.9200 
npm ERR! command "D:\\Program Files (x86)\\nodejs\\0.10.28\\node.exe" "D:\\Program Files (x86)\\npm\\1.4.9\\node_modules\\npm\\bin\\npm-cli.js" "install" "--production" 
npm ERR! cwd D:\home\site\wwwroot 
npm ERR! node -v v0.10.28 
npm ERR! npm -v 1.4.9 
npm ERR! path D:\home\site\wwwroot\node_modules\sqlite3\lib\binding\Release\node-v11-win32-ia32\node_sqlite3.node 
npm ERR! code EPERM 
npm ERR! errno 50 
npm ERR! stack Error: EPERM, unlink 'D:\home\site\wwwroot\node_modules\sqlite3\lib\binding\Release\node-v11-win32-ia32\node_sqlite3.node' 

回答

0

我有同樣的問題。我發現我的Git倉庫中包含了node_modules文件夾,因此這些文件隨代碼一起部署。這不是必需的 - Kudu將在部署時建立依賴關係。

嘗試從您的存儲庫中刪除node_modules文件夾,並將條目粘貼到您的.gitignore中,以便它不會被重新添加。您還需要爲Ghost.db以及任何其他部分內容執行相同的操作,這些內容在部署時不應被替換。

+0

'node_modules'和'* .db'都已經在.gitignore中。不知道他們在迴應時是否在場,他們現在至少在官方的「stable」分支中。 –

2

我認爲這與被鎖定的文件...\node_sqlite3.node有關。如果遇到同樣的錯誤,我已重新啓動Azure網站並重新部署,但它第二次運行。

我知道,不完全是根本原因解決方案,但是如果你被卡住了,它會讓你啓動並運行。

+0

停止Azure網站,然後重新部署爲我工作。 – jpvantuyl