如何使用 AzureResourceManagerTemplateDeployment 将 azure-pipelines.yml 变量传递给 ARM 模板

Jas*_*per 2 azure azure-resource-manager azure-devops

我开始使用 Azure 并尝试了以下步骤:

  • 我向 Azure Vault 添加了一个机密。
  • 我将服务主体链接到我的 Azure DevOps 管道。
  • 我创建了一个链接到我的保险库的变量组。
  • 我用一些变量创建了一个变量组。
  • 我创建了一个带有变量的 azure-pipelines.yaml: group: group1 group: group2 part
  • 我有- task: AzureResourceManagerTemplateDeployment@3一个带参数的模板。如何满足变量组的参数?

Lev*_*SFT 9

您可以尝试对任务使用overrideParameters参数,以使用变量组中定义的变量覆盖 ARM 模板的参数。请点击这里了解有关此任务的详细参数。

- task: AzureResourceManagerTemplateDeployment@3
      inputs:
        azureResourceManagerConnection: <connection>

        overrideParameters: -storageAcctName azurerg -Username $(vmusername) -azureKeyVaultName $(fabrikamFibre)
Run Code Online (Sandbox Code Playgroud)

为了访问 AzureKeyVault,您还可以使用Azure Key Vault 任务来获取构建管道中的机密,或者像 @Daniel Mann 指出的那样将 KeyVault 集成到您的 ARM 模板中。检查这里的微软官方教程。