Azure Конвейеры, размещенный агент Ubuntu и Azure задача CLI с PowerShell Core: используйте модуль Az и выполните аутентификацию должным образом - PullRequest
0 голосов
/ 18 июня 2020

У меня есть пара скриптов PowerShell, которые используют модуль PowerShell Az ( Link ). В результате определенных требований теперь необходимо запускать эти сценарии на размещенном агенте Ubuntu (18.04).

Итак, я выбрал задачу Azure CLI с PowerShell Core в качестве типа сценария

enter image description here

Первая проблема, с которой я сталкиваюсь, заключается в том, что агент не знает командлетов Az. Вторая проблема заключается в том, что даже когда доступны командлеты Az, нет аутентифицированного контекста для работы с ними.

Как я могу решить эти две проблемы?

1 Ответ

0 голосов
/ 18 июня 2020

Сначала необходимо установить модуль Az на размещенный агент Ubuntu. Это можно сделать с помощью задачи Azure CLI с типом сценария PowerShell Core, выполнив

Install-Module -Name Az -AllowClobber -Force

Чтобы затем иметь возможность аутентифицироваться, необходимо включить в задаче

enter image description here

, а затем в сценарии PowerShell для аутентификации через

$tenantIdEnv = $env:tenantId
$spnIdEnv = $env:servicePrincipalId
$spnKeyEnvSecureString = ConvertTo-SecureString $env:servicePrincipalKey -AsPlainText -Force
$credentialsServicePrincipal = New-Object System.Management.Automation.PSCredential($spnIdEnv, $spnKeyEnvSecureString)
Connect-AzAccount -ServicePrincipal -TenantId $tenantIdEnv -Credential $credentialsServicePrincipal
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...