我们已经使用以下非常简单的手臂模板部署了PowerBI嵌入式工作区集合

{
  "$schema": "http://schema.management.azure.com/schemas/2015-01-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {},
  "variables": {},
  "resources": [
    {
      "comments": "Test Power BI  workspace collection",
      "apiVersion": "2016-01-29",
      "type": "Microsoft.PowerBI/workspaceCollections",
      "location": "westeurope",
      "sku": {
        "name": "S1",
        "tier": "Standard"
      },
      "name": "myTestPowerBiCollection",
      "tags": {
        "displayNmae": "Test Power BI workspace collection"
      }
    }
  ],
  "outputs": {}
}


对于部署,我们使用了众所周知的Powershell命令New-AzureRmResourceGroupDeployment创建后,如果尝试再次执行该命令,它将失败并显示以下消息

New-AzureRmResourceGroupDeployment : Resource  Microsoft.PowerBI/workspaceCollections 'myTestPowerBiCollection' failed with message
{
   "error": {
     "code": "BadRequest",
     "message": ""
   }
}


如果我们删除该集合并再次执行,则不会出现问题。我尝试使用-Mode参数(Incremental, Complete)的两个选项,但都没有帮助,即使Incremental是默认选项。

对于我们来说,这是一个主要问题,因为我们想将集合作为连续交付的一部分进行供应,并且我们要执行多次。

关于如何绕过此问题的任何想法?

最佳答案

如您所提到的,如果存在PowerBI Workspace集合名称,那么当我们尝试再次部署PowerBI Workspace集合时,它将引起期望。

如果可以添加定制的逻辑代码,则可以使用Get-AzureRmPowerBIWorkspaceCollection来检查PowerBI Workspace Collection是否存在。如果存在,它将返回PowershellBIworkspaceCollection对象,或者将引发未找到异常。

我们还可以使用Remove-AzureRmPowerBIWorkspaceCollection命令删除PowerBI Workspace集合。如果存在PowerBI工作区连接,我们可以根据逻辑跳过部署或删除并续订它。

关于powerbi - 从 ARM 模板更新PowerBI工作区集合时出错,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42209695/

10-16 20:12