如何在 Dev-ops 发布管道中将单个工件部署到多个 Web 应用程序

How to deploy single artifacts to multiple web app in Dev-ops Release Pipeline

我有一个发布管道,我正在其中将 latest/selected 工件部署到一个 Web 应用程序。 我想在单个发布管道中将相同的工件发布到多个 Web 应用程序。

我有两个选择。

  1. 为每个网络应用程序创建一个多任务。 (这是可以实现的,但每次管道更改都需要每当有新的网络应用程序出现时)
  2. 使用 Power shell 但不确定为什么我的命令在这里不起作用。出现错误 术语 'Publish-AzWebApp' 未被识别为 cmdlet 的名称, 尽管此命令在本地系统中运行良好但在管道中运行不正常。
Publish-AzWebApp -ResourceGroupName gggroup -Name $app -ArchivePath $(System.DefaultWorkingDirectory)/**/*.zip

此命令将运行循环。

有什么建议!!!

对于选项 2,Publish-AzWebApp 是经典部署的一个步骤。但是,Azure DevOps 服务的 PowerShell 任务不再支持经典部署模块。

相反,您可以使用 Azure PowerShell task

此外,您可以使用 REST API 部署 ZIP 文件,然后使用 PowerShell 调用 REST API。

POST https://<app_name>.scm.azurewebsites.net/api/zipdeploy

POST 请求必须在邮件正文中包含 .zip 文件。使用 HTTP BASIC 身份验证在请求中提供应用程序的部署凭据。单击 this document 了解详细信息。