tripleo-common/workbooks/parameters.yaml
Michele Baldessari d830d0b15e Fix generate fencing command
On master this command is currently broken:
(undercloud) [stack@undercloud ~]$ openstack overcloud generate fencing instackenv.json --output fencing.yaml
Invalid input [name=generate_fencing_parameters, class=DirectWorkflowSpec, missing=['os_auth', 'fence_action']]

The reason for this is that via (A)
I63f3a579af5aa70080f8c9cdd5eb0e8f5b3d17da (Add workflow to generate
fencing parameters) we moved to use a workflow in order to generate
fencing parameters. This workflow took a bunch of inputs which we then
deprecated via two different ways:

(B) os_auth
https://review.openstack.org/#/c/570349/ and
https://review.openstack.org/#/c/567896/ we removed some for pxe_ssh but
we did not do it fully in the workbooks

(C) fence_action
Same goes for https://review.openstack.org/#/c/550028/ and
https://review.openstack.org/#/c/556211/ we removed fence_action but
since the workflow still used it as a parameter we broke things

Problem is that the review at (A) got proposed before(B) and (C), but
was merged after them. So it was never amended to account for the
changes introduced in (B) and (C). This change amends things so that
the command works correctly again:
(undercloud) [stack@undercloud ~]$ openstack overcloud generate fencing instackenv.json --output fencing.yaml
(undercloud) [stack@undercloud ~]$ ls -l fencing.yaml
-rw-rw-r--. 1 stack stack 513 Jun 28 15:46 fencing.yaml

Change-Id: I0262c493c217b64891e7da1bb3853b0d1366faef
Closes-Bug: #1779168
2018-06-28 17:46:37 +02:00

54 lines
1.4 KiB
YAML

---
version: '2.0'
name: tripleo.parameters.v1
description: TripleO Parameter-related Workflows
workflows:
generate_fencing_parameters:
description: >
This workflow will generate fencing parameters from the given inputs for
a deployment.
input:
- nodes_json
- delay
- ipmi_level
- ipmi_cipher
- ipmi_lanplus
- queue_name: tripleo
tags:
- tripleo-common-managed
output:
fencing_parameters: <% $.get('fencing_parameters', {}) %>
tasks:
generate_fencing_params:
action: tripleo.parameters.generate_fencing
input:
nodes_json: <% $.nodes_json %>
delay: <% $.delay %>
ipmi_level: <% $.ipmi_level %>
ipmi_cipher: <% $.ipmi_cipher %>
ipmi_lanplus: <% $.ipmi_lanplus %>
on-complete: send_message
publish:
fencing_parameters: <% task().result %>
status: SUCCESS
message: 'Fencing parameters successfully generated'
publish-on-error:
status: FAILED
message: <% task().result %>
send_message:
workflow: tripleo.messaging.v1.send
input:
queue_name: <% $.queue_name %>
type: <% execution().name %>
status: <% $.status %>
execution: <% execution() %>
message: <% $.get('message', '') %>
payload:
fencing_parameters: <% $.get('fencing_parameters', {}) %>