virsh: Add --postcopy option for domjobabort command

Signed-off-by: Jiri Denemark <jdenemar@redhat.com>
Reviewed-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Pavel Hrdina <phrdina@redhat.com>
This commit is contained in:
Jiri Denemark 2022-05-10 15:20:25 +02:00
parent 01d65a1520
commit ce34977c1f
2 changed files with 22 additions and 2 deletions

View File

@ -2053,10 +2053,16 @@ domjobabort
::
domjobabort domain
domjobabort domain [--postcopy]
Abort the currently running domain job.
When the job to be aborted is a migration which entered post-copy mode, it
cannot be aborted as none of the hosts involved in migration has a complete
state of the domain. Optional *--postcopy* can be used to interrupt such
migration although doing so may effectively suspend the domain until the
migration is resumed (see also *--postcopy-resume* option of ``migrate``).
domjobinfo
----------

View File

@ -6477,6 +6477,10 @@ static const vshCmdInfo info_domjobabort[] = {
static const vshCmdOptDef opts_domjobabort[] = {
VIRSH_COMMON_OPT_DOMAIN_FULL(VIR_CONNECT_LIST_DOMAINS_ACTIVE),
{.name = "postcopy",
.type = VSH_OT_BOOL,
.help = N_("interrupt post-copy migration")
},
{.name = NULL}
};
@ -6484,11 +6488,21 @@ static bool
cmdDomjobabort(vshControl *ctl, const vshCmd *cmd)
{
g_autoptr(virshDomain) dom = NULL;
unsigned int flags = 0;
int rc;
if (!(dom = virshCommandOptDomain(ctl, cmd, NULL)))
return false;
if (virDomainAbortJob(dom) < 0)
if (vshCommandOptBool(cmd, "postcopy"))
flags |= VIR_DOMAIN_ABORT_JOB_POSTCOPY;
if (flags == 0)
rc = virDomainAbortJob(dom);
else
rc = virDomainAbortJobFlags(dom, flags);
if (rc < 0)
return false;
return true;