Необходимо понимать команду «Выполнить» в Azure через REST API.

Я следил за этой документацией и пытался запустить простой сценарий оболочки в виртуальной машине, используя это.

https://docs.microsoft.com/en-us/rest/api/compute/virtual%20machines%20run%20commands/runcommand#runcommandinputparameter

Но каким должно быть содержимое тела почтового запроса, не ясно. CommandID может быть RunShellScript, но где мы указываем значение скрипта.

Я пробовал такое тело

{
    commandId: "RunShellScript",
        script: "/path/scriptname"
}

с другими вариантами

script: 'scriptname'
script: 'sh scriptname'

и другие, в результате чего

{
"error": {
"code": "BadRequest",
"message": "Error converting value "/home/admin1/quick-python-test.sh" to type 'System.Collections.Generic.List`1[System.String]'. Path 'script', line 3, position 52.",
"target": "runCommandInput.script"
}
}

Кто-нибудь может мне помочь, как это сделать правильно? Я новичок в Azure.


person Anindya Sankar Dey    schedule 26.09.2019    source источник


Ответы (1)


Вот образец тела запроса, чтобы запустить сценарий bash на виртуальной машине через Azure REST API:

{
  "commandId": "RunShellScript",
  "script": [
    "echo $arg1 $arg2"
  ],
  "parameters": [
    {
      "name": "arg1",
      "value": "hello"
    },
    {
      "name": "arg2",
      "value": "world"
    }
  ]
}
person Charles Xu    schedule 27.09.2019