git - 无法通过 Git 在 azure 上部署静态网站

标签 git azure kudu

我的 Git 存储库中有一个简单的项目结构。

[repo]
  - api  (Contains a .NET WebApi application)
  - client
    - dist  (Contains a static html/js website using AngularJS)

我设置了从 Bitbucket 的 api 目录到 Azure 网站的持续部署,没有出现任何故障。我设置了一个名为 project 的应用程序设置,并将值设置为 api/ProjectName.csproj,效果很好。

我创建了一个单独的 Azure 网站,并尝试以与静态网站相同的方式设置持续部署,但它不起作用。我创建了一个名为 project 的应用程序设置,其值为 client/dist

当它尝试部署时,我在错误日志中收到以下错误消息。

Unable to determine which solution file to build. C:\DWASFiles\Sites\flighty\VirtualDirectory0\site\repository\MyProject.sln, C:\DWASFiles\Sites\flighty\VirtualDirectory0\site\repository\client\components\moment-datepicker\MomentDatepicker.sln.

最佳答案

这种情况现在比应有的情况要复杂一些,但这里有一种方法您应该能够使其正常工作。

您需要生成 custom deployment script 。调用方式如下:

azure site deploymentscript --basic -p client\dist

这将生成.deployment 文件和deploy.cmd 文件。不要提交 .deployment 文件,因为它会扰乱您的 WebAPI 场景。相反,在您的静态站点中:

  • 将deploy.cmd重命名为DeployStaticSite.cmd(这是可选的,只是为了清楚它的作用)。提交此文件。
  • 在 Azure 门户应用设置中,将 command 设置为 DeployStaticSite.cmd。删除您的项目设置。

关于git - 无法通过 Git 在 azure 上部署静态网站,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19459147/

相关文章:

自定义 SSH 端口上的 Gitlab

git - Azure 上的 Bitbucket 持续部署不起作用

Azure WebJobs 连接字符串配置(AzureWebJobsDashboard??)

azure - 事件中心——消费者横向扩展时如何防止重复处理

php - Azure 应用服务 - Kudu 部署失败 "Missing composer executable"

Git ignore 不忽略指定的文件夹/文件

mysql - 令人难以置信的慢 GitLab 与 MySQL

azure - 如何基于函数槽调用Azure Functions

node.js - Azure linux上的Git推送 Node js失败,kudu想要运行dotnet命令

azure - 如何使用参数自动从 Azure Web 应用程序获取完整内存转储