mirror of
https://github.com/u-boot/u-boot.git
synced 2025-05-08 19:11:53 +00:00
test/py: regenerate persistent GPT image if code changes
test_gpt generates a persistent disk image which can be re-used across multiple test runs. Currently, if the Python code that generates the disk image change, the image is not regenerated, which could cause test failures e.g. if a test was updated to expect some new partition name or size, yet the persistent disk image contained the old name or size. This change introduces functionality to regenerate the disk image if the instructions to generate the image have changed. Signed-off-by: Stephen Warren <swarren@nvidia.com>
This commit is contained in:
parent
84d46e7e89
commit
ac122efdb6
2 changed files with 92 additions and 17 deletions
|
@ -32,23 +32,24 @@ class GptTestDiskImage(object):
|
|||
persistent = u_boot_console.config.persistent_data_dir + '/' + filename
|
||||
self.path = u_boot_console.config.result_dir + '/' + filename
|
||||
|
||||
if os.path.exists(persistent):
|
||||
u_boot_console.log.action('Disk image file ' + persistent +
|
||||
' already exists')
|
||||
else:
|
||||
u_boot_console.log.action('Generating ' + persistent)
|
||||
fd = os.open(persistent, os.O_RDWR | os.O_CREAT)
|
||||
os.ftruncate(fd, 4194304)
|
||||
os.close(fd)
|
||||
cmd = ('sgdisk', '-U', '375a56f7-d6c9-4e81-b5f0-09d41ca89efe',
|
||||
persistent)
|
||||
u_boot_utils.run_and_log(u_boot_console, cmd)
|
||||
cmd = ('sgdisk', '--new=1:2048:2560', '-c 1:part1', persistent)
|
||||
u_boot_utils.run_and_log(u_boot_console, cmd)
|
||||
cmd = ('sgdisk', '--new=2:4096:4608', '-c 2:part2', persistent)
|
||||
u_boot_utils.run_and_log(u_boot_console, cmd)
|
||||
cmd = ('sgdisk', '-l', persistent)
|
||||
u_boot_utils.run_and_log(u_boot_console, cmd)
|
||||
with u_boot_utils.persistent_file_helper(u_boot_console.log, persistent):
|
||||
if os.path.exists(persistent):
|
||||
u_boot_console.log.action('Disk image file ' + persistent +
|
||||
' already exists')
|
||||
else:
|
||||
u_boot_console.log.action('Generating ' + persistent)
|
||||
fd = os.open(persistent, os.O_RDWR | os.O_CREAT)
|
||||
os.ftruncate(fd, 4194304)
|
||||
os.close(fd)
|
||||
cmd = ('sgdisk', '-U', '375a56f7-d6c9-4e81-b5f0-09d41ca89efe',
|
||||
persistent)
|
||||
u_boot_utils.run_and_log(u_boot_console, cmd)
|
||||
cmd = ('sgdisk', '--new=1:2048:2560', '-c 1:part1', persistent)
|
||||
u_boot_utils.run_and_log(u_boot_console, cmd)
|
||||
cmd = ('sgdisk', '--new=2:4096:4608', '-c 2:part2', persistent)
|
||||
u_boot_utils.run_and_log(u_boot_console, cmd)
|
||||
cmd = ('sgdisk', '-l', persistent)
|
||||
u_boot_utils.run_and_log(u_boot_console, cmd)
|
||||
|
||||
cmd = ('cp', persistent, self.path)
|
||||
u_boot_utils.run_and_log(u_boot_console, cmd)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue