Как выполнить пользовательский сценарий в модуле Runbook Azure несколько раз? - PullRequest
0 голосов
/ 13 февраля 2019

На самом деле я пытаюсь создать книгу выполнения Azure с выполнением пользовательского сценария.Runbook запускается на виртуальной машине Linux.Я строю простой скрипт, который создает каталог на виртуальной машине.Если я выполню runbook в первый раз, каталог будет создан мгновенно.Затем я удаляю каталог, снова запускаю runbook, и каталог больше не создается.Проведя некоторые исследования в Интернете, я обнаружил подсказку, что на виртуальной машине можно запускать сценарий с одинаковыми параметрами только один раз.Поэтому я добавил метку времени в моей SettingString.К сожалению, либо это не решает проблему, либо в моем коде есть ошибка.

Надеюсь, вы поможете мне найти мою ошибку или дадите подсказку, как можно выполнить несколько сценариевраз против той же виртуальной машины.

Большое спасибо!

$ timestamp = (Get-Date) .Ticks

Запись-вывод $ timestamp

$SettingsString = '{"timestamp": "$ timestamp", "fileUris": ["myURI"], "commandToExecute": "sh myscript.sh"}';

$ ProtectedSettingsString = '{"storageAccountName": "xxx", "storageAccountKey": "xxx"} '

Set-AzureRmVMExtension -ResourceGroupName "xxx" -Location "xxx" -VMName "xxx" -Name "xxx" -Publisher "Microsoft.OSTCExtensions"-ExtensionType "CustomScriptForLinux" -TypeHandlerVersion 1.5 -SettingString $ SettingsString -ProtectedSettingString $ ProtectedSettingsString

1 Ответ

0 голосов
/ 13 февраля 2019

Вы можете использовать Set-AzVMExtension с параметром -ForceRerun, чтобы достичь этого, вам нужно каждый раз вводить новую строку.

https://docs.microsoft.com/en-us/powershell/module/az.compute/set-azvmextension?view=azps-1.3.0

...