canonical/multipass

[snapshot] Lack of interactive stdin causes unhandled exception on `multipass restore`

Open

#4,825 创建于 2026年4月15日

在 GitHub 查看
 (1 评论) (0 反应) (1 负责人)C++ (6,956 star) (634 fork)batch import
buggood first issuelowlow hanging fruit

描述

Describe the bug I am trying to restore the state of a VM without interactive stdin. If the --destructive flag is not used, it results in an unhandled exception.

└─[2] echo "no" | multipass stop a             
└─[λ] echo "no" | multipass restore a.snapshot1
[2026-04-15T17:44:54.113] [error] [client] Caught an unhandled exception: Unable to query client for confirmation. Use '--destructive' to automatically discard current machine state.

To Reproduce How, and what happened?

  1. multipass launch -n a && multipass stop a
  2. multipass snapshot a
  3. echo "no" | multipass restore a.snapshot1

Expected behavior Multipass should handle the exception and output the error message to the user.

Additional info

  • OS: Ubuntu 24.04 (authd)
  • CPU architecture or model: amd64
  • multipass version: 1.17.0-dev

贡献者指南