Azure PowerShell не работает в Azure Dev Ops на частном агенте

Я установил 64-разрядный частный агент на свой сервер сборки Windows Server 2012 R2. Я связал это с Azure Dev Ops. На сервере сборки у меня установлена ​​только версия 5.6.0 AzureRM, потому что это требуется для сценариев, которые я хочу запустить. Если у вас есть интересующие вас вопросы, посмотрите мой вопрос: Как установить PITR для всех баз данных в эластичном пуле баз данных Azure Sql?

Если я создаю задачу Azure PowerShell v3 в DevOps Azure, чтобы запустить следующий встроенный сценарий:

Get-Module -Name AzureRM* -ListAvailable

Я получаю эту ошибку:

2018-11-14T13:26:56.0519566Z ==============================================================================
2018-11-14T13:26:56.0519655Z Task         : Azure PowerShell
2018-11-14T13:26:56.0519727Z Description  : Run a PowerShell script within an Azure environment
2018-11-14T13:26:56.0519782Z Version      : 3.1.7
2018-11-14T13:26:56.0519844Z Author       : Microsoft Corporation
2018-11-14T13:26:56.0520315Z Help         : [More Information](https://go.microsoft.com/fwlink/?LinkID=613749)
2018-11-14T13:26:56.0520404Z ==============================================================================
2018-11-14T13:26:57.1508635Z Added TLS 1.2 in session.
2018-11-14T13:26:57.4439615Z ##[command]Import-Module -Name C:\Program Files\WindowsPowerShell\Modules\AzureRM\5.6.0\AzureRM.psd1 -Global
2018-11-14T13:26:58.6759005Z ##[error]The following error occurred while loading the extended type data file: Error in TypeData "Microsoft.Azure.Commands.Common.Authentication.Abstractions.IAzureContextContainer": The TypeConverter was ignored because it already occurs.
Error in TypeData "Microsoft.Azure.Commands.Common.Authentication.Abstractions.IAzureContextContainer": The member SerializationDepth is already present.
Error in TypeData "Microsoft.Azure.Commands.Common.Authentication.ProtectedFileTokenCache": The member PropertySerializationSet is already present.
Error in TypeData "Microsoft.Azure.Commands.Common.Authentication.ProtectedFileTokenCache": The member SerializationMethod is already present.
Error in TypeData "Microsoft.Azure.Commands.Common.Authentication.AuthenticationStoreTokenCache": The member PropertySerializationSet is already present.
Error in TypeData "Microsoft.Azure.Commands.Common.Authentication.AuthenticationStoreTokenCache": The member SerializationMethod is already present.
Error in TypeData "Microsoft.Azure.Commands.Profile.Models.PSAzureContext": The member SerializationDepth is already present.
Error in TypeData "Microsoft.Azure.Commands.Profile.Models.PSAzureProfile": The member SerializationDepth is already present.

Если я войду на сервер сборки как учетная запись сервера сборки и открою окно PowerShell, все будет работать нормально. Он также отлично работает в обычной задаче PowerShell в DevOps Azure.

Мой сценарий PowerShell должен выполняться в контексте учетной записи Azure. Как мне этого добиться?

РЕДАКТИРОВАТЬ

Я пробовал задачи Azure PowerShell v1 и v2, но это не сработало. Я также попытался указать версию PowerShell в разделе параметров версии как версию 5.6, а также последнюю установленную версию. Ни один из тех не работал.

0 ответов

Другие вопросы по тегам