Azure Git部署到站点文件夹而不是wwwroot

dci*_*iso 12 git github bitbucket azure laravel-4

尽管我找不到解决方案,但这似乎是一件容易的事.我最近开始了一个需要在Azure上托管的Laravel 4项目.在进行更改时,我已将Azure链接到bitbucket进行部署.但是,这会将文件推送到Azure(公用文件夹)中的"wwwroot"文件夹中.一些框架文件不应该在公共文件夹中,因此我想将其推送到父文件夹"site".

经过一些研究后,我发现你可以使用.deployment文件来配置部署选项(https://github.com/projectkudu/kudu/wiki/Deployment-hooks)

所以我试过.deployment文件:

[config]
DEPLOYMENT_TARGET = C:\DWASFiles\Sites\SITENAME\VirtualDirectory0\site
Run Code Online (Sandbox Code Playgroud)

不幸的是,这会导致错误:

源目录和目标目录不能是彼此的子目录

这可能是因为存储库文件夹位于站点文件夹中.如果我将部署文件更改为:

[config]
DEPLOYMENT_SOURCE = C:\DWASFiles\Sites\SITENAME\VirtualDirectory0\repo
DEPLOYMENT_TARGET = C:\DWASFiles\Sites\SITENAME\VirtualDirectory0\site
Run Code Online (Sandbox Code Playgroud)

它运行没有错误但它没有任何因为repo文件夹是空的,我想如果我可以让Azure将文件放入\ repo而不是\ site\repository一切都会好的.

也许我过于复杂化了,我真的很感激任何建议.最糟糕的情况我可以直接推送到"wwwroot"文件夹并使用web.config来修复问题.

Dav*_*bbo 7

今天这个支持得不是很好,但您可以通过在应用设置中设置一些内容来使其工作:

SCM_REPOSITORY_PATH=..\repository
SCM_TARGET_PATH=..
Run Code Online (Sandbox Code Playgroud)

这基本上告诉它将repo直接放入VirtualDirectory0(而不是VirtualDirectory0\site),然后部署到VirtualDirectory0\site(而不是VirtualDirectory0\site\wwwroot).

这假设您的repo包含名为wwwroot的文件夹.

这些路径的一些信息在这里