如何从 VSTS PowerShell 脚本禁用或停止和启用 Azure 中的调度程序作业?

How to disable or stop and enable the scheduler Jobs in Azure from VSTS PowerShell scripts?

PFA 6 PFA 2 PFA 3 PFA PFA 4 PFA 5 我在 Azure 中有一些触发作业 运行。我已经在 Azure 中为这些作业创建了调度程序作业,这样每当我禁用它时都会停止 运行 触发的作业而不是终止。但我想使用插件或 Powershell 脚本从 VSTS 禁用这些调度程序作业。我可以使用 Powershell 脚本停止和启动连续网络作业,但触发了 jobs/scheduler 作业我不确定如何禁用 VSTS 定义中的 Powershell/Plugins/Tasks。

恐怕你不能禁用调度程序作业,你可以 full stopping a web app

您可以添加一个 Azure Powershell 脚本任务并将下面的脚本添加到 Enable/Disable 调度程序作业:

将作业设置为 "Disabled":

Set-AzureRmSchedulerHttpJob -ResourceGroupName ABC -JobCollectionName ABC -JobName ABC -JobState Disabled

将作业设置为 "Enabled":

Set-AzureRmSchedulerHttpJob -ResourceGroupName ABC -JobCollectionName ABC -JobName ABC -JobState Enabled

如果要enable/disableJobCollection,可以使用Enable-AzureRmSchedulerJobCollectionDisable-AzureRmSchedulerJobCollection命令:

Enable-AzureRmSchedulerJobCollection -ResourceGroupName ABC -JobCollectionName ABC

使用下面的脚本:

$JobC = Get-AzureRmSchedulerJobCollection -ResourceGroupName jobcollection -JobCollectionName jobcollection

If ($JobC.State -eq "Enabled")
{
    Write-Host "JobCollection is enabled, disabling it..."
    Disable-AzureRmSchedulerJobCollection -ResourceGroupName jobcollection -JobCollectionName jobcollection
    Write-Host "JobCollection is disabled now."
}
Else
{
    Write-Host "JobCollection has already been disabled."
}