stackql-deploy 2.2.0

Infrastructure-as-code framework for declarative cloud resource management using StackQL
/*+ createorupdate */
INSERT INTO azure.compute.virtual_machines(
  resource_group_name,
  subscription_id,
  vm_name,
  location,
  properties,
  tags
)
SELECT
  '{{ resource_group_name }}',
  '{{ subscription_id }}',
  '{{ vm_name }}',
  '{{ location }}',
  '{"hardwareProfile": {{ hardwareProfile }}, "storageProfile": {{ storageProfile }}, "osProfile": {{ osProfile }}, "networkProfile": {{ networkProfile }}}',
  '{{ global_tags }}';

/*+ statecheck, retries=5, retry_delay=5 */
SELECT COUNT(*) as count
FROM azure.compute.virtual_machines
WHERE subscription_id = '{{ subscription_id }}'
AND resource_group_name = '{{ resource_group_name }}'
AND vm_name = '{{ vm_name }}'
AND provisioning_state = 'Succeeded'

/*+ exports */
SELECT vm_id, '{{ vm_name }}' as vm_name
FROM azure.compute.virtual_machines
WHERE subscription_id = '{{ subscription_id }}'
AND resource_group_name = '{{ resource_group_name }}'
AND vm_name = '{{ vm_name }}'

/*+ delete */
DELETE FROM azure.compute.virtual_machines
WHERE subscription_id = '{{ subscription_id }}'
AND resource_group_name = '{{ resource_group_name }}'
AND vm_name = '{{ vm_name }}'