4c24a04977
Update the scale workbook to use the standard message sending workflow. This workflow reduces the boilerplate that is copied between workflows by defining the message structure, providing the retry logic and ensuring the task on a "FAILED" message. The workflow also offers optional persistence in Swift. If the plan name is given to the workflow it will store the messages in a Swift container named <plan_name>-messages. Change-Id: I906e0ae92bcd084f4bf6ec669d6be0f71dc7a29b Related-Bug: #1757372
63 lines
1.7 KiB
YAML
63 lines
1.7 KiB
YAML
---
|
|
version: '2.0'
|
|
name: tripleo.scale.v1
|
|
description: TripleO Overcloud Deployment Workflows v1
|
|
|
|
workflows:
|
|
|
|
delete_node:
|
|
description: deletes given overcloud nodes and updates the stack
|
|
|
|
input:
|
|
- container
|
|
- nodes
|
|
- timeout: 240
|
|
- queue_name: tripleo
|
|
|
|
tags:
|
|
- tripleo-common-managed
|
|
|
|
tasks:
|
|
|
|
delete_node:
|
|
action: tripleo.scale.delete_node nodes=<% $.nodes %> timeout=<% $.timeout %> container=<% $.container %>
|
|
on-success: wait_for_stack_in_progress
|
|
on-error: set_delete_node_failed
|
|
|
|
set_delete_node_failed:
|
|
on-success: send_message
|
|
publish:
|
|
status: FAILED
|
|
message: <% task(delete_node).result %>
|
|
|
|
wait_for_stack_in_progress:
|
|
workflow: tripleo.stack.v1.wait_for_stack_in_progress stack=<% $.container %>
|
|
on-success: wait_for_stack_complete
|
|
on-error: wait_for_stack_in_progress_failed
|
|
|
|
wait_for_stack_in_progress_failed:
|
|
on-success: send_message
|
|
publish:
|
|
status: FAILED
|
|
message: <% task(wait_for_stack_in_progress).result %>
|
|
|
|
wait_for_stack_complete:
|
|
workflow: tripleo.stack.v1.wait_for_stack_complete_or_failed stack=<% $.container %>
|
|
on-success: send_message
|
|
on-error: wait_for_stack_complete_failed
|
|
|
|
wait_for_stack_complete_failed:
|
|
on-success: send_message
|
|
publish:
|
|
status: FAILED
|
|
message: <% task(wait_for_stack_complete).result %>
|
|
|
|
send_message:
|
|
workflow: tripleo.messaging.v1.send
|
|
input:
|
|
queue_name: <% $.queue_name %>
|
|
type: <% execution().name %>
|
|
status: <% $.status %>
|
|
execution: <% execution() %>
|
|
message: <% $.get('message', '') %>
|