aboutsummaryrefslogtreecommitdiffstats
path: root/tools/python/scripts
diff options
context:
space:
mode:
authorAlastair Tse <atse@xensource.com>2006-10-06 12:46:46 +0100
committerAlastair Tse <atse@xensource.com>2006-10-06 12:46:46 +0100
commite9fce8774999908f9f5f1a3aade10369c4aac87c (patch)
tree90ec514b3513cc4d6e1307b2c377eb6369075e3a /tools/python/scripts
parent2ebaf7314b4319644fa66a978c7f607563e63622 (diff)
downloadxen-e9fce8774999908f9f5f1a3aade10369c4aac87c.tar.gz
xen-e9fce8774999908f9f5f1a3aade10369c4aac87c.tar.bz2
xen-e9fce8774999908f9f5f1a3aade10369c4aac87c.zip
[XENAPI] Add missing function names. Proper sub command help messages.
Signed-off-by: Alastair Tse <atse@xensource.com>
Diffstat (limited to 'tools/python/scripts')
-rw-r--r--tools/python/scripts/xapi.py42
1 files changed, 33 insertions, 9 deletions
diff --git a/tools/python/scripts/xapi.py b/tools/python/scripts/xapi.py
index 9fca30217d..4e12dc97b5 100644
--- a/tools/python/scripts/xapi.py
+++ b/tools/python/scripts/xapi.py
@@ -29,16 +29,18 @@ LOGIN = ('atse', 'passwd')
COMMANDS = {
'host-info': ('', 'Get Xen Host Info'),
- 'vm-list': ('', 'List all domains.'),
- 'vm-uuid': ('<name>', 'UUID of a domain by name.'),
- 'vm-name': ('<uuid>', 'Name of UUID.'),
- 'vm-start': ('<name>', 'Start VM with name'),
- 'vm-shutdown': ('<name>', 'Shutdown VM with name'),
- 'vm-create': ('<pycfg>', 'Create VM with python config'),
'vbd-create': ('<domname> <pycfg>', 'Create VBD attached to domname'),
'vif-create': ('<domname> <pycfg>', 'Create VIF attached to domname'),
+
+ 'vm-create': ('<pycfg>', 'Create VM with python config'),
'vm-delete': ('<domname>', 'Delete VM'),
+
'vm-destroy': ('<name>', 'Hard shutdown a VM with name'),
+ 'vm-list': ('', 'List all domains.'),
+ 'vm-name': ('<uuid>', 'Name of UUID.'),
+ 'vm-shutdown': ('<name>', 'Shutdown VM with name'),
+ 'vm-start': ('<name>', 'Start VM with name'),
+ 'vm-uuid': ('<name>', 'UUID of a domain by name.'),
}
OPTIONS = {
@@ -107,6 +109,22 @@ def xapi_host_info(*args):
print HOST_INFO_FORMAT % ('VMs', len(hostinfo['resident_VMs']))
print HOST_INFO_FORMAT % ('UUID', host)
+def xapi_vm_uuid(*args):
+ if len(args) < 1:
+ raise OptionError("No domain name specified")
+
+ server, session = _connect()
+ vm_uuid = execute(server.VM.get_by_label, session, args[0])
+ print vm_uuid
+
+def xapi_vm_name(*args):
+ if len(args) < 1:
+ raise OptionError("No UUID specified")
+
+ server, session = _connect()
+ vm_name = execute(server.VM.get_name_label, session, args[0])
+ print vm_name
+
def xapi_vm_list(*args):
opts, args = parse_args('vm-list', args)
is_long = opts and opts.long
@@ -209,6 +227,8 @@ def xapi_vif_create(*args):
vif_uuid = execute(server.VIF.create, session, cfg)
print 'Done. (%s)' % vif_uuid
+
+
#
# Command Line Utils
#
@@ -237,13 +257,17 @@ def main(args):
if not subcmd_func or not callable(subcmd_func):
print 'Error: Unable to find subcommand \'%s\'' % subcmd
usage()
- sys.exit(-1)
-
+ sys.exit(1)
+
+ if '-h' in args[1:] or '--help' in args[1:]:
+ usage(subcmd)
+ sys.exit(1)
+
try:
subcmd_func(*args[1:])
except XenAPIError, e:
print 'Error: %s' % str(e.args[1])
- sys.exit(-1)
+ sys.exit(1)
sys.exit(0)