--- version: '2.0' host-evacuate: description: Evacuate VMs from given host type: direct input: - search_opts - on_shared_storage tasks: list_vms: action: nova.servers_list search_opts=<% $.search_opts %> publish: vms: <% $.list_vms %> on-success: filter_vms filter_vms: with-items: vm in <% $.vms %> action: custom.filter flavor=<% $.vm.flavor.id %> metadata=<% $.vm.metadata %> uuid=<% $.vm.id %> publish: filtered_vms: <% $.filter_vms %> on-success: evacuate_vms retry: delay: 5 count: 10 evacuate_vms: with-items: vm in <% $.filtered_vms %> action: custom.evacuate uuid=<% $.vm.uuid %> evacuate=<% $.vm.evacuate %> on_shared_storage=<% $.on_shared_storage %> retry: delay: 5 count: 10