Не удалось установить артефакт Run PowerShell с помощью CommandNotFoundException

Я пытаюсь загрузить и запустить сценарий PowerShell (из хранилища BLOB-объектов) с помощью артефакта Запуск Powershell на существующей виртуальной машине в лабораторных условиях Azure DevTest.

Я получаю следующую ошибку и предполагаю, что делаю что-то глупое.

& : The term './script.ps1' is not recognized as the name of a cmdlet, 
function, script file, or operable program. Check the spelling of the name, or 
if a path was included, verify that the path is correct and try again.
At line:1 char:3
+ & ./script.ps1
+   ~~~~~~~~~~~~
    + CategoryInfo          : ObjectNotFound: (./script.ps1:String) [], Comman 
   dNotFoundException
    + FullyQualifiedErrorId : CommandNotFoundException

Вот моя установка ...

Изображение, показывающее настройку артефакта с совпадением URL и имени скрипта

Я также пробовал синтаксис массива JSON, который дал тот же результат, и недопустимый URL-адрес, который дал ошибку 404, поэтому кажется, что он загружает мой скрипт, но затем не может его найти.


person drs9222    schedule 21.08.2018    source источник


Ответы (1)


Ниже приведена информация, которую я написал некоторое время назад. Несколько замечаний:

  • На момент написания этой статьи структура папок не поддерживается. Следовательно, скрипт должен находиться в корне контейнера.
  • Убедитесь, что ваш BLOB-объект является общедоступным

Сначала вам понадобится ваш файл в хранилище Azure. После загрузки в контейнер щелкните файл, чтобы перейти к его свойствам, и скопируйте поле URL.

В качестве примера я создал следующий файл сценария Run.ps1 и загрузил его в хранилище как большой двоичный объект:

param ( [string]$drive = "c:\" )
param ( [string]$folderName = "DefaultFolderName" )

New-Item -Path $drive -Name $folderName -ItemType "directory"

Теперь, добавляя артефакт Run PowerShell на виртуальную машину, мы предоставляем следующую информацию:

URI файла: поле URL скопировано с предыдущего шага. (например, https://myblob.blob.core.windows.net/mycontainer/Run.ps1)

Сценарий для запуска: имя сценария PS1 (например, Run.ps1).

Аргументы скрипта: аргументы, как если бы вы написали их в конце вашей команды (например, -drive "d: \" -folderName "MyFolder")

person joerage    schedule 21.08.2018
comment
Я видел это в своем исследовании до того, как опубликовал. Мой сценарий даже не запускается. Тем не менее, похоже, что он загружается. - person drs9222; 22.08.2018