提交 85716089 编写于 作者: M Michal Privoznik

virsh-snapshot.c: Switch to C99 initialization of vshCmdOptDef

上级 7c959c61
master openEuler-20.03-LTS openEuler-20.09 v1.0.2-maint v1.0.3-maint v1.0.4-maint v1.0.5-maint v1.0.6-maint v1.1.0-maint v1.1.1-maint v1.1.2-maint v1.1.3-maint v1.1.4-maint v1.2.0-maint v1.2.1-maint v1.2.10-maint v1.2.11-maint v1.2.12-maint v1.2.13-maint v1.2.14-maint v1.2.15-maint v1.2.16-maint v1.2.17-maint v1.2.18-maint v1.2.19-maint v1.2.2-maint v1.2.20-maint v1.2.21-maint v1.2.3-maint v1.2.4-maint v1.2.5-maint v1.2.6-maint v1.2.7-maint v1.2.8-maint v1.2.9-maint v1.3.0-maint v1.3.1-maint v1.3.2-maint v1.3.3-maint v1.3.4-maint v1.3.5-maint v2.0-maint v2.1-maint v2.2-maint v3.0-maint v3.2-maint v3.7-maint v4.1-maint v4.10-maint v4.2-maint v4.3-maint v4.4-maint v4.5-maint v4.6-maint v4.7-maint v4.8-maint v4.9-maint v5.0-maint v5.1-maint v5.1.0-maint v5.2-maint v5.3-maint v6.5.0-rc2 v6.5.0-rc1 v6.4.0 v6.4.0-rc1 v6.3.0 v6.3.0-rc1 v6.2.0 v6.2.0-rc1 v6.1.0 v6.1.0-rc2 v6.1.0-rc1 v6.0.0 v6.0.0-rc2 v6.0.0-rc1 v5.10.0 v5.10.0-rc2 v5.10.0-rc1 v5.9.0 v5.9.0-rc1 v5.8.0 v5.8.0-rc2 v5.8.0-rc1 v5.7.0 v5.7.0-rc2 v5.7.0-rc1 v5.6.0 v5.6.0-rc2 v5.6.0-rc1 v5.5.0 v5.5.0-rc2 v5.5.0-rc1 v5.4.0 v5.4.0-rc2 v5.4.0-rc1 v5.3.0 v5.3.0-rc2 v5.3.0-rc1 v5.2.0 v5.2.0-rc2 v5.2.0-rc1 v5.1.0 v5.1.0-rc2 v5.1.0-rc1 v5.0.0 v5.0.0-rc2 v5.0.0-rc1 v4.10.0 v4.10.0-rc2 v4.10.0-rc1 v4.9.0 v4.9.0-rc1 v4.8.0 v4.8.0-rc2 v4.8.0-rc1 v4.7.0 v4.7.0-rc2 v4.7.0-rc1 v4.6.0 v4.6.0-rc2 v4.6.0-rc1 v4.5.0 v4.5.0-rc2 v4.5.0-rc1 v4.4.0 v4.4.0-rc2 v4.4.0-rc1 v4.3.0 v4.3.0-rc2 v4.3.0-rc1 v4.2.0 v4.2.0-rc2 v4.2.0-rc1 v4.1.0 v4.1.0-rc2 v4.1.0-rc1 v4.0.0 v4.0.0-rc2 v4.0.0-rc1 v3.10.0 v3.10.0-rc2 v3.10.0-rc1 v3.9.0 v3.9.0-rc2 v3.9.0-rc1 v3.8.0 v3.8.0-rc1 v3.7.0 v3.7.0-rc2 v3.7.0-rc1 v3.6.0 v3.6.0-rc2 v3.6.0-rc1 v3.5.0 v3.5.0-rc2 v3.5.0-rc1 v3.4.0 v3.4.0-rc2 v3.4.0-rc1 v3.3.0 v3.3.0-rc2 v3.3.0-rc1 v3.2.1 v3.2.0 v3.2.0-rc2 v3.2.0-rc1 v3.1.0 v3.1.0-rc2 v3.1.0-rc1 v3.0.0 v3.0.0-rc2 v3.0.0-rc1 v2.5.0 v2.5.0-rc2 v2.5.0-rc1 v2.4.0 v2.4.0-rc2 v2.4.0-rc1 v2.3.0 v2.3.0-rc2 v2.3.0-rc1 v2.2.1 v2.2.0 v2.2.0-rc2 v2.2.0-rc1 v2.1.0 v2.1.0-rc1 v2.0.0 v2.0.0-rc2 v2.0.0-rc1 v1.3.5 v1.3.5-rc1 v1.3.4 v1.3.4-rc2 v1.3.4-rc1 v1.3.3.3 v1.3.3.2 v1.3.3.1 v1.3.3 v1.3.3-rc2 v1.3.3-rc1 v1.3.2 v1.3.2-rc2 v1.3.2-rc1 v1.3.1 v1.3.1-rc2 v1.3.1-rc1 v1.3.0 v1.3.0-rc2 v1.3.0-rc1 v1.2.21 v1.2.21-rc2 v1.2.21-rc1 v1.2.20 v1.2.20-rc2 v1.2.20-rc1 v1.2.19 v1.2.19-rc2 v1.2.19-rc1 v1.2.18.4 v1.2.18.3 v1.2.18.2 v1.2.18.1 v1.2.18 v1.2.18-rc2 v1.2.18-rc1 v1.2.17 v1.2.17-rc2 v1.2.17-rc1 v1.2.16 v1.2.16-rc2 v1.2.16-rc1 v1.2.15 v1.2.15-rc2 v1.2.15-rc1 v1.2.14 v1.2.14-rc2 v1.2.14-rc1 v1.2.13.2 v1.2.13.1 v1.2.13 v1.2.13-rc2 v1.2.13-rc1 v1.2.12 v1.2.12-rc2 v1.2.12-rc1 v1.2.11 v1.2.11-rc2 v1.2.11-rc1 v1.2.10 v1.2.10-rc2 v1.2.10-rc1 v1.2.9.3 v1.2.9.2 v1.2.9.1 v1.2.9 v1.2.9-rc2 v1.2.9-rc1 v1.2.8 v1.2.8-rc2 v1.2.8-rc1 v1.2.7 v1.2.7-rc2 v1.2.7-rc1 v1.2.6 v1.2.6-rc2 v1.2.6-rc1 v1.2.5 v1.2.5-rc2 v1.2.5-rc1 v1.2.4 v1.2.4-rc2 v1.2.4-rc1 v1.2.3 v1.2.3-rc2 v1.2.3-rc1 v1.2.2 v1.2.2-rc2 v1.2.2-rc1 v1.2.1 v1.2.1-rc2 v1.2.1-rc1 v1.2.0 v1.2.0-rc2 v1.2.0-rc1 v1.1.4 v1.1.4-rc2 v1.1.4-rc1 v1.1.3.9 v1.1.3.8 v1.1.3.7 v1.1.3.6 v1.1.3.5 v1.1.3.4 v1.1.3.3 v1.1.3.2 v1.1.3.1 v1.1.3 v1.1.3-rc2 v1.1.3-rc1 v1.1.2 v1.1.2-rc2 v1.1.2-rc1 v1.1.1 v1.1.1-rc2 v1.1.1-rc1 v1.1.0 v1.1.0-rc2 v1.1.0-rc1 v1.0.6 v1.0.6-rc2 v1.0.6-rc1 v1.0.5.9 v1.0.5.8 v1.0.5.7 v1.0.5.6 v1.0.5.5 v1.0.5.4 v1.0.5.3 v1.0.5.2 v1.0.5.1 v1.0.5 v1.0.5-rc1 v1.0.4 v1.0.4-rc2 v1.0.4-rc1 v1.0.3 v1.0.3-rc2 v1.0.3-rc1 v1.0.2 v1.0.2-rc2 v1.0.2-rc1 CVE-2017-1000256 CVE-2017-2635 CVE-2016-5008 CVE-2015-5313 CVE-2015-5247-3 CVE-2015-5247-2 CVE-2015-5247-1 CVE-2015-0236-2 CVE-2015-0236-1 CVE-2014-8136 CVE-2014-8135 CVE-2014-8131-2 CVE-2014-8131-1 CVE-2014-7823 CVE-2014-3657 CVE-2014-3633 CVE-2014-1447-2 CVE-2014-1447-1 CVE-2014-0179 CVE-2014-0028 CVE-2013-7336 CVE-2013-6458-4 CVE-2013-6458-3 CVE-2013-6458-2 CVE-2013-6458-1 CVE-2013-6457 CVE-2013-6436 CVE-2013-5651 CVE-2013-4401 CVE-2013-4400-3 CVE-2013-4400-2 CVE-2013-4400-1 CVE-2013-4399 CVE-2013-4311 CVE-2013-4297 CVE-2013-4296 CVE-2013-4292 CVE-2013-4291 CVE-2013-4239 CVE-2013-4154 CVE-2013-4153 CVE-2013-2230 CVE-2013-2218 CVE-2013-1962 CVE-2013-0170
无相关合并请求
......@@ -118,18 +118,62 @@ static const vshCmdInfo info_snapshot_create[] = {
};
static const vshCmdOptDef opts_snapshot_create[] = {
{"domain", VSH_OT_DATA, VSH_OFLAG_REQ, N_("domain name, id or uuid")},
{"xmlfile", VSH_OT_DATA, 0, N_("domain snapshot XML")},
{"redefine", VSH_OT_BOOL, 0, N_("redefine metadata for existing snapshot")},
{"current", VSH_OT_BOOL, 0, N_("with redefine, set current snapshot")},
{"no-metadata", VSH_OT_BOOL, 0, N_("take snapshot but create no metadata")},
{"halt", VSH_OT_BOOL, 0, N_("halt domain after snapshot is created")},
{"disk-only", VSH_OT_BOOL, 0, N_("capture disk state but not vm state")},
{"reuse-external", VSH_OT_BOOL, 0, N_("reuse any existing external files")},
{"quiesce", VSH_OT_BOOL, 0, N_("quiesce guest's file systems")},
{"atomic", VSH_OT_BOOL, 0, N_("require atomic operation")},
{"live", VSH_OT_BOOL, 0, N_("take a live snapshot")},
{NULL, 0, 0, NULL}
{.name = "domain",
.type = VSH_OT_DATA,
.flags = VSH_OFLAG_REQ,
.help = N_("domain name, id or uuid")
},
{.name = "xmlfile",
.type = VSH_OT_DATA,
.flags = 0,
.help = N_("domain snapshot XML")
},
{.name = "redefine",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("redefine metadata for existing snapshot")
},
{.name = "current",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("with redefine, set current snapshot")
},
{.name = "no-metadata",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("take snapshot but create no metadata")
},
{.name = "halt",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("halt domain after snapshot is created")
},
{.name = "disk-only",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("capture disk state but not vm state")
},
{.name = "reuse-external",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("reuse any existing external files")
},
{.name = "quiesce",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("quiesce guest's file systems")
},
{.name = "atomic",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("require atomic operation")
},
{.name = "live",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("take a live snapshot")
},
{.name = NULL}
};
static bool
......@@ -296,22 +340,72 @@ static const vshCmdInfo info_snapshot_create_as[] = {
};
static const vshCmdOptDef opts_snapshot_create_as[] = {
{"domain", VSH_OT_DATA, VSH_OFLAG_REQ, N_("domain name, id or uuid")},
{"name", VSH_OT_DATA, 0, N_("name of snapshot")},
{"description", VSH_OT_DATA, 0, N_("description of snapshot")},
{"print-xml", VSH_OT_BOOL, 0, N_("print XML document rather than create")},
{"no-metadata", VSH_OT_BOOL, 0, N_("take snapshot but create no metadata")},
{"halt", VSH_OT_BOOL, 0, N_("halt domain after snapshot is created")},
{"disk-only", VSH_OT_BOOL, 0, N_("capture disk state but not vm state")},
{"reuse-external", VSH_OT_BOOL, 0, N_("reuse any existing external files")},
{"quiesce", VSH_OT_BOOL, 0, N_("quiesce guest's file systems")},
{"atomic", VSH_OT_BOOL, 0, N_("require atomic operation")},
{"live", VSH_OT_BOOL, 0, N_("take a live snapshot")},
{"memspec", VSH_OT_DATA, VSH_OFLAG_REQ_OPT,
N_("memory attributes: [file=]name[,snapshot=type]")},
{"diskspec", VSH_OT_ARGV, 0,
N_("disk attributes: disk[,snapshot=type][,driver=type][,file=name]")},
{NULL, 0, 0, NULL}
{.name = "domain",
.type = VSH_OT_DATA,
.flags = VSH_OFLAG_REQ,
.help = N_("domain name, id or uuid")
},
{.name = "name",
.type = VSH_OT_DATA,
.flags = 0,
.help = N_("name of snapshot")
},
{.name = "description",
.type = VSH_OT_DATA,
.flags = 0,
.help = N_("description of snapshot")
},
{.name = "print-xml",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("print XML document rather than create")
},
{.name = "no-metadata",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("take snapshot but create no metadata")
},
{.name = "halt",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("halt domain after snapshot is created")
},
{.name = "disk-only",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("capture disk state but not vm state")
},
{.name = "reuse-external",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("reuse any existing external files")
},
{.name = "quiesce",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("quiesce guest's file systems")
},
{.name = "atomic",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("require atomic operation")
},
{.name = "live",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("take a live snapshot")
},
{.name = "memspec",
.type = VSH_OT_DATA,
.flags = VSH_OFLAG_REQ_OPT,
.help = N_("memory attributes: [file=]name[,snapshot=type]")
},
{.name = "diskspec",
.type = VSH_OT_ARGV,
.flags = 0,
.help = N_("disk attributes: disk[,snapshot=type][,driver=type][,file=name]")
},
{.name = NULL}
};
static bool
......@@ -448,12 +542,32 @@ static const vshCmdInfo info_snapshot_edit[] = {
};
static const vshCmdOptDef opts_snapshot_edit[] = {
{"domain", VSH_OT_DATA, VSH_OFLAG_REQ, N_("domain name, id or uuid")},
{"snapshotname", VSH_OT_DATA, 0, N_("snapshot name")},
{"current", VSH_OT_BOOL, 0, N_("also set edited snapshot as current")},
{"rename", VSH_OT_BOOL, 0, N_("allow renaming an existing snapshot")},
{"clone", VSH_OT_BOOL, 0, N_("allow cloning to new name")},
{NULL, 0, 0, NULL}
{.name = "domain",
.type = VSH_OT_DATA,
.flags = VSH_OFLAG_REQ,
.help = N_("domain name, id or uuid")
},
{.name = "snapshotname",
.type = VSH_OT_DATA,
.flags = 0,
.help = N_("snapshot name")
},
{.name = "current",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("also set edited snapshot as current")
},
{.name = "rename",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("allow renaming an existing snapshot")
},
{.name = "clone",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("allow cloning to new name")
},
{.name = NULL}
};
static bool
......@@ -556,13 +670,27 @@ static const vshCmdInfo info_snapshot_current[] = {
};
static const vshCmdOptDef opts_snapshot_current[] = {
{"domain", VSH_OT_DATA, VSH_OFLAG_REQ, N_("domain name, id or uuid")},
{"name", VSH_OT_BOOL, 0, N_("list the name, rather than the full xml")},
{"security-info", VSH_OT_BOOL, 0,
N_("include security sensitive information in XML dump")},
{"snapshotname", VSH_OT_DATA, 0,
N_("name of existing snapshot to make current")},
{NULL, 0, 0, NULL}
{.name = "domain",
.type = VSH_OT_DATA,
.flags = VSH_OFLAG_REQ,
.help = N_("domain name, id or uuid")
},
{.name = "name",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("list the name, rather than the full xml")
},
{.name = "security-info",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("include security sensitive information in XML dump")
},
{.name = "snapshotname",
.type = VSH_OT_DATA,
.flags = 0,
.help = N_("name of existing snapshot to make current")
},
{.name = NULL}
};
static bool
......@@ -782,10 +910,22 @@ static const vshCmdInfo info_snapshot_info[] = {
};
static const vshCmdOptDef opts_snapshot_info[] = {
{"domain", VSH_OT_DATA, VSH_OFLAG_REQ, N_("domain name, id or uuid")},
{"snapshotname", VSH_OT_DATA, 0, N_("snapshot name")},
{"current", VSH_OT_BOOL, 0, N_("info on current snapshot")},
{NULL, 0, 0, NULL}
{.name = "domain",
.type = VSH_OT_DATA,
.flags = VSH_OFLAG_REQ,
.help = N_("domain name, id or uuid")
},
{.name = "snapshotname",
.type = VSH_OT_DATA,
.flags = 0,
.help = N_("snapshot name")
},
{.name = "current",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("info on current snapshot")
},
{.name = NULL}
};
static bool
......@@ -1325,29 +1465,87 @@ static const vshCmdInfo info_snapshot_list[] = {
};
static const vshCmdOptDef opts_snapshot_list[] = {
{"domain", VSH_OT_DATA, VSH_OFLAG_REQ, N_("domain name, id or uuid")},
{"parent", VSH_OT_BOOL, 0, N_("add a column showing parent snapshot")},
{"roots", VSH_OT_BOOL, 0, N_("list only snapshots without parents")},
{"leaves", VSH_OT_BOOL, 0, N_("list only snapshots without children")},
{"no-leaves", VSH_OT_BOOL, 0,
N_("list only snapshots that are not leaves (with children)")},
{"metadata", VSH_OT_BOOL, 0,
N_("list only snapshots that have metadata that would prevent undefine")},
{"no-metadata", VSH_OT_BOOL, 0,
N_("list only snapshots that have no metadata managed by libvirt")},
{"inactive", VSH_OT_BOOL, 0,
N_("filter by snapshots taken while inactive")},
{"active", VSH_OT_BOOL, 0,
N_("filter by snapshots taken while active (system checkpoints)")},
{"disk-only", VSH_OT_BOOL, 0, N_("filter by disk-only snapshots")},
{"internal", VSH_OT_BOOL, 0, N_("filter by internal snapshots")},
{"external", VSH_OT_BOOL, 0, N_("filter by external snapshots")},
{"tree", VSH_OT_BOOL, 0, N_("list snapshots in a tree")},
{"from", VSH_OT_DATA, 0, N_("limit list to children of given snapshot")},
{"current", VSH_OT_BOOL, 0,
N_("limit list to children of current snapshot")},
{"descendants", VSH_OT_BOOL, 0, N_("with --from, list all descendants")},
{NULL, 0, 0, NULL}
{.name = "domain",
.type = VSH_OT_DATA,
.flags = VSH_OFLAG_REQ,
.help = N_("domain name, id or uuid")
},
{.name = "parent",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("add a column showing parent snapshot")
},
{.name = "roots",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("list only snapshots without parents")
},
{.name = "leaves",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("list only snapshots without children")
},
{.name = "no-leaves",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("list only snapshots that are not leaves (with children)")
},
{.name = "metadata",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("list only snapshots that have metadata that would prevent undefine")
},
{.name = "no-metadata",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("list only snapshots that have no metadata managed by libvirt")
},
{.name = "inactive",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("filter by snapshots taken while inactive")
},
{.name = "active",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("filter by snapshots taken while active (system checkpoints)")
},
{.name = "disk-only",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("filter by disk-only snapshots")
},
{.name = "internal",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("filter by internal snapshots")
},
{.name = "external",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("filter by external snapshots")
},
{.name = "tree",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("list snapshots in a tree")
},
{.name = "from",
.type = VSH_OT_DATA,
.flags = 0,
.help = N_("limit list to children of given snapshot")
},
{.name = "current",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("limit list to children of current snapshot")
},
{.name = "descendants",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("with --from, list all descendants")
},
{.name = NULL}
};
static bool
......@@ -1555,11 +1753,22 @@ static const vshCmdInfo info_snapshot_dumpxml[] = {
};
static const vshCmdOptDef opts_snapshot_dumpxml[] = {
{"domain", VSH_OT_DATA, VSH_OFLAG_REQ, N_("domain name, id or uuid")},
{"snapshotname", VSH_OT_DATA, VSH_OFLAG_REQ, N_("snapshot name")},
{"security-info", VSH_OT_BOOL, 0,
N_("include security sensitive information in XML dump")},
{NULL, 0, 0, NULL}
{.name = "domain",
.type = VSH_OT_DATA,
.flags = VSH_OFLAG_REQ,
.help = N_("domain name, id or uuid")
},
{.name = "snapshotname",
.type = VSH_OT_DATA,
.flags = VSH_OFLAG_REQ,
.help = N_("snapshot name")
},
{.name = "security-info",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("include security sensitive information in XML dump")
},
{.name = NULL}
};
static bool
......@@ -1614,10 +1823,22 @@ static const vshCmdInfo info_snapshot_parent[] = {
};
static const vshCmdOptDef opts_snapshot_parent[] = {
{"domain", VSH_OT_DATA, VSH_OFLAG_REQ, N_("domain name, id or uuid")},
{"snapshotname", VSH_OT_DATA, 0, N_("find parent of snapshot name")},
{"current", VSH_OT_BOOL, 0, N_("find parent of current snapshot")},
{NULL, 0, 0, NULL}
{.name = "domain",
.type = VSH_OT_DATA,
.flags = VSH_OFLAG_REQ,
.help = N_("domain name, id or uuid")
},
{.name = "snapshotname",
.type = VSH_OT_DATA,
.flags = 0,
.help = N_("find parent of snapshot name")
},
{.name = "current",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("find parent of current snapshot")
},
{.name = NULL}
};
static bool
......@@ -1668,13 +1889,37 @@ static const vshCmdInfo info_snapshot_revert[] = {
};
static const vshCmdOptDef opts_snapshot_revert[] = {
{"domain", VSH_OT_DATA, VSH_OFLAG_REQ, N_("domain name, id or uuid")},
{"snapshotname", VSH_OT_DATA, 0, N_("snapshot name")},
{"current", VSH_OT_BOOL, 0, N_("revert to current snapshot")},
{"running", VSH_OT_BOOL, 0, N_("after reverting, change state to running")},
{"paused", VSH_OT_BOOL, 0, N_("after reverting, change state to paused")},
{"force", VSH_OT_BOOL, 0, N_("try harder on risky reverts")},
{NULL, 0, 0, NULL}
{.name = "domain",
.type = VSH_OT_DATA,
.flags = VSH_OFLAG_REQ,
.help = N_("domain name, id or uuid")
},
{.name = "snapshotname",
.type = VSH_OT_DATA,
.flags = 0,
.help = N_("snapshot name")
},
{.name = "current",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("revert to current snapshot")
},
{.name = "running",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("after reverting, change state to running")
},
{.name = "paused",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("after reverting, change state to paused")
},
{.name = "force",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("try harder on risky reverts")
},
{.name = NULL}
};
static bool
......@@ -1738,14 +1983,37 @@ static const vshCmdInfo info_snapshot_delete[] = {
};
static const vshCmdOptDef opts_snapshot_delete[] = {
{"domain", VSH_OT_DATA, VSH_OFLAG_REQ, N_("domain name, id or uuid")},
{"snapshotname", VSH_OT_DATA, 0, N_("snapshot name")},
{"current", VSH_OT_BOOL, 0, N_("delete current snapshot")},
{"children", VSH_OT_BOOL, 0, N_("delete snapshot and all children")},
{"children-only", VSH_OT_BOOL, 0, N_("delete children but not snapshot")},
{"metadata", VSH_OT_BOOL, 0,
N_("delete only libvirt metadata, leaving snapshot contents behind")},
{NULL, 0, 0, NULL}
{.name = "domain",
.type = VSH_OT_DATA,
.flags = VSH_OFLAG_REQ,
.help = N_("domain name, id or uuid")
},
{.name = "snapshotname",
.type = VSH_OT_DATA,
.flags = 0,
.help = N_("snapshot name")
},
{.name = "current",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("delete current snapshot")
},
{.name = "children",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("delete snapshot and all children")
},
{.name = "children-only",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("delete children but not snapshot")
},
{.name = "metadata",
.type = VSH_OT_BOOL,
.flags = 0,
.help = N_("delete only libvirt metadata, leaving snapshot contents behind")
},
{.name = NULL}
};
static bool
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册
反馈
建议
客服 返回
顶部