virsh: Support alias in attach-disk

Add --alias to support custom disk alias in virsh attach-disk.

Signed-off-by: Han Han <hhan@redhat.com>
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
Han Han 2018-07-15 18:08:16 +08:00 committed by Michal Privoznik
parent 329f2347d2
commit 64c579b705
2 changed files with 11 additions and 2 deletions

View File

@ -290,6 +290,10 @@ static const vshCmdOptDef opts_attach_disk[] = {
.type = VSH_OT_STRING, .type = VSH_OT_STRING,
.help = N_("wwn of disk device") .help = N_("wwn of disk device")
}, },
{.name = "alias",
.type = VSH_OT_STRING,
.help = N_("custom alias name of disk device")
},
{.name = "rawio", {.name = "rawio",
.type = VSH_OT_BOOL, .type = VSH_OT_BOOL,
.help = N_("needs rawio capability") .help = N_("needs rawio capability")
@ -574,7 +578,7 @@ cmdAttachDisk(vshControl *ctl, const vshCmd *cmd)
*subdriver = NULL, *type = NULL, *mode = NULL, *subdriver = NULL, *type = NULL, *mode = NULL,
*iothread = NULL, *cache = NULL, *io = NULL, *iothread = NULL, *cache = NULL, *io = NULL,
*serial = NULL, *straddr = NULL, *wwn = NULL, *serial = NULL, *straddr = NULL, *wwn = NULL,
*targetbus = NULL; *targetbus = NULL, *alias = NULL;
struct DiskAddress diskAddr; struct DiskAddress diskAddr;
bool isFile = false, functionReturn = false; bool isFile = false, functionReturn = false;
int ret; int ret;
@ -611,6 +615,7 @@ cmdAttachDisk(vshControl *ctl, const vshCmd *cmd)
vshCommandOptStringReq(ctl, cmd, "wwn", &wwn) < 0 || vshCommandOptStringReq(ctl, cmd, "wwn", &wwn) < 0 ||
vshCommandOptStringReq(ctl, cmd, "address", &straddr) < 0 || vshCommandOptStringReq(ctl, cmd, "address", &straddr) < 0 ||
vshCommandOptStringReq(ctl, cmd, "targetbus", &targetbus) < 0 || vshCommandOptStringReq(ctl, cmd, "targetbus", &targetbus) < 0 ||
vshCommandOptStringReq(ctl, cmd, "alias", &alias) < 0 ||
vshCommandOptStringReq(ctl, cmd, "sourcetype", &stype) < 0) vshCommandOptStringReq(ctl, cmd, "sourcetype", &stype) < 0)
goto cleanup; goto cleanup;
@ -680,6 +685,9 @@ cmdAttachDisk(vshControl *ctl, const vshCmd *cmd)
if (serial) if (serial)
virBufferAsprintf(&buf, "<serial>%s</serial>\n", serial); virBufferAsprintf(&buf, "<serial>%s</serial>\n", serial);
if (alias)
virBufferAsprintf(&buf, "<alias name='%s'/>", alias);
if (wwn) if (wwn)
virBufferAsprintf(&buf, "<wwn>%s</wwn>\n", wwn); virBufferAsprintf(&buf, "<wwn>%s</wwn>\n", wwn);

View File

@ -3032,7 +3032,7 @@ expected.
=item B<attach-disk> I<domain> I<source> I<target> [[[I<--live>] [I<--config>] =item B<attach-disk> I<domain> I<source> I<target> [[[I<--live>] [I<--config>]
| [I<--current>]] | [I<--persistent>]] [I<--targetbus bus>] [I<--driver | [I<--current>]] | [I<--persistent>]] [I<--targetbus bus>] [I<--driver
driver>] [I<--subdriver subdriver>] [I<--iothread iothread>] driver>] [I<--subdriver subdriver>] [I<--iothread iothread>]
[I<--cache cache>] [I<--io io>] [I<--type type>] [I<--cache cache>] [I<--io io>] [I<--type type>] [I<--alias alias>]
[I<--mode mode>] [I<--sourcetype sourcetype>] [I<--serial serial>] [I<--wwn [I<--mode mode>] [I<--sourcetype sourcetype>] [I<--serial serial>] [I<--wwn
wwn>] [I<--rawio>] [I<--address address>] [I<--multifunction>] [I<--print-xml>] wwn>] [I<--rawio>] [I<--address address>] [I<--multifunction>] [I<--print-xml>]
@ -3055,6 +3055,7 @@ disk formats. I<type> can indicate I<lun>, I<cdrom> or I<floppy> as
alternative to the disk default, although this use only replaces the media alternative to the disk default, although this use only replaces the media
within the existing virtual cdrom or floppy device; consider using within the existing virtual cdrom or floppy device; consider using
B<update-device> for this usage instead. B<update-device> for this usage instead.
I<alias> can set user supplied alias.
I<mode> can specify the two specific mode I<readonly> or I<shareable>. I<mode> can specify the two specific mode I<readonly> or I<shareable>.
I<sourcetype> can indicate the type of source (block|file) I<sourcetype> can indicate the type of source (block|file)
I<cache> can be one of "default", "none", "writethrough", "writeback", I<cache> can be one of "default", "none", "writethrough", "writeback",