mirror of
https://github.com/gryf/mistral-evacuate.git
synced 2026-02-08 09:25:46 +01:00
Also minimalize numbers of calls to nova API Signed-off-by: Dawid Deja <dawid.deja@intel.com>
35 lines
856 B
YAML
35 lines
856 B
YAML
---
|
|
version: '2.0'
|
|
|
|
host-evacuate:
|
|
description: Evacuate VMs from given host
|
|
type: direct
|
|
input:
|
|
- search_opts
|
|
- on_shared_storage
|
|
- flavor_extra_specs
|
|
|
|
tasks:
|
|
list_vms:
|
|
action: nova.servers_list search_opts=<% $.search_opts %>
|
|
publish:
|
|
vms: <% $.list_vms %>
|
|
on-success: filter_vms
|
|
|
|
list_flavors:
|
|
action: custom.find_flavors extra_specs=<% $.flavor_extra_specs %>
|
|
publish:
|
|
flavors: <% $.list_flavors %>
|
|
on-success: filter_vms
|
|
|
|
filter_vms:
|
|
join: all
|
|
action: custom.filter flavors=<% $.flavors %> vms=<% $.vms %>
|
|
publish:
|
|
filtered_vms: <% $.filter_vms %>
|
|
on-success: evacuate_vms
|
|
|
|
evacuate_vms:
|
|
with-items: vm in <% $.filtered_vms %>
|
|
action: nova.servers_evacuate server=<% $.vm %> on_shared_storage=<% $.on_shared_storage %>
|