blob: 2771abf9275c1740247381fcb19fe7ae438268ce [file] [log] [blame]
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
---
- hosts: localhost
tasks:
- block:
- import_tasks: roles/azure/tasks/log_analytics_ws_common.yml
- import_tasks: roles/azure/tasks/application_insights_common.yml
- name: Delete application insights
azure_rm_resource:
resource_group: "{{ resource_group }}"
provider: insights
resource_type: components
resource_name: "{{ app_insights_name }}"
api_version: '2020-02-02'
state: absent
- name: Delete workbook
azure_rm_resource:
resource_group: "{{ resource_group }}"
provider: insights
resource_type: workbooks
resource_name: "{{ workbook_name }}"
api_version: '2020-02-12'
state: absent
when: workbook_exists
- name: Delete dashboard
azure_rm_resource:
resource_group: "{{ resource_group }}"
provider: Portal
resource_type: dashboards
resource_name: "{{ dashboard_name }}"
api_version: '2019-01-01-preview'
state: absent
- name: Delete log analytics workspace
azure_rm_resource:
resource_group: "{{ resource_group }}"
provider: OperationalInsights
resource_type: workspaces
resource_name: "{{ log_workspace_name }}"
api_version: '2015-03-20'
state: absent
when: az_oms_integration_needed
- name: Delete User Assigned Identity
azure_rm_resource:
resource_group: "{{ resource_group }}"
provider: ManagedIdentity
resource_type: userAssignedIdentities
resource_name: "{{ user_assigned_identity if user_assigned_identity else vmss_name + '-ua-msi' }}"
api_version: '2018-11-30'
state: absent
when: use_adlsg2
- name: Delete ADLS Gen2 storage Account
azure_rm_storageaccount:
resource_group: "{{ resource_group }}"
name: "{{ item.split('@')[1].split('.')[0] }}"
force_delete_nonempty: yes
state: absent
loop:
"{{ instance_volumes_adls.split(',') }}"
when: use_adlsg2
- name: Delete VM Scale Set
azure_rm_virtualmachinescaleset:
resource_group: "{{ resource_group }}"
name: "{{ vmss_name }}"
remove_on_absent: all
state: absent
when: use_multiple_vmss is not defined or not use_multiple_vmss
- name: Include azure_multiple_vmss_vars.yml definition
include_vars:
file: "{{ deploy_path }}/conf/azure_multiple_vmss_vars.yml"
name: azure_multiple_vmss_vars
when: use_multiple_vmss
- name: Delete VM Scale Sets
azure_rm_virtualmachinescaleset:
resource_group: "{{ resource_group }}"
name: "{{ vmss_name }}-{{ item.name_suffix }}"
remove_on_absent: all
state: absent
with_items:
- "{{ azure_multiple_vmss_vars.vars_list }}"
when: use_multiple_vmss
- name: Delete azure proxy virtual machine if one was created
azure_rm_virtualmachine:
resource_group: "{{ resource_group }}"
name: "{{ azure_proxy_host }}"
remove_on_absent: all
state: absent
when: azure_proxy_host is defined and azure_proxy_host|length
- name: Delete corresponding network security group
azure_rm_securitygroup:
resource_group: "{{ resource_group }}"
name: "{{ azure_proxy_host }}-nsg"
state: absent
when: azure_proxy_host is defined and azure_proxy_host|length
- name: Get facts for virtual network
azure_rm_virtualnetwork_info:
resource_group: "{{ resource_group }}"
name: "{{ vnet }}"
register: vnet_facts
- name: Delete corresponding virtual network if one was created
azure_rm_virtualnetwork:
resource_group: "{{ resource_group }}"
name: "{{ vnet }}"
state: absent
when: >
vnet_facts.virtualnetworks|length and
vnet_facts.virtualnetworks|map(attribute='tags')|map(attribute='deployment_type')|join('') == 'muchos'
- name: Delete the resource group if it is empty
azure_rm_resourcegroup:
name: "{{ resource_group }}"
state: absent
retries: 30
delay: 15
register: resourcegroupresult
until: resourcegroupresult is not failed