gpt4 book ai didi

azure - 是否可以在 YAML 管道中创建带有标签的 Azure 资源组?

转载 作者:行者123 更新时间:2023-12-03 00:38:12 25 4
gpt4 key购买 nike

我们的订阅有一项政策,禁止任何人在不同时为其提供标签的情况下创建资源组。

Failed to create the resource group. Error: "Resource 'my-new-resource-group' was disallowed by policy. Policy identifiers: '[{"policyAssignment":{"name":"Require a tag on resource groups" etc...

在 ARM 模板中,我可以在创建资源时指定标签。我似乎无法使用实际的资源组来做到这一点...

我正在使用的任务如下:

    - task: AzureResourceManagerTemplateDeployment@3
displayName: Deploy ARM Template
inputs:
deploymentScope: 'Resource Group'
azureResourceManagerConnection: '<<SERVICE CONNECTION>>'
subscriptionId: '<<SUBSCRIPTIONID>>'
action: 'Create Or Update Resource Group'
resourceGroupName: "rg-$(resourcePrefix)-$(environmentShortName)"
location: 'North Europe'
templateLocation: 'Linked artifact'
csmFile: '$(Pipeline.Workspace)/drop-iac/webapi.json'
csmParametersFile: '$(Pipeline.Workspace)/drop-iac/webapi.parameters.json'
deploymentMode: 'Incremental'

有没有办法在此任务期间指定标签?搜索文档没有产生任何有用的信息

最佳答案

无法使用 AzureResourceManagerTemplateDeployment@3 任务设置标签,并将 deploymentScope 设置为 资源组,如文档 here 所示。没有参数可以做到这一点。但是,如果您将 deploymentScope 更改为 Subscription 也是可能的,但这需要您将模板重构为订阅模板。这将允许您在模板内定义资源组及其标签,而不是依赖 AzureResourceManagerTemplateDeployment@3 任务来创建它。

有关于订阅模板的文档 here但简而言之,您需要:

如果您的 ARM 模板存储在公共(public)存储库中,这应该很简单,否则您需要以某种方式通过 https 访问它们。过去,我使用过 Azure 存储帐户并使用 SAS token 授予对文件的访问权限,但还有许多其他方法可以解决该问题。

关于azure - 是否可以在 YAML 管道中创建带有标签的 Azure 资源组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67923644/

25 4 0