Ниже приведен модуль Runbook службы автоматизации Azure, который запускает сценарий Powershell. Он проверяет, есть ли в Runbook уже запущенные задания, и, если нет, выполняет какой-нибудь скрипт.
Эта проблема:
Если я запускаю его на панели тестирования, он работает нормально, но как только я запускаю его по расписанию или запускаю как задание, он всегда существует с запущенным выходным заданием. На моем ноутбуке нет запущенных заданий, и код с моего ноутбука тоже показывает, что он не работает. Почему он хорошо работает на панели тестирования Runbook, но не работает при нормальном запуске?
param (
[string]$runbook = "test-rb",
[string]$rgName = "test-rg",
[string]$aaName = "test-aa"
)
$jobs = Get-AzAutomationJob -ResourceGroupName $rgName -AutomationAccountName $aaName -RunbookName $runbook
#$Jobs.status
# Check to see if it is already running
if (($jobs.status -contains "Running") -Or ($jobs.Status -eq "New"))
{
Write-Output "Runbook execution is stopped [$runbook] - there is another job currently running."
exit 1
}
else
{
Write-Output "Proceed with runbook execution [$runbook] - there are no interfering jobs running."
}
try {
....my script
}
catch {
....something something
}