wic: Fix --extra-space argument handling

467f84e12b ("wic: Add --offset argument for partitions") broke the
--extra-space argument handling in wic. Fix the option and add a unit
test for the argument.

(From OE-Core rev: 62a7a10c31bcf133cbd99d4de928f15a30e45ab1)

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
(cherry picked from commit 87722a92c18f94917c8f70afc8cd0763462a5c25)
Signed-off-by: Steve Sakoman <steve@sakoman.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit is contained in:
Joshua Watt
2020-06-09 12:16:31 -05:00
committed by Richard Purdie
parent 343a7e2c61
commit c52e34c2bf
2 changed files with 16 additions and 1 deletions

View File

@@ -757,6 +757,21 @@ class Wic2(WicTestCase):
p, _ = self._get_wic_partitions(tempf.name, ignore_status=True)
self.assertNotEqual(p.status, 0, "wic exited successfully when an error was expected:\n%s" % p.output)
def test_extra_space(self):
native_sysroot = get_bb_var("RECIPE_SYSROOT_NATIVE", "wic-tools")
with NamedTemporaryFile("w", suffix=".wks") as tempf:
tempf.write("bootloader --ptable gpt\n" \
"part / --source rootfs --ondisk hda --extra-space 200M --fstype=ext4\n")
tempf.flush()
_, partlns = self._get_wic_partitions(tempf.name, native_sysroot)
self.assertEqual(len(partlns), 1)
size = partlns[0].split(':')[3]
self.assertRegex(size, r'^[0-9]+kiB$')
size = int(size[:-3])
self.assertGreaterEqual(size, 204800)
@only_for_arch(['i586', 'i686', 'x86_64'])
def test_rawcopy_plugin_qemu(self):
"""Test rawcopy plugin in qemu"""

View File

@@ -144,7 +144,7 @@ class KickStart():
part.add_argument('--offset', type=sizetype("K"))
part.add_argument('--exclude-path', nargs='+')
part.add_argument('--include-path', nargs='+')
part.add_argument("--extra-space", type=sizetype)
part.add_argument("--extra-space", type=sizetype("M"))
part.add_argument('--fsoptions', dest='fsopts')
part.add_argument('--fstype', default='vfat',
choices=('ext2', 'ext3', 'ext4', 'btrfs',