Ich verwende ein Azure Powershell Runbook, um ein Powershell-Skript auf einer azure virtuellen Maschine auszuführen. Ich finde keine Möglichkeit, die Ausgabe des Remote-Skripts zu erhalten, wenn ich die azure Resource Manager-Funktionen verwende, die ich für meine Bereitstellung verwenden muss. Es gibt viele Beispiele, um die ‚Nicht-Ressourcen-Manager‘ Art und Weise verwenden, die wie folgt aussieht:Wie kann ich die Ausgabe einer CustomScriptExtension erhalten, wenn ich Azure Resource Manager verwende?
# Execute remote script
$Vm = Get-AzureVM -ServiceName "DSCDemo" -Name "DSCPull"
Set-AzureVMCustomScriptExtension -ContainerName scripts -StorageAccountName psmag -FileName user.ps1 -Run user.ps1 -VM $vm | Update-AzureVM -Verbose
# Get output
$vm = Get-AzureVM -ServiceName DSCDemo -Name DSCPull
$output = $Vm.ResourceExtensionStatusList.ExtensionSettingStatus
Die $ Ausgangsgröße enthält dann die Standard- und Fehlerausgabe des Skripts, die ausgeführt wurde. Der gleiche Code sieht ziemlich ähnlich für meine Ressourcen-Manager Version:
#Execute remote script
$vm = Get-AzureRmVM -Name "DSCPull" -ResourceGroupName $ResourceGroupName
$result = Set-AzureRmVMCustomScriptExtension -ResourceGroupName $ResourceGroupName `
-VMName "DSCPull" `
-Name 'user' `
-Location $vm.Location `
-StorageAccountName psmag `
-StorageAccountKey '<key>' `
-FileName "user.ps1" `
-ContainerName "scripts" `
-RunFile "user.ps1"
$output = Get-AzureRmVM -Name $VMName -ResourceGroupName $ResourceGroupName -Status
Aber der Ausgang ist völlig anders und ich etwas finde, dass die Standardausgabe oder Fehlerausgabe enthält.
Weiß jemand, wie man die Ausgabe mit Hilfe der azure Ressourcenmanagerfunktionen holt?
Grüße
Christian Erhardt