[PATCH 10/14] virsh: Expand VIRSH_COMMON_OPT_FILE for cases when it's not a local file used by virsh

Peter Krempa pkrempa at redhat.com
Fri Sep 17 07:39:26 UTC 2021


On Fri, Sep 17, 2021 at 09:31:11 +0200, Michal Prívozník wrote:
> On 9/16/21 7:10 PM, Peter Krempa wrote:
> > In cases such as the APIs for managed save management, the file path
> > provided via the '--file' option is passed to the API.
> > 
> > We'll need to make them distinct from cases for when virsh is using the
> > file so that different completers can be used.
> > 
> > Signed-off-by: Peter Krempa <pkrempa at redhat.com>
> > ---
> >  tools/virsh-domain.c | 36 ++++++++++++++++++++++++++++++------
> >  tools/virsh-volume.c |  6 +++++-
> >  tools/virsh.h        |  1 +
> >  3 files changed, 36 insertions(+), 7 deletions(-)
> > 
> > diff --git a/tools/virsh-domain.c b/tools/virsh-domain.c
> > index 05fa5c07f6..f45ab5b9d1 100644
> > --- a/tools/virsh-domain.c
> > +++ b/tools/virsh-domain.c
> > @@ -4129,7 +4129,11 @@ static const vshCmdInfo info_save[] = {
> > 
> >  static const vshCmdOptDef opts_save[] = {
> >      VIRSH_COMMON_OPT_DOMAIN_FULL(VIR_CONNECT_LIST_DOMAINS_ACTIVE),
> > -    VIRSH_COMMON_OPT_FILE(N_("where to save the data")),
> > +    {.name = "file",
> > +     .type = VSH_OT_DATA,
> > +     .flags = VSH_OFLAG_REQ,
> > +     .help = N_("where to save the data")
> > +    },
> >      {.name = "bypass-cache",
> >       .type = VSH_OT_BOOL,
> >       .help = N_("avoid file system cache when saving")
> 
> Maybe have new macro VIRSH_COMMON_OPT_FILE_REMOTE? If we ever come with
> a completer for remote paths we have just one place to put .completer = XXX?

I'm not a fan of this kind of macros as they aren't very flexible and
the number of lines saved is IMO not worth it in this case.

On the other hand I've briefly thought about a dummy 'Remote' version of
the file completer to annotate the rest of the file input fields even
without implementing it, but that's a fairly trivial task once the
completer is ready.




More information about the libvir-list mailing list