Как передать переменные azure -pipelines.yml в шаблоны ARM с помощью AzureResourceManagerTemplateDeployment - PullRequest
1 голос
/ 21 января 2020

Я начинаю работать с Azure и попробовал следующие шаги:

  • Я добавил секрет в Azure Хранилище.
  • Я связал участника службы с мои Azure конвейеры DevOps.
  • Я создал группу переменных, связанную с моим хранилищем.
  • Я создал группу переменных с некоторыми переменными.
  • Я создал azure -pipelines.yaml с переменными: группа: группа1 группа: группа2 часть
  • У меня есть - task: AzureResourceManagerTemplateDeployment@3 с шаблоном с параметрами. Как мне удовлетворить параметры от переменных групп?

Ответы [ 2 ]

4 голосов
/ 22 января 2020

Вы можете попробовать использовать параметр overrideParameters для задачи переопределения параметров шаблона ARM с помощью переменных, определенных в ваших группах переменных. Проверьте здесь для получения дополнительных параметров об этой задаче.

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

        overrideParameters: -storageAcctName azurerg -Username $(vmusername) -azureKeyVaultName $(fabrikamFibre)

Для доступа к AzureKeyVault вы также можете использовать Azure Задача хранилища ключей , чтобы получить свои секреты в своем постройте конвейер или интегрируйте KeyVault в шаблон ARM, как указывал @Daniel Mann. Проверьте здесь для официального руководства Microsoft.

0 голосов
/ 21 января 2020

Группы переменных не предназначены для использования с конвейерами YAML. Добавьте шаг AzureKeyVault в свой конвейер, чтобы получить секреты из keyvault.

Или свяжите свой шаблон ARM непосредственно с keyvault; Шаблоны ARM имеют встроенную поддержку параметров keyvault:

"adminPassword": {
        "reference": {
          "keyVault": {
          "id": "/subscriptions/<subscription-id>/resourceGroups/<rg-name>/providers/Microsoft.KeyVault/vaults/<vault-name>"
          },
          "secretName": "ExamplePassword"
        }
      }

Или напишите свое приложение для извлечения секретов непосредственно из keyvault во время выполнения.

...