我正在尝试构建仅在创建虚拟机时触发的 CI/CD 自动化。 我已经创建了逻辑应用程序并将其连接到资源写入成功事件类型上的事件网格作为触发器,然后一旦触发逻辑应用程序,它将调用在新虚拟机中运行某些脚本的 Runbook。
我面临的问题是逻辑应用程序会在订阅中的所有写入操作上触发,这使得解决方案难以排除故障,偏离主要目标,并且消耗更多。
目标是在创建新虚拟机时启动 ci/cd 自动化(订阅级别的集中式方法,其中虚拟机名称可以是任何名称)
逻辑应用程序是否具有特定的事件网格过滤器以仅让虚拟机创建事件?如果没有,我可以使用另一个建议的天蓝色服务吗?
Microsoft.Compute/virtualMachines/write
吗?
创建新虚拟机或更新现有虚拟机
您可以使用“Azure 虚拟桌面启动时触发逻辑应用”示例来获取灵感。你不能按原样使用它(它处理Microsoft.Compute/virtualMachines/start/action
),但想法是相似的。
{
"operatorType": "StringIn",
"key": "data.operationName",
"values": [
"Microsoft.Compute/virtualMachines/write"
]
},
{
"operatorType": "StringIn",
"key": "data.status",
"values": [
"Succeeded"
]
},
{
"operatorType": "StringNotIn",
"key": "data.previousProvisioningState",
"values": [
"Succeeded"
]
}