Как импортировать модуль PowerShell для использования в конвейерной задаче - PullRequest
0 голосов
/ 26 июня 2019

Я создаю конвейер сборки в DevOps Azure.У меня есть задача PowerShell, которая вызывает скрипт внутри файла - это не «встроенный» PowerShell.Для этого скрипта нужен модуль Az.Accounts, поэтому я добавил Import-Module Az.Accounts.Когда я запускаю конвейер, я получаю следующее:

Import-Module : The specified module 'Az.Accounts' was not loaded because no valid module file was found in any module 
directory.
At D:\a\1\s\XXX\XXX\XXX.ps1:14 char:1
+ Import-Module Az.Accounts
+ ~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ResourceUnavailable: (Az.Accounts:String) [Import-Module], FileNotFoundException
    + FullyQualifiedErrorId : Modules_ModuleNotFound,Microsoft.PowerShell.Commands.ImportModuleCommand

Как добавить отсутствующий модуль, чтобы мой скрипт мог работать?

Ответы [ 2 ]

1 голос
/ 27 июня 2019

На размещенных агентах не установлены модули Az - у них есть более старые модули AzureRM.

Вы можете использовать Install-Module для их установки.Или вы можете переписать свои сценарии для использования AzureRM.

0 голосов
/ 27 июня 2019

По умолчанию в размещенный агент Windows входит только модуль AzureRM, который является более старым. С модулем Az Azure PowerShell теперь совместим с PowerShell 5.1 в Windows и PowerShell Core 6.x и более поздних версиях на всех поддерживаемых платформах, включая Windows , macOS и Linux. Это самое большое и важное изменение.

Вы можете добавить встроенную задачу powershell для установки модуля Az.Accounts. enter image description here

Обратите внимание, что если вы не добавите параметр -force в скрипт, вы получите эту информацию в процессе.

User declined to install module (Az.Accounts).
...