multipass icon indicating copy to clipboard operation
multipass copied to clipboard

Add bash completion for `get` and `set` commands

Open nicolasbock opened this issue 3 years ago • 7 comments

This change adds completion for the get and set commands.

Signed-off-by: Nicolas Bock [email protected]

nicolasbock avatar Jan 25 '22 16:01 nicolasbock

Codecov Report

Merging #2411 (d9cbc38) into main (2f43d15) will decrease coverage by 0.04%. The diff coverage is n/a.

Impacted file tree graph

@@            Coverage Diff             @@
##             main    #2411      +/-   ##
==========================================
- Coverage   85.22%   85.18%   -0.05%     
==========================================
  Files         208      207       -1     
  Lines       10388    10433      +45     
==========================================
+ Hits         8853     8887      +34     
- Misses       1535     1546      +11     
Impacted Files Coverage Δ
...rc/platform/backends/qemu/qemu_virtual_machine.cpp 73.68% <0.00%> (-4.01%) :arrow_down:
src/client/cli/cmd/set.cpp 88.88% <0.00%> (-3.97%) :arrow_down:
...backends/qemu/linux/qemu_platform_detail_linux.cpp 96.05% <0.00%> (-2.58%) :arrow_down:
src/utils/settings.cpp 85.86% <0.00%> (-1.78%) :arrow_down:
src/sshfs_mount/sftp_server.cpp 96.72% <0.00%> (-0.05%) :arrow_down:
src/client/cli/cmd/register.cpp 100.00% <0.00%> (ø)
src/client/common/prompters.cpp 100.00% <0.00%> (ø)
include/multipass/cli/prompters.h 100.00% <0.00%> (ø)
src/platform/console/unix_terminal.h
src/platform/console/unix_terminal.cpp 100.00% <0.00%> (+100.00%) :arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more Δ = absolute <relative> (impact), ø = not affected, ? = missing data Powered by Codecov. Last update 2f43d15...d9cbc38. Read the comment docs.

codecov[bot] avatar Jan 25 '22 16:01 codecov[bot]

Hi @nicolasbock. Thanks for this! I have been longing for this completion for a while, but didn't have time to get to it myself. I haven't tried it yet, but it's very welcome.

There are some other changes in the works that will affect that help text, but we can blend. Adding to my TODO list to review (if no one else does first).

ricab avatar Jan 27 '22 11:01 ricab

Hi @ricab ! Thanks for the comments! If you point me towards these other changes I can modify the completions here to make them work with those changes.

nicolasbock avatar Jan 27 '22 13:01 nicolasbock

Hey @nicolasbock, have a look at #2352. That's a little outdated now, I mean to push again soon.

The thing is, we're going through an overhaul of the settings, with the client now leaving daemon settings to the daemon. The client will no longer know or care what settings the daemon understands (some of them will soon be dynamic). Instead, it will simply ship get/set/keys requests over as needed. But we have yet to settle on the best way to interrogate settings keys. For now, when the daemon can't be reached, I just have a placeholder for its settings ('local.*) in the help text you're parsing.

I will take your PR into account when considering the best approach and I'd otherwise let it simmer for a little :slightly_smiling_face: But I won't forget it. Hope that's alright!

ricab avatar Jan 27 '22 15:01 ricab

Thanks for the additional info @ricab !

nicolasbock avatar Jan 27 '22 23:01 nicolasbock

bors try

ricab avatar Feb 16 '22 18:02 ricab

try

Build failed:

bors[bot] avatar Feb 16 '22 20:02 bors[bot]