diff options
| author | Steffen Greber <sgreber@lilafast.org> | 2025-10-27 22:42:56 +0100 |
|---|---|---|
| committer | Richard Purdie <richard.purdie@linuxfoundation.org> | 2025-10-30 11:06:28 +0000 |
| commit | e8f38f022e8e30275f76c3692453f1a0b1b90f9b (patch) | |
| tree | f43ed72768238e908284651bd6e5c57815bd123a /scripts/lib/wic/plugins/imager/direct.py | |
| parent | 050942f1cf40c40d286cc765b7a1ccebdd060e38 (diff) | |
| download | poky-e8f38f022e8e30275f76c3692453f1a0b1b90f9b.tar.gz | |
wic: add wic tests and support setting GPT diskid
Also extend implementation to allow defining the diskid for GPT partitions.
Add unit tests for wic.py to cover new setting.
(From OE-Core rev: 0d5da9477703212d3cfb63828c5c38afdb162e43)
Signed-off-by: Steffen Greber <sgreber@lilafast.org>
Signed-off-by: Mathieu Dubois-Briand <mathieu.dubois-briand@bootlin.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'scripts/lib/wic/plugins/imager/direct.py')
| -rw-r--r-- | scripts/lib/wic/plugins/imager/direct.py | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/scripts/lib/wic/plugins/imager/direct.py b/scripts/lib/wic/plugins/imager/direct.py index f40f033a3d..ad922cfbf1 100644 --- a/scripts/lib/wic/plugins/imager/direct.py +++ b/scripts/lib/wic/plugins/imager/direct.py | |||
| @@ -315,7 +315,14 @@ class PartitionedImage(): | |||
| 315 | # all partitions (in bytes) | 315 | # all partitions (in bytes) |
| 316 | self.ptable_format = ptable_format # Partition table format | 316 | self.ptable_format = ptable_format # Partition table format |
| 317 | # Disk system identifier | 317 | # Disk system identifier |
| 318 | if disk_id: | 318 | if disk_id and ptable_format in ('gpt', 'gpt-hybrid'): |
| 319 | self.disk_guid = disk_id | ||
| 320 | elif os.getenv('SOURCE_DATE_EPOCH'): | ||
| 321 | self.disk_guid = uuid.UUID(int=int(os.getenv('SOURCE_DATE_EPOCH'))) | ||
| 322 | else: | ||
| 323 | self.disk_guid = uuid.uuid4() | ||
| 324 | |||
| 325 | if disk_id and ptable_format == 'msdos': | ||
| 319 | self.identifier = disk_id | 326 | self.identifier = disk_id |
| 320 | elif os.getenv('SOURCE_DATE_EPOCH'): | 327 | elif os.getenv('SOURCE_DATE_EPOCH'): |
| 321 | self.identifier = random.Random(int(os.getenv('SOURCE_DATE_EPOCH'))).randint(1, 0xffffffff) | 328 | self.identifier = random.Random(int(os.getenv('SOURCE_DATE_EPOCH'))).randint(1, 0xffffffff) |
| @@ -545,11 +552,6 @@ class PartitionedImage(): | |||
| 545 | 552 | ||
| 546 | def _write_disk_guid(self): | 553 | def _write_disk_guid(self): |
| 547 | if self.ptable_format in ('gpt', 'gpt-hybrid'): | 554 | if self.ptable_format in ('gpt', 'gpt-hybrid'): |
| 548 | if os.getenv('SOURCE_DATE_EPOCH'): | ||
| 549 | self.disk_guid = uuid.UUID(int=int(os.getenv('SOURCE_DATE_EPOCH'))) | ||
| 550 | else: | ||
| 551 | self.disk_guid = uuid.uuid4() | ||
| 552 | |||
| 553 | logger.debug("Set disk guid %s", self.disk_guid) | 555 | logger.debug("Set disk guid %s", self.disk_guid) |
| 554 | sfdisk_cmd = "sfdisk --sector-size %s --disk-id %s %s" % \ | 556 | sfdisk_cmd = "sfdisk --sector-size %s --disk-id %s %s" % \ |
| 555 | (self.sector_size, self.path, self.disk_guid) | 557 | (self.sector_size, self.path, self.disk_guid) |
