resource myVm 'Microsoft.Compute/virtualMachines@2020-01-01' = {
name : 'myVm'
...
}
resource myChild 'Microsoft.Compute/virtualMachines/mockChildType@2020-01-01' = {
name : 'myVm/myChild'
...
}
resource myVm 'Microsoft.Compute/virtualMachines@2020-01-01' existing = {
name : 'myVm'
}
resource myAlerts 'Microsoft.Insights/metricAlerts@2020-01-01' = {
scope : myVm
name : 'myAlerts'
...
}
Child of extension resource
resource myVm 'Microsoft.Compute/virtualMachines@2020-01-01' existing = {
name : 'myVm'
}
resource myChild 'Microsoft.Insights/metricAlerts/mockChildType@2020-01-01' = {
scope : myVm
name : 'myAlerts/myChild'
...
}
Extension of child resource
resource myChild 'Microsoft.Compute/virtualMachines/mockChildType@2020-01-01' existing = {
name : 'myVm/myChild'
}
resource myAlerts 'Microsoft.Insights/metricAlerts@2020-01-01' = {
scope : myChild
name : 'myAlerts'
...
}
Proposed syntax ('parent' property)
resource myVm 'Microsoft.Compute/virtualMachines@2020-01-01' existing = {
name : 'myVm'
}
resource myChild 'Microsoft.Compute/virtualMachines/mockChildType@2020-01-01' = {
parent : myVm
name : 'myChild'
...
}
Child of extension resource
resource myVm 'Microsoft.Compute/virtualMachines@2020-01-01' existing = {
name : 'myVm'
}
resource myAlerts 'Microsoft.Insights/metricAlerts@2020-01-01' existing = {
scope : myVm
name : 'myAlerts'
}
resource myChild 'Microsoft.Insights/metricAlerts/mockChildType@2020-01-01' = {
parent : myAlerts
name : 'myChild'
...
}
Extension of child resource
resource myVm 'Microsoft.Compute/virtualMachines@2020-01-01' existing = {
name : 'myVm'
}
resource myChild 'Microsoft.Compute/virtualMachines/mockChildType@2020-01-01' existing = {
name : 'myChild'
}
resource myAlerts 'Microsoft.Insights/metricAlerts@2020-01-01' = {
scope : myChild
name : 'myAlerts'
...
}
Discussed 'nested' syntax
resource myVm 'Microsoft.Compute/virtualMachines@2020-01-01' existing = {
name : 'myVm'
resource myChild 'mockChildType@2020-01-01' = {
name : 'myChild'
...
}
}
Child of extension resource
resource myVm 'Microsoft.Compute/virtualMachines@2020-01-01' existing = {
name : 'myVm'
}
resource myAlerts 'Microsoft.Insights/metricAlerts@2020-01-01' existing = {
scope : myVm
name : 'myAlerts'
resource myChild 'mockChildType@2020-01-01' = {
name : 'myChild'
...
}
}
Extension of child resource
resource myVm 'Microsoft.Compute/virtualMachines@2020-01-01' existing = {
name : 'myVm'
resource myChild 'mockChildType@2020-01-01' existing = {
name : 'myChild'
}
}
resource myAlerts 'Microsoft.Insights/metricAlerts@2020-01-01' = {
scope : myVm /myChild // TBD on this syntax to refer to the child of myVm
name : 'myAlerts'
...
}