1 === Successful image creation (defaults) ===
3 {"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "file", "filename": "TEST_DIR/PID-t.vhdx", "size": 0}}}
5 {"execute": "job-dismiss", "arguments": {"id": "job0"}}
8 {"execute": "blockdev-add", "arguments": {"driver": "file", "filename": "TEST_DIR/PID-t.vhdx", "node-name": "imgfile"}}
10 {"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "vhdx", "file": "imgfile", "size": 134217728}}}
12 {"execute": "job-dismiss", "arguments": {"id": "job0"}}
17 virtual size: 128 MiB (134217728 bytes)
20 === Successful image creation (explicit defaults) ===
22 {"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "file", "filename": "TEST_DIR/PID-t.vhdx", "size": 0}}}
24 {"execute": "job-dismiss", "arguments": {"id": "job0"}}
27 {"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"block-size": 8388608, "block-state-zero": true, "driver": "vhdx", "file": {"driver": "file", "filename": "TEST_DIR/PID-t.vhdx"}, "log-size": 1048576, "size": 67108864, "subformat": "dynamic"}}}
29 {"execute": "job-dismiss", "arguments": {"id": "job0"}}
34 virtual size: 64 MiB (67108864 bytes)
37 === Successful image creation (with non-default options) ===
39 {"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "file", "filename": "TEST_DIR/PID-t.vhdx", "size": 0}}}
41 {"execute": "job-dismiss", "arguments": {"id": "job0"}}
44 {"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"block-size": 268435456, "block-state-zero": false, "driver": "vhdx", "file": {"driver": "file", "filename": "TEST_DIR/PID-t.vhdx"}, "log-size": 8388608, "size": 33554432, "subformat": "fixed"}}}
46 {"execute": "job-dismiss", "arguments": {"id": "job0"}}
51 virtual size: 32 MiB (33554432 bytes)
52 cluster_size: 268435456
54 === Invalid BlockdevRef ===
56 {"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "vhdx", "file": "this doesn't exist", "size": 33554432}}}
58 Job failed: Cannot find device=this doesn't exist nor node_name=this doesn't exist
59 {"execute": "job-dismiss", "arguments": {"id": "job0"}}
64 {"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "vhdx", "file": "node0", "size": 0}}}
66 {"execute": "job-dismiss", "arguments": {"id": "job0"}}
71 virtual size: 0 B (0 bytes)
76 {"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "vhdx", "file": "node0", "size": 70368744177664}}}
78 {"execute": "job-dismiss", "arguments": {"id": "job0"}}
83 virtual size: 64 TiB (70368744177664 bytes)
84 cluster_size: 67108864
88 {"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "vhdx", "file": "node0", "size": 18446744073709551104}}}
90 Job failed: Image size too large; max of 64TB
91 {"execute": "job-dismiss", "arguments": {"id": "job0"}}
94 {"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "vhdx", "file": "node0", "size": 9223372036854775808}}}
96 Job failed: Image size too large; max of 64TB
97 {"execute": "job-dismiss", "arguments": {"id": "job0"}}
100 {"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "vhdx", "file": "node0", "size": 9223372036854775296}}}
102 Job failed: Image size too large; max of 64TB
103 {"execute": "job-dismiss", "arguments": {"id": "job0"}}
106 {"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "vhdx", "file": "node0", "size": 70368744177665}}}
108 Job failed: Image size too large; max of 64TB
109 {"execute": "job-dismiss", "arguments": {"id": "job0"}}
112 === Invalid block size ===
114 {"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"block-size": 1234567, "driver": "vhdx", "file": "node0", "size": 67108864}}}
116 Job failed: Block size must be a multiple of 1 MB
117 {"execute": "job-dismiss", "arguments": {"id": "job0"}}
120 {"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"block-size": 128, "driver": "vhdx", "file": "node0", "size": 67108864}}}
122 Job failed: Block size must be a multiple of 1 MB
123 {"execute": "job-dismiss", "arguments": {"id": "job0"}}
126 {"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"block-size": 3145728, "driver": "vhdx", "file": "node0", "size": 67108864}}}
128 Job failed: Block size must be a power of two
129 {"execute": "job-dismiss", "arguments": {"id": "job0"}}
132 {"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"block-size": 536870912, "driver": "vhdx", "file": "node0", "size": 67108864}}}
134 Job failed: Block size must not exceed 268435456
135 {"execute": "job-dismiss", "arguments": {"id": "job0"}}
138 {"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"block-size": 0, "driver": "vhdx", "file": "node0", "size": 67108864}}}
140 Job failed: Block size must be a multiple of 1 MB
141 {"execute": "job-dismiss", "arguments": {"id": "job0"}}
144 === Invalid log size ===
146 {"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "vhdx", "file": "node0", "log-size": 1234567, "size": 67108864}}}
148 Job failed: Log size must be a multiple of 1 MB
149 {"execute": "job-dismiss", "arguments": {"id": "job0"}}
152 {"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "vhdx", "file": "node0", "log-size": 128, "size": 67108864}}}
154 Job failed: Log size must be a multiple of 1 MB
155 {"execute": "job-dismiss", "arguments": {"id": "job0"}}
158 {"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "vhdx", "file": "node0", "log-size": 4294967296, "size": 67108864}}}
160 Job failed: Log size must be smaller than 4 GB
161 {"execute": "job-dismiss", "arguments": {"id": "job0"}}
164 {"execute": "blockdev-create", "arguments": {"job-id": "job0", "options": {"driver": "vhdx", "file": "node0", "log-size": 0, "size": 67108864}}}
166 Job failed: Log size must be a multiple of 1 MB
167 {"execute": "job-dismiss", "arguments": {"id": "job0"}}