Проблема
У меня есть YAML-файл лазурного конвейера. Он может работать через служебное соединение, которое обращается к субъекту службы со всеми надлежащими полномочиями и т. Д.
Но сейчас я пытаюсь очистить код; у нас есть несколько субъектов-служб, работающих в нескольких подписках и группах ресурсов. Им необходимо создать учетные записи хранения, которые должны быть уникальными.
Поэтому я пытаюсь создать учетную запись хранения, частично построенную из связанной подписки и группы ресурсов субъекта-службы, создающего учетную запись хранения.
Пример решения
Для подписки это довольно просто. Я могу сделать что-то вроде этого из сценария PowerShell, вызываемого внутри конвейера:
$subscriptionId = $(az account show --query 'id' -o tsv)
Write-Output "##vso[task.setvariable variable=AZURE_SUBSCRIPTION_ID;isoutput=true;issecret=true]$subscriptionId"
Теперь у меня установлены переменные $subscription ID
и AZURE_SUBSCRIPTION_ID
, и я могу получить доступ к информации о подписке в самом конвейере.
Вопрос
Но как я могу сделать что-то подобное с группами ресурсов?
Нет эквивалента az account show
с группами ресурсов без знания самого имени группы ресурсов. (Например, мне нужно ввести az group show -name <RG-name>
, но я пытаюсь получить именно это имя.)
Опять же, для ясности, я работаю внутри определенной группы ресурсов и подписки, это те, которые связаны с подключением к службе. Теперь я просто хочу, чтобы эта информация была доступна конвейеру.
am running inside of a particular resource group
Подключение службы с использованием SP ограничено только подпиской или группой управления - person silent   schedule 18.01.2021az group list
дает мне список, и я не уверен, что список детерминирован (например, группа, которую я хочу, всегда находится под номером 2 в списке), и (2) это кажется очень хрупким способом построения конвейер: этот номер в списке каждый раз будет отличаться. - person Mike Williamson   schedule 19.01.2021