/*+ createorupdate */
INSERT INTO azure.network.virtual_networks(
virtual_network_name,
resource_group_name,
subscription_id,
location,
properties,
tags
)
SELECT
'{{ vnet_name }}',
'{{ resource_group_name }}',
'{{ subscription_id }}',
'{{ location }}',
'{"addressSpace": {"addressPrefixes":["{{ vnet_cidr_block }}"]}}',
'{{ global_tags }}'
/*+ statecheck, retries=5, retry_delay=5 */
SELECT COUNT(*) as count FROM azure.network.virtual_networks
WHERE subscription_id = '{{ subscription_id }}'
AND resource_group_name = '{{ resource_group_name }}'
AND virtual_network_name = '{{ vnet_name }}'
AND JSON_EXTRACT(address_space, '$.addressPrefixes[0]') = '{{ vnet_cidr_block }}'
/*+ exports */
SELECT '{{ vnet_name }}' as vnet_name,
'{{ vnet_cidr_block }}' as vnet_cidr_block
/*+ delete */
DELETE FROM azure.network.virtual_networks
WHERE subscription_id = '{{ subscription_id }}'
AND resource_group_name = '{{ resource_group_name }}'
AND virtual_network_name = '{{ vnet_name }}'