Created attachment 1388510 [details] Screen capture Description of problem: while deploying hosted-engine via cockpit, if one switch the tabs on the GUI from hosted-engine to Dashbaord the deployment stopped. When you go back to the Hosted-engine tab you will see the initial page instead of the page you left from. Version-Release number of selected component (if applicable): How reproducible: 100% Steps to Reproduce: 1. run hosted-engine deployment via cockpit 2. switch tab at any stage of the deployment process 3. Actual results: deployment stops Expected results: deployment should continue Additional info: video attached
Duplicate of bug #1422544 ?
(In reply to Sandro Bonazzola from comment #1) > Duplicate of bug #1422544 ? Now the cockpit plugin should directly consume ansible playbooks with no connection to hosted-engine-setup so I'd keep them distinct although the result are similar.
From my point of view, this is definitely a duplicate. Even if ansible is being used instead of otopi, the behavior is identical, and all of the same caveats in bug #1422544 apply. We can try to serialize the object and reconnect to it, but it's also a UX question. Many web applications, for years, have behaved in the same way. Leaving or refreshing the page allows users to restart the process from the beginning. If we do not want to do this, we will instead need to leave the cockpit channel open, serialize it, and reconnect. Note that this will not work and resolve the original bug (#1422544) if the connection actually drops, since it will not be possible to serialize the object to the disk of the server without a connection to cockpit's dbus backend. IMO, it would be best to pop up a "are you sure" modal when switching tabs to resolve this bug. Something like: this.state = { allowReconnect = true } reconnectConfirmation(e) { this.setState({allowReconnect: e.confirmed}) if (this.state.allowReconnect) { serializeObject(...) } } componentWillMount() { try { loadSavedState(...) } catch { // do default operation } } In the worst case, to resolve the original bug, we can serialize the object once we actually invoke otopi/ansible, so a disconnect will preserve it. Note that cockpit itself does not do this. If the page is switched while in the RHSM plugin, it starts from the beginning. If the page is refreshed while in the cockpit terminal, it starts from scratch on reload. We should try to match this behavior if possible. That said, closing as a duplicate. *** This bug has been marked as a duplicate of bug 1422544 ***