<# .DESCRIPTION An runbook which stop IoT services. .NOTES AUTHOR: Andrey Fedorov E-Mail: fedorov@bizkit.ru LASTEDIT: 22 oct 2018 #> $connectionName = "AzureRunAsConnection" try { # Get the connection "AzureRunAsConnection " $servicePrincipalConnection=Get-AutomationConnection -Name $connectionName "Logging in to Azure..." Add-AzureRmAccount ` -ServicePrincipal ` -TenantId $servicePrincipalConnection.TenantId ` -ApplicationId $servicePrincipalConnection.ApplicationId ` -CertificateThumbprint $servicePrincipalConnection.CertificateThumbprint $ResourceGroupName = "RemoteMonitoringTest1018" $AppServiceName = "RemoteMonitoringTest1018" $StreamingJobName = "streamingjobs-lbcnd" $VMname = "vm-lbcnd" Write-Output "---------------------------------------------------------------------------" Write-Output "Execute Stop-AzureRmStreamAnalyticsJob..." Stop-AzureRmStreamAnalyticsJob -ResourceGroupName $ResourceGroupName -Name $StreamingJobName Write-Output "---------------------------------------------------------------------------" Write-Output "Execute Stop-AzureRmWebApp..." Stop-AzureRmWebApp -ResourceGroupName $ResourceGroupName -Name $AppServiceName Write-Output "---------------------------------------------------------------------------" Write-Output "Execute Stop-AzureRmVM..." Stop-AzureRmVM -ResourceGroupName $ResourceGroupName -Name $VMname -Force Write-Output "---------------------------------------------------------------------------" Write-Output "Done" Write-Output "---------------------------------------------------------------------------" } catch { if (!$servicePrincipalConnection) { $ErrorMessage = "Connection $connectionName not found." throw $ErrorMessage } else{ Write-Error -Message $_.Exception throw $_.Exception } }