Использовать интерфейс командной строки Azure в задаче Azure Powershell - PullRequest
0 голосов
/ 22 октября 2018

Я хочу создать сценарий Powershell, который выполняет некоторые команды AzureRm..., а затем выполняет некоторые команды Az.Причина в том, что некоторые команды доступны только через Az.

. При попытке выполнить эти сценарии в конвейере выпуска сценарий всегда завершается ошибкой:

ERROR: Please run 'az login' to setup account.

ВыполнениеКоманды Az в задаче Azure CLI работают должным образом, поскольку задача выполняется Az Login.

Я не хочу передавать секрет, необходимый для входа в сценарий, если это вообще возможно.Я бы предпочел разделить сценарии на два этапа в конвейере.

Можно ли использовать команды Az в задаче Azure Powershell без передачи секретов вручную?

Минимальный пример:

  • Создание нового конвейера выпуска
  • Добавление задачи Azure PowerShell
  • Использование встроенного сценария
  • Как сценарий, выполнить az account show

Ответы [ 2 ]

0 голосов
/ 20 августа 2019

Когда у меня смешанные команды, я добавляю это в свою задачу Azure Powershell

az login --service-principal --username "$(ServicePrincipal)" --password "$(AzureDevOps-ServicePrincipal-Secret)" --tenant "$(Azure_Tenant)"

У меня есть идентификаторы SP и Tenant ID в качестве переменных, а секрет для SP хранится в Azure.KeyVault связан с группой переменных библиотеки.В качестве альтернативы вы можете просто сохранить секрет в обычной группе переменных / переменных и нажать значок замка, чтобы защитить его.

Возможно, вам потребуется запустить az account set -s $(SubscriptionName), если у SP есть доступ к нескольким подпискам в одном и том же арендаторе.

0 голосов
/ 22 октября 2018

В любом случае, это не будет работать так, потому что вы должны проходить аутентификацию в утилите az отдельно.az cli и powershell не передают информацию о соединении.Вы можете попробовать использовать шаг z с некоторой командой перед шагом powershell.это заставит az авторизоваться, и после этого вы сможете использовать его внутри powershell ste.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...