-
Notifications
You must be signed in to change notification settings - Fork 34
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Slight UX issue with broadcast interactive terminal notification about upgrade #554
Comments
It's definitely intentional that reboots not from zincati don't trigger updates to ensure predictability.
This seems like a good fix! |
I believe @cgwalters is right and extra care was actually taken so that manual reboots by the user don't trigger an update even when an update is staged by Zincati.
Unfortunately today there is no way to do initiate the upgrade + reboot immediately 😅 For now though, if you log out, Zincati should allow the reboot within a minute, so perhaps the instruction could just be to tell the user to log out. |
I think @kelvinfan001 reply is on the spot: the expectation is that the user finishes their work and logs out. I guess the current message subtly hinted at "An update is available, please reboot into it"; suggestions on how to reword it in order to (succinctly) avoid such effects and to convey the above points are welcome. From my side, I guess an improved message could read as:
|
Suggested text LGTM |
LGTM. Maybe a |
Another option would be to tell the user |
I think this API would overlap a lot with #498 and #540. #540 attempts to solve the issue around manually telling Zincati to update without being too interactive, but I believe at some point we will still need to implement #498 to fill in the gaps. Am I understanding correctly that #498 would be the equivalent of |
not exactly, but it should satisfy the need. Let me explain: What I'm considering is a user who doesn't want to wait any amount of time. Logging out and waiting a minute is fine, but it's not determinate and slightly annoying. What if I try to log back in too fast and the system hasn't finalized and started to reboot yet? Then I caused the process to start over (waiting). What I want is some instruction to tell the user how to achieve the goal now. #498 would indeed be exactly that because we could just say run To be clear. I'm good with #498 being the answer here. We don't need |
Generally speaking, we still aim for a zero-touch upgrade process. If the current 60s period between retries is still causing friction we can either 1) make them more frequent (naive approach, some delay still exists) or, 2) start watching for logind The "finalize now!" verb hinted at above is a large footgun which I personally won't introduce lightheartedly. In particular, if we want to pursue that in the future, we need to zoom out from this simple case (immediate strategy, one interactive user session, all good), and reason about behaviors related to:
Even if we are not going to introduce that verb now, I think we can sit down and draft a larger design to foresee how the UX of this may look like. |
👍 |
Bug Report
I was recently working in a VM (doing dev work) and I see this scroll
by on the interactive terminal:
This is awesome. So glad this exists to give the user some kind of
clue before their system auto-reboots.
However, what happened after this could use some improvement IMHO.
I thought to myself.. I don't want to wait 10 minutes for the reboot
to happen. I want it now and then I can move on with my life. So I:
So performing a reboot manually didn't give me an updated system. I
think this could use better UX. Either of these:
sudo reboot
yields an updated system.Environment
local libvirt VM
Expected Behavior
A reboot would yield me an updated system.
Actual Behavior
System still not updated after reboot.
The text was updated successfully, but these errors were encountered: