如何将 Azure DevOps Git 存储库与 Azure 静态 Web 应用程序一起使用?

How to use Azure DevOps Git Repository with Azure Static Web App?

Azure 有一个新的(差不多)静态托管产品,它将非常有用。这个想法是您可以将静态站点代码检查到 Git,并将其部署到您的站点。您甚至可以将分支视为一种预览工作流。

问题是 Azure 静态 Web 服务似乎只能与 Github 一起使用。

我们组织的所有存储库都在 Azure DevOps 中,这是一个用于我们的存储库、构建管道和 Azure Web 服务的无缝统一环境。我们所有的开发人员都设置了 Azure Dev ops git 帐户,他们没有(非私人)github 帐户。

我们不想在 Azure 之外设置重复的 git 托管 - 以及安全、授权或与 Active Directory 链接的痛苦。

我们想将 Azure Git 与 Azure 静态网络一起使用。

在很大程度上,git是git。

是否有人有任何解决方法、技巧或教程来使这两个 Microsoft Azure 产品相互通信?

Azure DevOps 支持的预计到达时间是 2 月。 您可以做的是:

  • 创建静态 Web 应用程序而不将其链接到 GitHub
  • 使用任务将 Azure Pipelines YAML 添加到您的存储库(我们将提供 您可以 copy/paste 的 YAML 示例)。任务看起来很像 GitHub 行动方面的投入和能力。你需要 为部署令牌设置管道变量(从 传送门)。
  • 尚不支持 PRs/environments。我们没有相同的钩子 GitHub 根据 PR open/close 采取行动。我们会继续调查。

请参考this ticket。如果您有任何问题或建议,也请在工单中分享。

Azure Devops 对 Azure 静态 Web 应用程序的支持已在 public preview.

中宣布并可用

您可以阅读文档以使用 Azure Devops.

发布应用程序

我也发布了一个video and a blog来发布一个angular申请,你可以参考一下。

Azure 静态网站现在支持 Azure DevOps Git Repo 和来自 Azure DevOps 管道的持续部署。请按照以下步骤操作:

第 1 步: 在创建资源页面中使用 Other 作为部署源

第 2 步:创建资源后,获取部署令牌

在 Azure DevOps Git 存储库中提交代码后

第 3 步: 创建入门管道并使用以下代码片段(使用上面获取的部署令牌)

trigger:
- main

pool:
  vmImage: ubuntu-latest

steps:
  - checkout: self
    submodules: true
  - task: AzureStaticWebApp@0
    inputs:
      app_location: '/WebSite'
      api_location: '/api'
      output_location: 'dist/WebSite'
    env:
      azure_static_web_apps_api_token: $(deployment_token)

以上代码片段适用于以下 Azure DevOps git 存储库结构

我写了一个 step by step guide 来做同样的事情。如果您需要更多信息,请参考。