Azure网站Git Deploy错误

时间:2013-03-13 08:30:54

标签: azure orchardcms azure-web-sites kudu

我使用BitBucket中的Git Deploy将Orchard CMS网站部署到Windows Azure。

只是我的最新更改在尝试部署时遇到错误:

  

该进程无法访问该文件   'C:\ DWASFiles \站点[MyWebsite] \ VirtualDirectory0 \站点\ wwwroot的\程序App_Data \依赖性\ Joel.Net.Akismet.dll'   因为它正被另一个进程使用。

鉴于其Azure网站,我不能“停止AppPool”或类似的东西。我已经尝试停止该网站,但后来我无法进行部署停止该网站。我对如何进一步排除故障没有想法。

尝试通过ftp进行更新

没有“重启”选项,但我可以停止并启动该站点,这不起作用(502 Web服务器错误)。

通过ftp删除文件\ App_Data \ Dependencies文件夹不起作用,并得到同样的错误。

停止网站,然后通过ftp上传文件确实有效。但是尝试通过Git重新部署,我得到了类似的错误:

  

命令:deploy.cmd处理基本网站部署。 KuduSync.NET   从:   'C:\ DWASFiles \ Sites [MyWebsite] \ VirtualDirectory0 \ site \ repository':   'C:\ DWASFiles \ Sites [MyWebsite] \ VirtualDirectory0 \ site \ wwwroot'错误:   该进程无法访问该文件   'C:\ DWASFiles \站点[MyWebsite] \ VirtualDirectory0 \站点\ wwwroot的\程序App_Data \依赖性\ Markdown.dll'   因为它正被另一个进程使用。复制文件:   'App_Data \ Dependencies \ dependencies.compiled.xml'复制文件:   'App_Data \ Dependencies \ dependencies.xml'复制文件:   'App_Data \ Dependencies \ Ionic.Zip.dll'复制文件:   'App_Data \ Dependencies \ Joel.Net.Akismet.dll'复制文件:   'App_Data \ Dependencies \ Markdown.dll'网络期间发生错误   站点部署。处理基本网站部署。

我确定它不仅仅是一个dll,而是在\ App_Data \ Dependencies文件夹中的所有dll在Git部署期间都不会“停止”。

尝试在Azure网站上设置另一个网站以执行Git部署

我已经为Git设置了另一个Azure站点,以便将相同的代码分支部署到,这样可以正常工作。

但是当我将域名切换到新的Azure网站时,我的新网站不再有效,但我的旧网站可以接受git deploy。

因此,我的域名所针对的网站必须得到活动,导致更新停止工作。有没有办法阻止网站 进行Git部署?


所以根据@ David的评论从我的repo中删除Dependencies文件夹后,我收到一个新错误:

  

命令:deploy.cmd处理基本网站部署。 KuduSync.NET   从:   'C:\ DWASFiles \站点[MyWebsite] \ VirtualDirectory0 \站点\存储库'   to:'C:\ DWASFiles \ Sites [MyWebsite] \ VirtualDirectory0 \ site \ wwwroot'   错误:拒绝访问路径“Joel.Net.Akismet.dll”。仿形   file:'。gitignore'正在删除文件:   'App_Data \ Dependencies \ Joel.Net.Akismet.dll'发生错误   在网站部署期间。处理基本网站部署。

似乎Kudu同步看到Dependencies文件夹中没有文件,并试图删除它们!当我根本没有Dependencies文件夹时会发生同样的情况 - 它会尝试删除Dependencies文件夹。

@David有一个kudu忽略文件吗?


解决!

好的,我坚持下去,我终于解决了。

  • 我删除了整个app_data文件夹(首先备份),然后将其检入Git。
  • 这是推入Azure,给我一个新的果园网站
  • 然后我重新添加了我的app_data,但选择忽略app_data / dependencies文件夹
  • 推送到Git并完美更新到Azure

希望我的下一次检查仍然有效(手指交叉)

2 个答案:

答案 0 :(得分:1)

我猜测问题的根源在于您将App_Data\Dependencies文件夹提交到您的仓库中。这个文件夹是Orchard动态创建的,不应该在你的仓库中。

我怀疑如果你不这样做(通过使用.gitignore),一切都会正常工作,你不会得到这个错误。

答案 1 :(得分:0)

您可以在部署之前重新启动网站,这类似于回收应用程序池。只需点击仪表板上页脚的重启按钮即可。