2

我实际上正在使用 Azure 静态 Web 应用程序为在 ReactJs 中制作的 UI 项目开发持续交付管道。我想基于 Azure DevOps 中的 git 存储库创建静态 Web 应用程序并将其部署到 Azure。这背后的原因是我看到了一个巨大的机会,可以为我每天工作的系统创建一个拉取请求环境管道,使用静态 Web 应用程序,这似乎是一个超级便宜和快速的解决方案!然后管道将允许在发布到 DEV、QA、... Prod 环境之前单独测试 Pull Request 更改。

无论如何,直奔主题。 Microsoft 官方文档仅提供了如何为 GitHub 存储库执行此操作的示例,但我找不到有关使用 Azure DevOps git 存储库时如何实现此目的的任何信息:

az staticwebapp create \
    -n my-first-static-web-app \
    -g <RESOURCE_GROUP_NAME> \
    -s https://github.com/<YOUR_GITHUB_ACCOUNT_NAME>/my-first-static-web-app \
    -l <LOCATION> \
    -b main \
    --app-artifact-location "build" \
    --token <YOUR_GITHUB_PERSONAL_ACCESS_TOKEN>

我认为az staticwebapp create提供的示例中的工作方式应该与 Azure DevOps 类似。我认为YOUR_GITHUB_PERSONAL_ACCESS_TOKENAzure DevOps 中的等价物是可以生成的访问令牌: 在此处输入图像描述

当我尝试运行以下代码时:

az staticwebapp create -l westus2 -n appNameTest1 -g TestPrEnvResourceGroup -s "https://dev.azure.com/myOrganisationName/myProjectName/_git/myRepoName -b "main" --token "generatedTokenValuefwfsdgsgsd"

我收到以下异常;

Command group 'staticwebapp' is in preview and under development. Reference and support levels: https://aka.ms/CLI_refstatus Operation returned an invalid status 'Bad Request'

在此处输入图像描述

另外,我认为这无关紧要,但它TestPrEnvResourceGroup是在该UK West位置下创建的。它并没有告诉我太多,比如令牌或其他参数是否错误......

有任何想法吗?干杯

4

1 回答 1

0

你试过这种方式吗?

您需要从 Azure 静态 Web 应用程序生成部署令牌并将其保存在 YAML 中

我对Angular 应用程序进行了同样的尝试,并且效果很好

 azure_static_web_apps_api_token: $(deployment_token)

更新:根据Github 问题,目前不支持。

我们目前不支持自动创建 Azure DevOps 管道。这是使用 Azure DevOps 的受支持路径: https ://docs.microsoft.com/en-us/azure/static-web-apps/publish-devops

您可以在此处为该功能投票

于 2021-05-26T18:43:04.227 回答