如何更改由 Azure 静态 Web 应用 CI/CD Github 操作为每个拉取请求生成的预览环境上的应用程序设置?
我可以转到门户,导航到生成的环境并更改其应用程序设置。为每个新的拉取请求手动执行此操作很容易出错,并且很快就会变得乏味。
我在Azure Static Webapps 文档的构建配置中找不到任何对此的引用,所以我假设它不能以这种方式配置。 我在 CLI 文档 中也找不到任何对 SWA 环境的引用。 我研究了部署环境,但看起来这是其他类型的部署环境,因为它不断提到 devcenter。
自 2023 年 4 月起,CLI 版本 2.48。现在这是可能的。 您可以通过 CLI 设置环境特定变量
// First collect the preview env name via -> result[x].name
az staticwebapp environment list -n swa-resource-name-xyz
// Then use the name to set the env vars
az staticwebapp appsettings set --name swa-resource-name-xyz --environment-name looked-that-up --setting-names CUSTOM_ENV_VAR=Different_On_Feature_Branch
确实,我很怀念 Azure 门户也有这个选项。它有点隐藏在页面顶部的“环境变量”部分。有一个下拉菜单,您可以在其中选择环境。
在
Azure Portal
中,创建静态Web应用程序时,提供GitHub Repo
和Branch
详细信息后,我们将获得预览工作流文件的选项。
我可以转到门户,导航到生成的环境并更改其应用程序设置
是的,在配置部分我们可以选择添加
App settings
。但这是手工作业,不建议遵循。
一旦我们单击
Review + create
并创建静态 Web 应用程序,就会在 .github/workflows
中创建一个名为 GitHub Repository
的新文件夹。
它包含与我们在 Azure 门户中创建
preview file
时看到的相同的工作流文件 (Static WebApp
)。
我们可以手动编辑工作流程。
要更新工作流程中的
appsettings/configurations
,我们可以在现有 workflow
文件中指定步骤。
我们可以使用
Powershell/Azure CLI
命令来更新 Appsettings
。
az staticwebapp appsettings set --name YourStaticWebAppname --setting-names "message=HelloEveryOne"
***更新应用程序设置的示例代码:*** 在工作流程中的
Build and deploy
步骤之前,添加以下步骤。
- name: Build And Deploy
- run : Your Update appsettings Script
要编辑工作流程文件,请单击
.github/workflow
=> .yml
文件
根据 GitHub 中的讨论,默认情况下目前不支持将应用程序设置添加到预览环境
Azure Static Web Apps CI/CD
。
目前,Azure 静态 Web 应用 CI/CD 和 Azure CLI 均不支持在特定环境中设置应用程序设置。 GitHub 上有一个关于它的讨论。