Merge #2701
2701: Discern between images and blueprints in `multipass find` r=ricab a=sharder996
This PR adds the flags `--only-images` and `--only-blueprints` which modifies the behavior of `multipass find` causing it to display only images or blueprints respectively. Additionally, when no flag is specified, `multipass` will make the distinction between images and blueprints by separating them. Sample output is as follows:
```
scott:build-debug$ bin/multipass find
Image Aliases Version Description
snapcraft:core18 18.04 20201111 Snapcraft builder for Core 18
snapcraft:core20 20.04 20210921 Snapcraft builder for Core 20
snapcraft:core22 22.04 20220426 Snapcraft builder for Core 22
snapcraft:devel 20220808 Snapcraft builder for the devel series
core core16 20200818 Ubuntu Core 16
core18 20211124 Ubuntu Core 18
18.04 bionic 20220712 Ubuntu 18.04 LTS
20.04 focal,lts 20220810 Ubuntu 20.04 LTS
22.04 jammy 20220810 Ubuntu 22.04 LTS
daily:22.10 devel,kinetic 20220808 Ubuntu 22.10
appliance:adguard-home 20200812 Ubuntu AdGuard Home Appliance
appliance:mosquitto 20200812 Ubuntu Mosquitto Appliance
appliance:nextcloud 20200812 Ubuntu Nextcloud Appliance
appliance:openhab 20200812 Ubuntu openHAB Home Appliance
appliance:plexmediaserver 20200812 Ubuntu Plex Media Server Appliance
Blueprint Aliases Version Description
anbox-cloud-appliance latest Anbox Cloud Appliance
charm-dev latest A development and testing environment for charmers
docker latest A Docker environment with Portainer and related tools
jellyfin latest Jellyfin is a Free Software Media System that puts you in control of managing and streaming your media.
minikube latest minikube is local Kubernetes
scott:build-debug$ bin/multipass find --only-images
Image Aliases Version Description
snapcraft:core18 18.04 20201111 Snapcraft builder for Core 18
snapcraft:core20 20.04 20210921 Snapcraft builder for Core 20
snapcraft:core22 22.04 20220426 Snapcraft builder for Core 22
snapcraft:devel 20220808 Snapcraft builder for the devel series
core core16 20200818 Ubuntu Core 16
core18 20211124 Ubuntu Core 18
18.04 bionic 20220712 Ubuntu 18.04 LTS
20.04 focal,lts 20220810 Ubuntu 20.04 LTS
22.04 jammy 20220810 Ubuntu 22.04 LTS
daily:22.10 devel,kinetic 20220808 Ubuntu 22.10
appliance:adguard-home 20200812 Ubuntu AdGuard Home Appliance
appliance:mosquitto 20200812 Ubuntu Mosquitto Appliance
appliance:nextcloud 20200812 Ubuntu Nextcloud Appliance
appliance:openhab 20200812 Ubuntu openHAB Home Appliance
appliance:plexmediaserver 20200812 Ubuntu Plex Media Server Appliance
scott:build-debug$ bin/multipass find --only-blueprints
Blueprint Aliases Version Description
anbox-cloud-appliance latest Anbox Cloud Appliance
charm-dev latest A development and testing environment for charmers
docker latest A Docker environment with Portainer and related tools
jellyfin latest Jellyfin is a Free Software Media System that puts you in control of managing and streaming your media.
minikube latest minikube is local Kubernetes
scott:build-debug$ bin/multipass find daily:
Image Aliases Version Description
daily:18.04 bionic 20220810 Ubuntu 18.04 LTS
daily:20.04 focal,lts 20220810 Ubuntu 20.04 LTS
daily:22.04 jammy 20220810 Ubuntu 22.04 LTS
daily:22.10 devel,kinetic 20220808 Ubuntu 22.10
scott:build-debug$ bin/multipass find docker
Blueprint Aliases Version Description
docker latest A Docker environment with Portainer and related tools
```
Note: this output is an initial first draft of what this new form of output will look like and suggestions on how to make it better are welcome!
Fixes #2678
Co-authored-by: sharder996 <email address hidden>