canonical / canonical/multipass

Handle unsupported images better at launch

Open
#3,934 6 comments 0 reactions 0 assignees View on GitHub
Dominant language
C++
Stars
9.2k
Forks
828
Avg merge
3d 2h
Merged PRs (30d)
43

Description

**What are you trying to do?**
`multipass launch 16.04` behaves pretty much the same as `multipass launch lts`, except that the former fails to complete, because the image is no longer supported.

We decided a while ago to scope such images out of what Multipass is supposed to support. See https://github.com/canonical/multipass/issues/3443 and https://github.com/canonical/multipass/issues/1068 for reference. However, the UX is not great today. People [keep](https://github.com/canonical/multipass/issues/3874) [trying](https://github.com/canonical/multipass/issues/3911#issuecomment-2638037239) this, seeing it fail in an ungraceful way, which must be disappointing.

**What's your proposed solution?**
I propose Multipass does one of 3 things:

1. Stop offering unsupported images entirely (people could still launch them from files or URLs directly).
2. Allow launching unsupported images only if the user passes a new `--allow-unsupported` flag. We should then probably require this flag for any file-/URL-based launches.
3. Warn the user that the image is unsupported. Warnings are not shown by default though, so we'd need to think about how to achieve this.

Since we want to allow file/URL based launches (allowing images that are not supported ubuntu releases) I think my preference would be option 2.

**Additional Context**

```
$ multipass find xenial
No images or blueprints found.
$ multipass find --show-unsupported xenial
Image Aliases Version Description
xenial 20211001 Ubuntu 16.04 LTS
daily:xenial 20211001 Ubuntu 16.04 LTS
```

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the documented `multipass launch 16.04`, `multipass find xenial`, and `multipass find --show-unsupported xenial` behavior. Read issues 3443 and 1068 for the support policy, then review the three proposed UX options and related reports 3874 and 3911; done means the unsupported-image behavior and acceptance criteria are decided and implemented.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp
Domain
cli
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.