Public/IaaS/vm/Set-CmAzIaasUpdateManagement.json

{
    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "AutomationAccountName": {
            "type": "String"
        },
        "UpdateSchedules": {
            "type": "Array"
        }
    },
    "resources": [
        {
            "type": "Microsoft.Automation/automationAccounts/softwareUpdateConfigurations",
            "apiVersion": "2017-05-15-preview",
            "name": "[concat(parameters('AutomationAccountName'), '/', parameters('UpdateSchedules')[copyIndex('ScheduleCopy')].details.name)]",
            "properties": {
                "updateConfiguration": {
                    "operatingSystem": "Windows",
                    "windows": {
                        "includedUpdateClassifications": "[parameters('UpdateSchedules')[copyIndex('ScheduleCopy')].updateTypes]",
                        "rebootSetting": "IfRequired"
                    },
                    "targets": {
                        "azureQueries": [
                            {
                                "scope": [
                                    "[subscription().Id]"
                                ],
                                "tagSettings": {
                                    "tags": {
                                        "cm-update": [
                                            "[parameters('UpdateSchedules')[copyIndex('ScheduleCopy')].tagValue]"
                                        ]
                                    },
                                    "filterOperator": "Any"
                                },
                                "locations": [
                                    "[parameters('UpdateSchedules')[copyIndex('ScheduleCopy')].location]"
                                ]
                            }
                        ]
                    },
                    "duration": "PT6H"
                },
                "tasks": {},
                "scheduleInfo": "[parameters('UpdateSchedules')[copyIndex('ScheduleCopy')].details]"
            },
            "copy": {
                "name": "ScheduleCopy",
                "count": "[length(parameters('UpdateSchedules'))]"
            }
        }
    ]
}