func (a AzureClient) CleanupSubnetIfExists(resourceGroup, virtualNetwork, name string) error {
	return a.cleanupResourceIfExists(&subnetCleanup{
		rg: resourceGroup, vnet: virtualNetwork, name: name,
	})
}
func (a AzureClient) CleanupSubnetIfExists(resourceGroup, virtualNetwork, name string) error {
	return a.cleanupResourceIfExists(&subnetCleanup{
		rg: resourceGroup, vnet: virtualNetwork, name: name,
	})
}
// CleanupSubnetIfExists removes a subnet if there are no IP configurations
// (through NICs) are attached to it. Note that this method is not safe for
// multiple concurrent writers, in case of races, deployment of a machine could
// fail or resource might not be cleaned up.