=== Successful image creation (defaults) ===
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}}}
{u'return': {}}
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
{'execute': 'blockdev-add', 'arguments': {'node_name': 'imgfile', 'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}}
{u'return': {}}
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'qcow2', 'file': 'imgfile', 'size': 134217728}}}
{u'return': {}}
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
image: TEST_IMG
file format: IMGFMT
virtual size: 128M (134217728 bytes)
cluster_size: 65536
Format specific information:
compat: 1.1
lazy refcounts: false
refcount bits: 16
corrupt: false
=== Successful image creation (inline blockdev-add, explicit defaults) ===
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'nocow': False, 'preallocation': 'off', 'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}}}
{u'return': {}}
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 65536, 'refcount-bits': 16, 'version': 'v3', 'preallocation': 'off', 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}, 'lazy-refcounts': False, 'driver': 'qcow2', 'size': 67108864}}}
{u'return': {}}
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
image: TEST_IMG
file format: IMGFMT
virtual size: 64M (67108864 bytes)
cluster_size: 65536
Format specific information:
compat: 1.1
lazy refcounts: false
refcount bits: 16
corrupt: false
=== Successful image creation (v3 non-default options) ===
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'nocow': True, 'preallocation': 'falloc', 'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}}}
{u'return': {}}
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 2097152, 'refcount-bits': 1, 'version': 'v3', 'preallocation': 'metadata', 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}, 'lazy-refcounts': True, 'driver': 'qcow2', 'size': 33554432}}}
{u'return': {}}
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
image: TEST_IMG
file format: IMGFMT
virtual size: 32M (33554432 bytes)
cluster_size: 2097152
Format specific information:
compat: 1.1
lazy refcounts: true
refcount bits: 1
corrupt: false
=== Successful image creation (v2 non-default options) ===
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'size': 0, 'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}}}
{u'return': {}}
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 512, 'backing-fmt': 'qcow2', 'driver': 'qcow2', 'version': 'v2', 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}, 'backing-file': 'TEST_DIR/PID-t.qcow2.base', 'size': 33554432}}}
{u'return': {}}
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
image: TEST_IMG
file format: IMGFMT
virtual size: 32M (33554432 bytes)
cluster_size: 512
backing file: TEST_IMG.base
backing file format: IMGFMT
Format specific information:
compat: 0.10
refcount bits: 16
=== Successful image creation (encrypted) ===
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'encrypt': {'key-secret': 'keysec0', 'iter-time': 10, 'cipher-mode': 'ctr', 'ivgen-hash-alg': 'md5', 'cipher-alg': 'twofish-128', 'format': 'luks', 'ivgen-alg': 'plain64', 'hash-alg': 'sha1'}, 'driver': 'qcow2', 'file': {'driver': 'file', 'filename': 'TEST_DIR/PID-t.qcow2'}, 'size': 33554432}}}
{u'return': {}}
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
image: TEST_IMG
file format: IMGFMT
virtual size: 32M (33554432 bytes)
encrypted: yes
cluster_size: 65536
Format specific information:
compat: 1.1
lazy refcounts: false
refcount bits: 16
encrypt:
ivgen alg: plain64
hash alg: sha1
cipher alg: twofish-128
uuid: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
format: luks
cipher mode: ctr
slots:
[0]:
active: true
iters: XXX
key offset: 4096
stripes: 4000
[1]:
active: false
key offset: 69632
[2]:
active: false
key offset: 135168
[3]:
active: false
key offset: 200704
[4]:
active: false
key offset: 266240
[5]:
active: false
key offset: 331776
[6]:
active: false
key offset: 397312
[7]:
active: false
key offset: 462848
payload offset: 528384
master key iters: XXX
corrupt: false
=== Invalid BlockdevRef ===
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'qcow2', 'file': "this doesn't exist", 'size': 33554432}}}
{u'return': {}}
Job failed: Cannot find device=this doesn't exist nor node_name=this doesn't exist
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
=== Invalid sizes ===
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'qcow2', 'file': 'node0', 'size': 1234}}}
{u'return': {}}
Job failed: Image size must be a multiple of 512 bytes
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'qcow2', 'file': 'node0', 'size': 18446744073709551104L}}}
{u'return': {}}
Job failed: Could not resize image: Image size cannot be negative
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'qcow2', 'file': 'node0', 'size': 9223372036854775808L}}}
{u'return': {}}
Job failed: Could not resize image: Image size cannot be negative
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'driver': 'qcow2', 'file': 'node0', 'size': 9223372036854775296}}}
{u'return': {}}
Job failed: Could not resize image: Failed to grow the L1 table: File too large
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
=== Invalid version ===
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'version': 'v1', 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
{u'error': {u'class': u'GenericError', u'desc': u"Invalid parameter 'v1'"}}
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'lazy-refcounts': True, 'version': 'v2', 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
{u'return': {}}
Job failed: Lazy refcounts only supported with compatibility level 1.1 and above (use version=v3 or greater)
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'refcount-bits': 8, 'version': 'v2', 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
{u'return': {}}
Job failed: Different refcount widths than 16 bits require compatibility level 1.1 or above (use version=v3 or greater)
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
=== Invalid backing file options ===
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'preallocation': 'full', 'driver': 'qcow2', 'backing-file': '/dev/null', 'file': 'node0', 'size': 67108864}}}
{u'return': {}}
Job failed: Backing file and preallocation cannot be used at the same time
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'backing-fmt': 'qcow2', 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
{u'return': {}}
Job failed: Backing format cannot be used without backing file
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
=== Invalid cluster size ===
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 1234, 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
{u'return': {}}
Job failed: Cluster size must be a power of two between 512 and 2048k
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 128, 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
{u'return': {}}
Job failed: Cluster size must be a power of two between 512 and 2048k
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 4194304, 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
{u'return': {}}
Job failed: Cluster size must be a power of two between 512 and 2048k
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 0, 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
{u'return': {}}
Job failed: Cluster size must be a power of two between 512 and 2048k
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'cluster-size': 512, 'driver': 'qcow2', 'file': 'node0', 'size': 281474976710656}}}
{u'return': {}}
Job failed: Could not resize image: Failed to grow the L1 table: File too large
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
=== Invalid refcount width ===
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'refcount-bits': 128, 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
{u'return': {}}
Job failed: Refcount width must be a power of two and may not exceed 64 bits
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'refcount-bits': 0, 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
{u'return': {}}
Job failed: Refcount width must be a power of two and may not exceed 64 bits
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}
{'execute': 'blockdev-create', 'arguments': {'job_id': 'job0', 'options': {'refcount-bits': 7, 'driver': 'qcow2', 'file': 'node0', 'size': 67108864}}}
{u'return': {}}
Job failed: Refcount width must be a power of two and may not exceed 64 bits
{'execute': 'job-dismiss', 'arguments': {'id': 'job0'}}
{u'return': {}}