невозможно установить модуль Azsk CI / CD pipe, когда модуль Azure Devops устанавливает модуль - PullRequest
0 голосов
/ 14 декабря 2018

У меня есть Azsk , реализованный в моем конвейере Azure Devops.Прежде чем что-то работает нормально, и я могу нормально запустить конвейер.я ничего не изменил, но он выдал мне ошибку atm

2018-12-14T10:41:12.7861566Z Installing Module AzSK...
2018-12-14T10:41:58.9483761Z ##[error]Cannot process argument transformation on parameter 'InstalledModuleInfo'. Cannot convert the "System.Object[]" value of type "System.Object[]" to type "System.Management.Automation.PSModuleInfo".
2018-12-14T10:41:58.9850394Z ##[section]Finishing: AzSK_SVTs 

Google подтолкнул меня к этому: https://github.com/Azure/azure-cli/issues/2357 Но это обновит модуль на моей локальной машине, пока проблема заключается вустановка модуля в моем конвейере (какой-то контейнер, в котором работает azure devops).

Кто-нибудь в последнее время сталкивался с этой проблемой или знает, как ее исправить?

1 Ответ

0 голосов
/ 23 декабря 2018

Из официального Azsk GitHub:

Сообщение об ошибке: "PackageManagement \ Install-Package: невозможно обработать преобразование аргумента для параметра 'InstalledModuleInfo' ..."

Если вы установили AzureRM PowerShell с помощью Azure SDK на своем компьютере, он обычно устанавливается в Program Files.Вы можете выполнить приведенную ниже команду, чтобы подтвердить

Get-Module -Name AzureRM* -ListAvailable 

Если это так, то вам нужно полностью удалить модули Azure PowerShell, установленные через Azure SDK, из Программных файлов.Вы также можете вернуться на всякий случай, если вам нужно.AzSK также нужны модули AzureRM.Но он будет загружаться из PSGallery, а не из Azure SDK.Эта загрузка модулей AzureRM из PS Gallery будет конфликтовать с модулями AzureRM, установленными через Azure SDK.После очистки, если вы снова запустите приведенную ниже команду, она по умолчанию извлечет версию 5.2.0 AzureRM в область текущего пользователя, а не в Program Files.

Install-Module AzSK -Scope CurrentUser -AllowClobber 

В случае, если вам все еще нужно использоватьдругую версию AzureRm (которую вы удалили), вы можете установить ее из PS Gallery, используя следующую команду:

Install-Module AzureRM -Scope CurrentUser -AllowClobber -RequiredVersion <versionNumber e.g. “3.8.0” >

Примечание. Если опция «-AllowClobber» недоступна в вашей версии PSзатем замените его на «-Force»

Если у вас несколько версий AzureRM, то это зависит от того, какая версия модуля загружается первой в сеансе PS.В этом случае, чтобы избежать путаницы, закройте сеанс PS установщика и в новом сеансе PS сначала выполните следующее:

Import-Module AzSK

Затем вы можете запустить одну или несколько команд AzSK или другие команды AzureRm.«Модуль импорта» обеспечивает загрузку нужной версии AzureRM в текущий сеанс.

Итак, в вашем случае это размещенный агент, попробуйте добавить задачу PowerShell перед задачей Azsk и выполните командывыше.

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