【问题标题】:Are both AzureResourceGroupDeployment and AzureResourceManagerTemplateDeployment same?AzureResourceGroupDeployment 和 AzureResourceManagerTemplateDeployment 是否相同?
【发布时间】:2023-02-10 17:24:27
【问题描述】:

AzureResourceGroupDeployment 和 AzureResourceManagerTemplateDeployment 是否相同?

- task: AzureResourceManagerTemplateDeployment@3
  displayName: 'deploy using AzureResourceManagerTemplateDeployment'
  inputs:    
    azureResourceManagerConnection: sc 
    subscriptionId: id
    resourceGroupName: rg
    location: $(location)    
    csmFile: ${{ parameters.root }}/Infrastructure/data/template.bicep
    csmParametersFile: env.json
    overrideParameters: '-environmentAbbreviation "env"'
    deploymentMode: 'Incremental'
    deploymentOutputs: dataoutputs

- task: AzureResourceGroupDeployment@2
  displayName: 'deploy using AzureResourceGroupDeployment'
  inputs:
    azureSubscription: ec
    resourceGroupName: rg
    csmFile: ${{ parameters.root }}/Infrastructure/data/template.bicep
    csmParametersFile: env.json
    overrideParameters: '-environmentAbbreviation "env"'
    deploymentMode: 'Incremental'
    deploymentOutputs: dataoutputs

【问题讨论】:

    标签: azure azure-devops azure-resource-manager azure-resource-group


    【解决方案1】:

    AzureResourceGroupDeployment 和 AzureResourceManagerTemplateDeployment 是否相同?

    根据anderseide

    • 主要区别在于AzureResourceManagerTemplateDeployment包含deploymentScope,您可以在其中选择Management GroupSubscriptionResource Group级别。

    参考资料:ARM Template Deployment Task - Deployment ScopeAzure Resource Group Deployment taskBattle of AzureResourceManagerTemplateDeployment and AzureResourceGroupDeployment

    【讨论】:

      【解决方案2】:

      12 版本中存在的 AzureResourceGroupDeployment 已在 version 3 中重命名为 AzureResourceManagerTemplateDeployment。它们的用途相同,但后者具有一些额外的功能。

      我注意到的差异:

      1. 添加了对资源组以外的部署范围的支持:deploymentScope
        • 因此,不再需要 resourceGroup 输入——只有在部署资源组时才需要。
      2. 重命名服务连接输入:从azureSubscriptionazureResourceManagerConnection
        • 不过,别名ConnectedServiceName 保持不变。
      3. 添加了一个选项来覆盖服务连接中指定的订阅 ID:subscriptionId
        • 以前,订阅总是从服务连接中获取。
        • 文档错误地指出 subscriptionId 输入是必需的,除非部署到管理组。这不是真的——提供任何虚假值(包括根本不指定输入,导致 undefined,这是虚假的)会从服务连接触发其加载。请参阅code of the task
        • subscriptionId 有一个别名 subscriptionName,但不要被愚弄:他们都只接受 GUID,而不接受名字。这是因为它们直接将值插入用于 REST API 调用的 URI。
      4. 删除了对部署 DevOps 代理的支持:enableDeploymentPrerequisites 和相关的 action 的许多值

      【讨论】:

        猜你喜欢
        • 2011-05-08
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-09-17
        • 2013-05-26
        • 1970-01-01
        • 2012-05-08
        相关资源
        最近更新 更多