Использовать Azure подробности участника службы DevOps в Azure задаче Powershell - PullRequest
1 голос
/ 28 марта 2020

При написании Azure CLI-скрипта в Azure конвейере DevOps вы можете получить доступ к идентификатору serviceprincpal, ключу и tenantid. Есть ли способ получить эту информацию в Azure задаче Powershell?

1 Ответ

1 голос
/ 30 марта 2020

Вход addSpnToEnvironment, который добавляет идентификатор субъекта службы и ключ конечной точки Azure, выбранной вами в контексте сценария, - это один параметр, доступный только в Azure ClI Task , но не Azure Задача Powershell .

Есть ли способ получить эту информацию в задаче Azure Powershell?

В качестве альтернативного обходного пути мы можем определите переменные в задании в Azure ClI Task, отметьте этот документ .

Шаги для проверки:

1.Используйте последнюю версию Azure CLI task 2.0-preview и выберите Powershell type. Попробуйте встроенный скрипт следующим образом:

Write-Host "##vso[task.setvariable variable=SpId;]$env:servicePrincipalId"

Write-Host "##vso[task.setvariable variable=SpKey;]$env:servicePrincipalKey"

Write-Host "##vso[task.setvariable variable=TenantId;]$env:tenantId"

Write-Host "##vso[task.setvariable variable=TestVar;]JustForTest"

2. Затем добавьте один Azure Powershell task после Azure CLI Task для проверки:

Write-Host $env:SpId

Write-Host $env:SpKey

Write-Host $env:TenantId

Write-Host $env:TestVar

3. Выход:

enter image description here

Итак, если вы определяете переменные области задания с помощью Write-Host "##vso[task.setvariable variable=xxx]xxx" (Powershell) или echo "##vso[task.setvariable variable=xxx]xxx" (Пакет), вы можете использовать что-то вроде $env:VariableName для доступа к Информация. *** в журнале объясняется тем, что это секреты, спроецированные Azure Devops, поэтому они маскируются.

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