-#!/usr/bin/env python
+#!/usr/bin/env python3
+# group: rw
#
# Test luks and file image creation
#
import iotests
from iotests import imgfmt
-iotests.verify_image_format(supported_fmts=['luks'])
-iotests.verify_protocol(supported=['file'])
-
-def blockdev_create(vm, options):
- result = vm.qmp_log('blockdev-create', job_id='job0', options=options,
- filters=[iotests.filter_qmp_testfiles])
-
- if 'return' in result:
- assert result['return'] == {}
- vm.run_job('job0')
- iotests.log("")
+iotests.script_initialize(
+ supported_fmts=['luks'],
+ supported_protocols=['file'],
+)
with iotests.FilePath('t.luks') as disk_path, \
iotests.VM() as vm:
size = 128 * 1024 * 1024
vm.launch()
- blockdev_create(vm, { 'driver': 'file',
- 'filename': disk_path,
- 'size': 0 })
+ vm.blockdev_create({ 'driver': 'file',
+ 'filename': disk_path,
+ 'size': 0 })
vm.qmp_log('blockdev-add', driver='file', filename=disk_path,
node_name='imgfile', filters=[iotests.filter_qmp_testfiles])
- blockdev_create(vm, { 'driver': imgfmt,
- 'file': 'imgfile',
- 'key-secret': 'keysec0',
- 'size': size,
- 'iter-time': 10 })
+ vm.blockdev_create({ 'driver': imgfmt,
+ 'file': 'imgfile',
+ 'key-secret': 'keysec0',
+ 'size': size,
+ 'iter-time': 10 })
vm.shutdown()
# TODO Proper support for images to be used with imgopts and/or protocols
'driver=luks,file.driver=file,file.filename=%s,key-secret=keysec0' % (disk_path),
filter_path=disk_path,
extra_args=['--object', 'secret,id=keysec0,data=foo'],
- imgopts=True)
+ use_image_opts=True)
#
# Successful image creation (with non-default options)
size = 64 * 1024 * 1024
vm.launch()
- blockdev_create(vm, { 'driver': 'file',
- 'filename': disk_path,
- 'size': 0 })
- blockdev_create(vm, { 'driver': imgfmt,
- 'file': {
- 'driver': 'file',
- 'filename': disk_path,
- },
- 'size': size,
- 'key-secret': 'keysec0',
- 'cipher-alg': 'twofish-128',
- 'cipher-mode': 'ctr',
- 'ivgen-alg': 'plain64',
- 'ivgen-hash-alg': 'md5',
- 'hash-alg': 'sha1',
- 'iter-time': 10 })
+ vm.blockdev_create({ 'driver': 'file',
+ 'filename': disk_path,
+ 'size': 0 })
+ vm.blockdev_create({ 'driver': imgfmt,
+ 'file': {
+ 'driver': 'file',
+ 'filename': disk_path,
+ },
+ 'size': size,
+ 'key-secret': 'keysec0',
+ 'cipher-alg': 'aes-128',
+ 'cipher-mode': 'cbc',
+ 'ivgen-alg': 'plain64',
+ 'ivgen-hash-alg': 'md5',
+ 'hash-alg': 'sha1',
+ 'iter-time': 10 })
vm.shutdown()
# TODO Proper support for images to be used with imgopts and/or protocols
'driver=luks,file.driver=file,file.filename=%s,key-secret=keysec0' % (disk_path),
filter_path=disk_path,
extra_args=['--object', 'secret,id=keysec0,data=foo'],
- imgopts=True)
+ use_image_opts=True)
#
# Invalid BlockdevRef
size = 64 * 1024 * 1024
vm.launch()
- blockdev_create(vm, { 'driver': imgfmt,
- 'file': "this doesn't exist",
- 'size': size })
+ vm.blockdev_create({ 'driver': imgfmt,
+ 'file': "this doesn't exist",
+ 'size': size })
vm.shutdown()
#
vm.add_blockdev('driver=file,filename=%s,node-name=node0' % (disk_path))
vm.launch()
- blockdev_create(vm, { 'driver': imgfmt,
- 'file': 'node0',
- 'key-secret': 'keysec0',
- 'size': 0,
- 'iter-time': 10 })
+ vm.blockdev_create({ 'driver': imgfmt,
+ 'file': 'node0',
+ 'key-secret': 'keysec0',
+ 'size': 0,
+ 'iter-time': 10 })
vm.shutdown()
# TODO Proper support for images to be used with imgopts and/or protocols
'driver=luks,file.driver=file,file.filename=%s,key-secret=keysec0' % (disk_path),
filter_path=disk_path,
extra_args=['--object', 'secret,id=keysec0,data=foo'],
- imgopts=True)
+ use_image_opts=True)
#
# Invalid sizes
vm.launch()
for size in [ 18446744073709551104, 9223372036854775808, 9223372036854775296 ]:
- blockdev_create(vm, { 'driver': imgfmt,
- 'file': 'node0',
- 'key-secret': 'keysec0',
- 'size': size })
+ vm.blockdev_create({ 'driver': imgfmt,
+ 'file': 'node0',
+ 'key-secret': 'keysec0',
+ 'size': size })
vm.shutdown()
#
'driver=luks,file.driver=file,file.filename=%s,key-secret=keysec0' % (disk_path),
filter_path=disk_path,
extra_args=['--object', 'secret,id=keysec0,data=foo'],
- imgopts=True)
+ use_image_opts=True)