问题描述
有没有办法通过 ARM 模板在禁用模式下部署流分析作业?
解决方法
是的,有办法做到这一点。没有属性可以在 ARM 的停止状态下创建它,但部署脚本用于扩展 ARM 模板。
您应该将如下所示的部分添加到您的 ARM 模板中。另外,不要忘记向 Azure 分析作业添加依赖条件,否则它可能会尝试停止不存在的作业..
{
"type": "Microsoft.Resources/deploymentScripts","apiVersion": "2020-10-01","name": "runBashWithOutputs","location": "[resourceGroup().location]","kind": "AzureCLI","identity": {
"type": "UserAssigned","userAssignedIdentities": {
"[parameters('identity')]": {
}
}
},"properties": {
"forceUpdateTag": "[parameters('utcValue')]","AzCliVersion": "2.15.0","timeout": "PT30M","arguments": "'foo' 'bar'","scriptContent": "result=$(az stream-analytics job stop --resource-group $1);echo $result | jq -c '{Result: map({id: .id})}' > $AZ_SCRIPTS_OUTPUT_PATH","cleanupPreference": "OnSuccess","retentionInterval": "P1D"
}
}
您可以在他们的文档中查看更多信息,Use deployment scripts in ARM templates