aboutsummaryrefslogtreecommitdiffstats
path: root/tools/python/scripts
diff options
context:
space:
mode:
authorAlastair Tse <atse@xensource.com>2007-01-24 15:48:58 +0000
committerAlastair Tse <atse@xensource.com>2007-01-24 15:48:58 +0000
commitb712f9023e7522e3be64fc58638cf3b8a0ade056 (patch)
treee3f4c58f0267597913f846a59fd360d8cf01fbe9 /tools/python/scripts
parentd3cc627bf9cad771538855797875a69b6d3541d4 (diff)
downloadxen-b712f9023e7522e3be64fc58638cf3b8a0ade056.tar.gz
xen-b712f9023e7522e3be64fc58638cf3b8a0ade056.tar.bz2
xen-b712f9023e7522e3be64fc58638cf3b8a0ade056.zip
[XENAPI] Update test scripts to move from VBD.image to creating VDI's
with the uri attribute. Signed-off-by: Alastair Tse <atse@xensource.com>
Diffstat (limited to 'tools/python/scripts')
-rw-r--r--tools/python/scripts/test_vm_create.py57
-rw-r--r--tools/python/scripts/xapi.py25
2 files changed, 60 insertions, 22 deletions
diff --git a/tools/python/scripts/test_vm_create.py b/tools/python/scripts/test_vm_create.py
index 0246ceacd6..19a5135153 100644
--- a/tools/python/scripts/test_vm_create.py
+++ b/tools/python/scripts/test_vm_create.py
@@ -47,7 +47,8 @@ vdi_cfg = {
'virtual_size': 100 * 1024,
'sector_size': 1024,
'type': 'system',
- 'parent': '',
+ 'parent': '',
+ 'SR_name': 'QCoW',
'sharable': False,
'read_only': False,
}
@@ -61,6 +62,19 @@ vbd_cfg = {
'driver': 'paravirtualised',
}
+local_vdi_cfg = {
+ 'name_label': 'gentoo.amd64.img',
+ 'name_description': '',
+ 'uri': 'file:/root/gentoo.amd64.img',
+ 'virtual_size': 0,
+ 'sector_size': 0,
+ 'type': 'system',
+ 'parent': '',
+ 'SR_name': 'Local',
+ 'sharable': False,
+ 'read_only': False,
+}
+
local_vbd_cfg = {
'VDI': '',
'VM': '',
@@ -68,7 +82,6 @@ local_vbd_cfg = {
'mode': 'RW',
'type': 'disk',
'driver': 'paravirtualised',
- 'image': 'file:/root/gentoo.amd64.img'
}
vif_cfg = {
@@ -90,6 +103,7 @@ def test_vm_create():
server, session = connect()
vm_uuid = None
vdi_uuid = None
+ local_vdi_uuid = None
local_vbd_uuid = None
vbd_uuid = None
vif_uuid = None
@@ -102,9 +116,14 @@ def test_vm_create():
vm_names.append(vm_record['name_label'])
# Get default SR
- sr_list = execute(server, 'SR.get_by_name_label', (session, 'Local'))
+ sr_list = execute(server, 'SR.get_by_name_label', (session,
+ vdi_cfg['SR_name']))
sr_uuid = sr_list[0]
+ local_sr_list = execute(server, 'SR.get_by_name_label',
+ (session, local_vdi_cfg['SR_name']))
+ local_sr_uuid = local_sr_list[0]
+
# Get default network
net_list = execute(server, 'network.get_all', (session,))
net_uuid = net_list[0]
@@ -121,13 +140,18 @@ def test_vm_create():
vbd_cfg['VM'] = vm_uuid
vbd_cfg['VDI'] = vdi_uuid
vbd_uuid = execute(server, 'VBD.create', (session, vbd_cfg))
-
+
+ # Create a new VDI (Local)
+ local_vdi_cfg['SR'] = local_sr_uuid
+ local_vdi_uuid = execute(server, 'VDI.create',
+ (session, local_vdi_cfg))
+
# Create a new VBD (Local)
local_vbd_cfg['VM'] = vm_uuid
- local_vbd_cfg['VDI'] = ''
+ local_vbd_cfg['VDI'] = local_vdi_uuid
local_vbd_uuid = execute(server, 'VBD.create',
(session, local_vbd_cfg))
-
+
# Create a new VIF
vif_cfg['network'] = net_uuid
vif_cfg['VM'] = vm_uuid
@@ -138,13 +162,15 @@ def test_vm_create():
time.sleep(30)
- print 'Suspending VM..'
- execute(server, 'VM.suspend', (session, vm_uuid))
- print 'Suspended VM.'
- time.sleep(5)
- print 'Resuming VM ...'
- execute(server, 'VM.resume', (session, vm_uuid, False))
- print 'Resumed VM.'
+ test_suspend = True
+ if test_suspend:
+ print 'Suspending VM..'
+ execute(server, 'VM.suspend', (session, vm_uuid))
+ print 'Suspended VM.'
+ time.sleep(5)
+ print 'Resuming VM ...'
+ execute(server, 'VM.resume', (session, vm_uuid, False))
+ print 'Resumed VM.'
# Wait for user to say we're good to shut it down
while True:
@@ -156,12 +182,17 @@ def test_vm_create():
# Clean up
if vif_uuid:
execute(server, 'VIF.destroy', (session, vif_uuid))
+
if local_vbd_uuid:
execute(server, 'VBD.destroy', (session, local_vbd_uuid))
+ if local_vdi_uuid:
+ execute(server, 'VDI.destroy', (session, local_vdi_uuid))
+
if vbd_uuid:
execute(server, 'VBD.destroy', (session, vbd_uuid))
if vdi_uuid:
execute(server, 'VDI.destroy', (session, vdi_uuid))
+
if vm_uuid:
try:
execute(server, 'VM.hard_shutdown', (session, vm_uuid))
diff --git a/tools/python/scripts/xapi.py b/tools/python/scripts/xapi.py
index 1d46a9a127..82747fc1d5 100644
--- a/tools/python/scripts/xapi.py
+++ b/tools/python/scripts/xapi.py
@@ -37,7 +37,7 @@ SR_LIST_FORMAT = '%(name_label)-18s %(uuid)-36s %(physical_size)-10s' \
'%(type)-10s'
VDI_LIST_FORMAT = '%(name_label)-18s %(uuid)-36s %(virtual_size)-8s '\
'%(sector_size)-8s'
-VBD_LIST_FORMAT = '%(device)-6s %(uuid)-36s %(VDI)-8s %(image)-8s'
+VBD_LIST_FORMAT = '%(device)-6s %(uuid)-36s %(VDI)-8s'
TASK_LIST_FORMAT = '%(name_label)-18s %(uuid)-36s %(status)-8s %(progress)-4s'
VIF_LIST_FORMAT = '%(name)-8s %(device)-7s %(uuid)-36s %(MAC)-10s'
@@ -85,25 +85,28 @@ OPTIONS = {
'action': 'store_true'})],
'vdi-create': [(('--name-label',), {'help': 'Name for VDI'}),
- (('--description',), {'help': 'Description for VDI'}),
+ (('--name-description',), {'help': 'Description for VDI'}),
(('--sector-size',), {'type': 'int',
- 'help': 'Sector size'}),
+ 'help': 'Sector size',
+ 'default': 0}),
(('--virtual-size',), {'type': 'int',
+ 'default': 0,
'help': 'Size of VDI in sectors'}),
(('--type',), {'choices': ['system', 'user', 'ephemeral'],
+ 'default': 'system',
'help': 'VDI type'}),
(('--sharable',), {'action': 'store_true',
'help': 'VDI sharable'}),
(('--read-only',), {'action': 'store_true',
- 'help': 'Read only'})],
+ 'help': 'Read only'}),
+ (('--sr',), {})],
'vbd-create': [(('--VDI',), {'help': 'UUID of VDI to attach to.'}),
(('--mode',), {'choices': ['RO', 'RW'],
'help': 'device mount mode'}),
(('--driver',), {'choices':['paravirtualised', 'ioemu'],
'help': 'Driver for VBD'}),
- (('--device',), {'help': 'Device name on guest domain'}),
- (('--image',), {'help': 'Location of drive image.'})]
+ (('--device',), {'help': 'Device name on guest domain'})]
}
@@ -464,8 +467,7 @@ def xapi_vbd_list(args, async = False):
print VBD_LIST_FORMAT % {'device': 'Device',
'uuid' : 'UUID',
- 'VDI': 'VDI',
- 'image': 'Image'}
+ 'VDI': 'VDI'}
for vbd in vbds:
vbd_struct = execute(server, 'VBD.get_record', (session, vbd))
@@ -547,7 +549,12 @@ def xapi_vdi_create(args, async = False):
cfg[opt] = val
server, session = connect()
- srs = execute(server, 'SR.get_all', (session,))
+ srs = []
+ if cfg.get('SR'):
+ srs = execute(server, 'SR.get_by_name_label', (session, cfg['SR']))
+ else:
+ srs = execute(server, 'SR.get_all', (session,))
+
sr = srs[0]
cfg['SR'] = sr