Мне не удается использовать модуль SharePointPnpPowerShellOnline PS как часть моего конвейера выпуска. Мы используем Azure DevOps с размещенным агентом сборки на Azure ВМ. Я хочу выполнить sh загрузку артефактов сборки в Microsoft Teams / Sharepoint.
- Я установил SharePointPnpPowerShellOnline на сервере (под учетной записью, с которой работает агент сборки DevOps), однако агенту сборки не удалось выполнить скрипт в первой строке, в которой используется указанный модуль (вызов
Connect-PnPOnline -Url https://... -Credentials ...
). Сообщение об ошибке: «Connect-PnPOnline: термин« Connect-PnPOnline »не распознается как имя командлета, функции, файла сценария». Таким образом, он ведет себя так, как будто модуль вообще не установлен. - Тем не менее, когда я захожу на сервер (с правильной учетной записью), модуль найден, и я могу успешно выполнить Connect-PnPOnline.
- используемой Azure задачей конвейера DevOps является «PowerShell».
Разве агент сборки не сможет найти установленный модуль, как я установил его для его пользователя?
Редактировать: я сделал еще несколько «отладок», а именно:
- регистрация имени пользователя, под которым выполняется скрипт, с помощью [Environment] :: UserName, чтобы убедиться, что я установил модуль для нужного пользователя , результат: соответствует ожидаемому пользователю.
- Вывод списка установленных модулей с помощью Get-InstalledModule в моем скрипте. Как только агент выполняет его в конвейере выпуска, он выдает пустой список. все же выполнение того же сценария на виртуальной машине (через RemoteDesktop) дает установленные модули
Я предполагаю, что я делаю глупую ошибку новичка, потому что у меня не так уж много опыта с PowerShell ...