簡體   English   中英

Azure 自動化帳戶 Webhook 響應

[英]Azure Automation Account Webhook Response

我正在嘗試使用 Azure 自動化帳戶中的 webhook 執行 PowerShell 腳本。 我的 Powershell 腳本將通過 webhook 執行關閉 VM。 我收到作為作業 ID 的響應,所以我的要求是得到響應,因為給定的 VmName $VmName 應該被打印出來,並與作業 ID 一起成功停止消息。 如何使用腳本獲取該響應我應該在哪里添加以獲取響應。

在此處輸入圖像描述

Param
(
[Parameter (Mandatory = $false)]
[object] $WebhookData
)

if ($WebhookData) {
$WebhookName = $WebHookData.WebhookName
$WebhookHeaders = $WebhookData.RequestHeader
$WebhookBody = $WebhookData.RequestBody
$input = (ConvertFrom-Json -InputObject $WebhookData.RequestBody)
}

# Login to Automation Account
$connectionName = 'AzureRunAsConnection'

try
{
# Get the connection "AzureRunAsConnection "
$servicePrincipalConnection= Get-AutomationConnection -Name $connectionName

"Logging in to Azure..."
#Add-AzureRMAccount 
Connect-AzAccount -ServicePrincipal -TenantId $servicePrincipalConnection.TenantId -ApplicationId $servicePrincipalConnection.ApplicationId -CertificateThumbprint $servicePrincipalConnection.CertificateThumbprint -WarningAction Ignore
}
catch {

if (!$servicePrincipalConnection)
{
$ErrorMessage = "Connection $connectionName not found."
throw $ErrorMessage
} else{
Write-Error -Message $_.Exception
throw $_.Exception
}
}

$ResourceGroupName = $input.ResourceGroupName
$VmName = $input.VmName


Stop-AzVM -Name $VmName -ResourceGroupName $ResourceGroupName  -Force

Write-Output "VM $VmName in Resource Group $ResourceGroupName was stopped Successfully"

如果您正在嘗試驗證腳本中的 VM 狀態,您可以在下面檢查


$Stop = Stop-AzVM -Name $VmName -ResourceGroupName $ResourceGroupName  -Force
if(($Stop.Status) -eq "Succeeded"){
Write-Output "VM $VmName in Resource Group $ResourceGroupName was stopped Successfully"
}
# Or can check VM status seperatly by using 
Get-AzVM $VmName -Status |Select-Object Name,PowerState

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM