使用 GitHub Actions 发布 API
你已将 API 添加到 Web 应用,并且它们都在本地运行。 现在可将 API 和应用发布到 Azure 静态 Web 应用。
创建 Azure Static Web Apps 实例并要求它监视主分支时,系统会为你生成 GitHub 操作。 GitHub 操作会侦听你的存储库的主分支来检测提交和拉取请求。 随后,当 GitHub 操作检测到这些更改时,它会生成并发布应用。
在创建 Azure Static Web Apps 资源时,你通过接受 Api 的默认值为 API 项目提供了文件夹位置。 Azure Static Web Apps 在该文件夹中生成并部署了 Azure Functions 应用。 但是,应用不能工作,因为尚未创建 HTTP GET API。
触发 GitHub 操作
GitHub 操作已准备好在检测到对主分支进行的更改后,便生成并发布 Web 应用和 API。 可以直接提交,也可以创建对主分支的拉取请求。 这两种更改都会触发 GitHub 操作。 在主分支上检测到更改时,它将触发 GitHub 操作,以在你的实时网站的同一个 URL 上发布应用。
具有预览 URL 的预生产环境
有时,你要在发布到实时网站之前在暂存站点中查看更改。 Azure Static Web Apps 支持通过预生产环境查看更改,每个环境都有自己的预览 URL。 可以通过对 GitHub 操作所监视的分支创建拉取请求来创建预生产环境。 实时网站不会受到影响。 相反,新版本的应用在其自己的预生产环境中创建。 如果返回并在 GitHub 上检查拉取请求,则会注意到在“对话”选项卡中发布了预生产版本的链接。
下表显示了 Azure Static Web Apps 如何将你的应用发布到不同的 URL。 应用会发布到一个 URL,而对同一个分支进行的拉取请求会发布到另一个 URL。 这些自动生成的 URL 由 Azure Static Web Apps 为生产应用和拉取请求提供。 可以选择将自定义域分配给生产应用。
源 | 说明 | URL |
---|---|---|
主分支 | 实时网站 URL 的示例 | https://purple-rain-062d03304.azurestaticapps.net/ |
拉取请求 #5 | 预览 URL 的示例 | https://purple-rain-062d03304-5.<location>.azurestaticapps.net/ |
你当前在 api 分支中工作。 你从 api 分支向主分支发出拉取请求。 针对主分支创建拉取请求时,GitHub 操作会将应用发布到预生产环境。
在工作流完成你的应用的构建和部署后,GitHub 机器人会向你的拉取请求添加一个注释。 此注释包含指向预生产环境的 URL 的链接。 可以选择此链接来查看暂存更改。
接下来,你创建一个拉取请求并访问你的应用的暂存版本。