It seems we want to output stack events irrespective of verbosity,
as per https://review.opendev.org/#/c/724856/. There is no point of
having all the useless logic for verbosity in wait_for_stack_ready().
Also fixes stack update for scale-down to list events.
Change-Id: I96a2a2255253aa2feac62b67ad5d5813e3126a20
This change will provide the operator the ability to better control
a given deployment or operational task while leveraging the
tripleoclient.
A utility has been added to sanitize user input. This will ensure
the parsed string is in valid ansible limit format.
Change-Id: I190f6efe8d728f124c18ce80be715ae7c5c0da01
Depends-On: I0056fdbe3d9807e6baf4a1645a632ab9eb1b2668
Signed-off-by: Luke Short <ekultails@gmail.com>
Co-Authored-By: Kevin Carter <kecarter@redhat.com>
Fix misused ansible connection timeout and deployment timeout passed in
config download and ansible runner utility.
Allow ansible runner utility to be given a job_timeout as well.
Also fix the misuse of timeout parameters in related worklows. Add
--overcloud-ssh-port-timeout and use it to configure ansible connection
timeout for the DeleteNode interace of the involved
workflows. Then use the timeout parameter as real timeout instead of
mistakingly passing it as a connection timeout.
Add new unit test for ansible timeout in config_download. Add missing
coverage for the existing timeout-related params in other unit tests.
Closes-Bug: #1868063
Co-authored-by: Kevin Carter <kevin@cloudnull.com>
Change-Id: I2a4d151bcb83074af5bcf7d1b8c68d81d3c0400d
Signed-off-by: Bogdan Dobrelya <bdobreli@redhat.com>
This change will set the verbosity consistently whenever a playbook is
executed via the client.
All tests have been updated to ensure that the verbosity setting is always
defined when a playbook is executed.
Change-Id: I35b10d48344c8b7f71186bc529a300f75d7b8d63
Signed-off-by: Kevin Carter <kecarter@redhat.com>
This change removes all of mistral from the config_download_deploy function
by calling the required functions directly.
- All of the inputs within this function have been cleaned up and documented.
- New log entires will be created when using this method giving the deployer
a better overall user experience.
- To ensure we're able to support the ability to reproduce commands, the ssh
args extravar has been moved to an environment variable.
- The methods get_config and get_key have been moved to the utils module.
This was done to help avoid circular imports.
Update methods have been changed to execute without running within a mistral
workflow. This was changed because there's no need to support the multiple
code paths anymore given config_download is now running directly.
Test classes have been updated to reduce duplication.
With the new streamlined execution process we should see improved deployment
times and better visability into the deployment process.
Task: 38422
Story: 2007212
Depends-On: I006291a2465aa4c950abce76f9e5f9459b76e330
Change-Id: Ide1a4503dd2bdd2d5e494cd1eac483b842a21acf
Co-authored-by: Luke Short <ekultails@gmail.com>
Co-authored-by: Dougal Matthews <dougal@dougalmatthews.com>
Signed-off-by: Kevin Carter <kecarter@redhat.com>
This wait function mimics what we used to have with the old mistral workflow,
by pausing and streaming heat status information while a node is being deleted.
Change-Id: I3d85bd85bffb8e1e6bc9d48b8d51fbab5302580d
Signed-off-by: Kevin Carter <kecarter@redhat.com>
This change removes mistral from the scale_down workflow by managing
the mistral context and calling the required methods directly.
Story: 2007212
Task: 38423
Change-Id: I17c74e8a5f0ed166316e67e9a62966194869df6a
Signed-off-by: Kevin Carter <kecarter@redhat.com>
To avoid tasks duplications in the tripleo-common workbooks, let's
re-use the deployment workbook with the right parameters so we can avoid
all the config-download tasks.
This patch will reuse tripleo.deployment.v1.config_download_deploy with
the right parameters for a scale-down.
Depends-On: Ibc980e9162bf109de7e7ef338c9bd602174c8448
Change-Id: Ie8e15589197e9725a1cae2d29137f05fefa427c1
With the new workflow, ansible_scale_down, we can now tear down the
nodes before they get deleted from the stack.
blueprint scale-down-tasks
Change-Id: I9982f3854604497c804d7875b926f14e1060b788
In delete node and delete stack, we exit on non SUCCESS messages, but
mistral also sends us RUNNING messages when calling stack list, that we
should consume.
Change-Id: I45442ef2c622463a957c84be47f38ec4528001ac
Closes-Bug: #1804660
There were two issues: The action timeout and the wait_for_messages
timeout.
The wait_for_messages did not need a timeout here and it was causing the
bug. I added an cli option for the timeout and setup a reasonable
default (the previous default was over 4 hours that would invalidate
keystone session duration)
Change-Id: I232d071516d3f53f9f87143d9d65ebe3e58b0f38
Closes-Bug: 1734712
This will allow the cli and tripleo UI to share a common queue,
which will help with scripting the frontend behaviour or track
the progress of the cli from the frontend.
Related-Bug: #1603345
Change-Id: I5849983eee82b5a56cae1bf38a3c2694b6b291db
There is a potential for a race condition if the websocket is not set
up before the call is made to Mistral. The websocket setup can take
sufficient time to set up, and if an error is thrown immediately from
a workflow, it has the potential of returning a message, and having
the websocket consume it before the websocket client is even set up.
Also, I think this has the benefit of keeping the call to Mistral
from even being made if there is something wrong with the websocket
setup.
Change-Id: Ib331037a7f5f4e59862d2b9646a83acdb18313eb
Currently when there's a failure during scale the output is
pprinted json that is confusing and uninstrutive
Printing the return message message attribute gives all the important
status needed from that json
Change-Id: I6e81f5812895f50209d1dc7a35c4f8fbd2447926
Partial-Bug: #1640933
This patch adds support for using a workflow in tripleo-common
for deleting nodes from a stack (scale down).
Change-Id: Ia65734273d70ea0ae30d96122728950e1f0217b8
Partial-Bug: #1626736