2014-06-11 137 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